OpenI 启智社区

启智社区,确实给力

当前位置:首页 > 学习 > 实训 >

操作系统

操作系统

  • 来源:国防科技大学
  • 章节:7 单元:38

  • 文艳军

  • 罗宇

  • 张冠群
进入实训课程

课程简介:

《操作系统》是计算机相关专业的一门重要的专业课,学习本课程将会使学生全面地理解、掌握操作系统各部分的基本原理和实现技术;能深层次地使用和改造操作系统。
本课程中使用的是 Linux 0.11 内核,通过学习关于 Linux 0.11 内核的相关知识对 Linux 有更加深入的了解,了解 Linux 的原理与设计,深入理解底层的机制,并在内核上对操作系统进行自主化的修改、编译,制作自己的操作系统。
关于实验操作系统的选择,本课程在认真评估后选择 0.11 版本。主要原因是近期版本(如 5.3.5 版本等)的内核相当庞大,超过几百万行代码,并不能轻松阅读和分析,不适合初学者入手。而早期的 Linux 内核源码比如 0.11 版本的,代码总共只有一万四千多行,而且几乎就是现在内核的精简版本,基本功能原理与内容也都包含,因此非常适合学习。



课程章节:

环境练习

带领同学们体验操作系统实验环境,包括内核代码的编辑、编译和测试方法,同时练习常用的(字符操作)命令,以尽快熟悉实验环境。

中断、异常和系统调用

本阶段将学习中断/异常的响应和处理 ,学习系统调用的处理过程。这部分实际上介绍了用户态与核心态之间的切换方式,即进出内核的方式。

进程管理

分析Linux 0.11中进程的描述、创建、调度和切换技术。进程是操作系统中一个非常重要的概念。程序的运行是通过进程来完成的。在层次结构的操作系统中,进程不仅是系统分配资源的基本单位,而且是 CPU 调度的基本单位。进程管理是操作系统最重要的功能之一。

内存管理

内存管理的目的是将物理内存分配给进程使用,进程虚空间与物理空间之间的典型映射方式有段式、页式和段页式。

进程同步与互斥

学习信号量的使用方法和多线程程序的编程方法。信号量广泛用于进程或线程间的同步和互斥,信号量本质上是一个整数计数器,它被用来控制对公共资源的访问。

设备管理

分析Linux 0.11中设备管理的数据结构和具体访问过程,包括字符设备和块设备的管理。Linux 把设备看作是特殊的文件,系统通过文件访问接口来管理和控制各种设备。

文件管理

分析Linux 0.11的文件管理技术,包括Minix文件系统静态结构、内核的文件管理数据结构和相关系统调用的实现方法。