操作系统实验报告

操作系统实验报告

ID:33821423

大小:435.50 KB

页数:80页

时间:2019-03-01

操作系统实验报告_第1页
操作系统实验报告_第2页
操作系统实验报告_第3页
操作系统实验报告_第4页
操作系统实验报告_第5页
资源描述:

《操作系统实验报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、操作系统实验报告——Linux源代码分析姓名:李琳09171206米婧09171211宋春晓09171214陶荣09171216郑佳男09171219专业:计算机科学与技术专业班级:计科092班各人员分工:李琳:Linux内核源代码的各子目录的内容;宋春晓、米婧:Linux启动和初始化部分源代码的内容,根据这个分析Linux进程调度有关函数的源代码,如schedule()函数、goodness()函数,以及它们引用的头文件的分析;陶荣:Linux的进程调度算法及其实现所用的主要数据结构郑佳男:Linux进程创建的分析内容简介:一、Linux内核简要介绍二、Linux

2、的启动和初始化三、Linux进程调度四、Linux进程创建一、Linux内核介绍1.1——Linux内核的特征Linux是个人计算机和工作站上的Unix类操作系统。但是,它绝不是简化的Unix。相反,Linux是强有力和具有创新意义的Unix类操作系统。它不仅继承了Unix的特征,而且在许多方面超过了Unix。作为Unix类操作系统,Linux内核具有下列基本特征: 1.Linux内核的组织形式为整体式结构。也就是说整个Linux内核由很多过程组成,每个过程可以独立编译,然后用连接程序将其连接在一起成为一个单独的目标程序。从信息隐藏的观点看,她没有任何程度的隐藏—每

3、个过程都对其它过程可见。这种结构的最大特点是内部结构简单,子系统间易于访问,因此内核的工作效率较高。另外,基于过程的结构也有助于不同的人参与不同过程的开发,从这个角度来说,Linux内核又是开放式的结构,她允许任何人对其进行修正、改进和完善。 2.Linux的进程调度方式简单而有效。可以说Linux在追求效率方面孜孜不倦,体现在调度方式上也是别具一格。对于用户进程,Linux采用简单的动态优先级调度方式;对于内核中的例程(如设备驱动程序、中断服务程序等)则采用了一种独特的机制—软中断机制,这种机制保证了内核例程的高效运行。 3. Linux支持内核线程(或称守护进程

4、)。内核线程是在后台运行而又无终端或登录shell和它结合在一起的进程。有许多标准的内核线程,其中有一些周期地运行来完成特定的任务(如swapd),而其余一些则连续地运行,等待处理某些特定的事件(如inetd和lpd)。内核线程可以说是用户进程,但和一般的用户进程又有不同,它象内核一样不被换出,因此运行效率较高。 4.Linux支持多种平台的虚拟内存管理。内存管理是和硬件平台密切相关的部分,为了支持不同的硬件平台而又保证虚拟存储管理技术的通用性,Linux的虚拟内存管理为不同的硬件平台提供了统一的接口,因此把Linux内核移植到一个新的硬件平台并不是一件很困难的事。

5、 5.Linux内核另一个独具特色的部分是虚拟文件系统(VFS)。虚拟文件系统不仅为多种逻辑文件系统(如ext2,fat等)提供了统一的接口,而且为各种硬件设备(作为一种特殊文件)也提供了统一接口。 6. Linux的模块机制使得内核保持独立而又易于扩充。模块机制可以使内核很容易地增加一个新的模块(如一个新的设备驱动程序),而无需重新编译内核;同时,模块机制还可以把一个模块按需添加到内核或从内核中卸下,这使得我们可以按需要定制自己的内核。 7.增加系统调用以满足你特殊的需求。一般来说,系统调用是操作系统的设计者提供给用户使用内核功能的接口,但Linux开放的源代码也

6、允许你设计自己的系统调用,然后把它加入到内核。 8.网络部分面向对象的设计思想使得Linux内核支持多种协议、多种网卡驱动程序变得容易。1.2——Linux内核在整个操作系统中的位置Linux的内核不是孤立的,必须把它放在整个系统中去研究,图1.1显示了Linux内核在整个操作系统的位置:用户进程系统调用接口硬件图1.2Linux内核在整个操系统中的位置由图1.1可以看出,Linux操作系统由四个部分组成:1.用户进程—用户应用程序是运行在Linux操作系统最高层的一个庞大的软件集合,当一个用户程序在操作系统之上运行时,它成为操作系统中的一个进程。2.系统调用接口—

7、在应用程序中,可通过系统调用来调用操作系统内核中特定的过程,以实现特定的服务。例如,在程序中安排一条创建进程的系统调用,则操作系统内核便会为之创建一个新进程。系统调用本身也是由若干条指令构成的过程。但它与一般的过程不同,主要区别是:系统调用是运行在内核态(或叫系统态),而一般过程是运行在用户态。在Linux中,系统调用是内核代码的一部分。3.Linux内核—这是本书要讨论的重点。内核是操作系统的灵魂,它负责管理磁盘上的文件、内存,负责启动并运行程序,负责从网络上接收和发送数据包等等。简言之,内核实际是抽象的资源操作到具体硬件操作细节之间的接口。4.硬件—这个子系

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。