littlebot
Published on 2025-04-03 / 0 Visits
0

【源码】基于Linux操作系统的操作系统实验项目

项目简介

本项目是基于Linux操作系统的操作系统实验平台,通过一系列实验让用户深入理解并实践操作系统的核心概念与功能。项目涉及引导程序编写、内核裁剪、系统调用增加、多线程编程、进程通信、内存管理以及驱动程序开发等多个领域。

项目的主要特性和功能

  1. MBR引导程序编写:运用NASM编写MBR引导程序,在BOCHS虚拟机中测试。
  2. Linux内核裁剪与编译:于Linux系统下裁剪和编译Linux内核,并启用新内核。
  3. 系统调用增加:为Linux内核增添新的系统调用,编写应用程序测试。
  4. 脚本编写:编写脚本或批处理,给指定目录中文件名添加日期和时分后缀。
  5. 多线程编程:在Linux或Windows下创建和管理线程,实现并发输出、生产者 - 消费者同步控制。
  6. 进程管理:在Linux下创建子进程,实验wait/exit函数,利用信号机制进行进程通信。
  7. 内存管理:模拟实现FIFO或LRU页面淘汰算法,用/proc/pid/pagemap技术计算虚拟地址对应的物理地址。
  8. 内核模块开发:编写Linux内核模块,完成模块的安装和卸载操作。
  9. 驱动程序开发:编写Linux驱动程序,实现字符类型或杂项类型的设备驱动功能,编写应用程序测试。

安装使用步骤

环境准备

  • 操作系统:建议使用Ubuntu、银河麒麟或优麒麟。
  • 开发工具:NASM、GCC、Make等。
  • 虚拟机:BOCHS(用于测试MBR引导程序)。

使用步骤

  1. 复制项目bash cd HUST_OS_LAB
  2. 编译和运行实验代码
    • 每个实验进入相应目录,按README或注释说明编译运行。
    • 如实验一的MBR引导程序: bash cd lab1 nasm -f bin mbr.asm -o mbr.bin
  3. 内核裁剪与编译:参考实验一说明,裁剪和编译Linux内核,启用新内核。
  4. 系统调用增加:按实验一说明,为Linux内核增加新系统调用,编写应用程序测试。
  5. 多线程编程:进入实验二目录,编译并运行多线程程序。
  6. 内核模块和驱动程序开发:进入实验四目录,编译内核模块或驱动程序,用insmodrmmod命令进行安装和卸载。

注意事项

  • 进行内核相关实验时,建议在虚拟机或备份系统中进行,避免影响主系统。
  • 编译内核和内核模块时,确保系统已安装必要的开发工具和依赖库。

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】