北京交通大学高级操作系统实验总结
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
使用系统调用 pipe() 建立一条管道,实现进程间的通信;
3、进程调度策略: 阅读并测试代码,分析“公平共享调度”的调度策略的功能,画出程序流程,
并比较它与标准调度程序之间的异同; 4、系统性能测试:
在内核中增加测试软件,用以获得有关调度程序行为的详细性能数据。增加一 个可以启用或者禁用这种测试软件的新系统调用,该系统调用需包含一个用来初 始化这种测试软件或将内部统计信息输出到文件的选项; 5、Linux 内核模块Baidu Nhomakorabea译:
第二章 :实验完成结果....................................................................................................................................... 6 2.1 实验一 认识和使用 Linux 操作系统.......................................................................................................... 6 2.2 实验二 进程调度和管理............................................................................................................................6 2.3 实验三 文件系统的设计与实现................................................................................................................7
2.2 实验二 进程调度和管理
通过本实验,我们熟悉并了解了有关进程及相关的软中断通信机制,初步学会 了如何如何使用模块法挂载和卸载一个模块到内核。对内核的编译有了一定的了 解。通过对调度算法的学习,加深了对进程调度的理解。主要的收获如下: 1、软中断通信:
学会创建管理进程,掌握 fork(),signal(),kill(),exit(),wait()函数的用 法; 2、进程的管道通信:
编写一个简单的内核模块,研究旨在熟悉 Linux 的模块机制,并掌握模块的加 载和卸载; 6、进程调度编写测试软件:
编写测试软件,并将其附加到内核中,用以获得有关调度程序行为的详细性能 数据。增加一个可以启用或者禁用这种测试软件的新系统调用,该系统调用需包 含一个用来初始化这种测试软件或将内部统计信息输出到文件的选项。研究公平 共享调度程序的行为,分析所得性能数据(至少 10 项),报告其性能
《高级操作系统》实验总结
姓名 学号 专业年级 联系电话 电子邮件
文件系统设计与实现 吴军旗
计算机科学与技术 18813089778
14120436@bjtu.edu.cn
第一章 :实验目的和任务................................................................................................................................... 4 1.1 实验一 认识和使用 Linux 操作系统......................................................................................................... 4 1.2 实验二 进程调度和管理............................................................................................................................4 1.3 实验三 文件系统的设计与实现................................................................................................................5
2.3 实验三 文件系统的设计与实现
1. 了解了 Linux 操作系统文件系统原理,了解文件系统的工作机理。 2. 理解 Linux 下的 ext2 文件系统的实现技术,理解文件系统的主要数据结构。 3. 模拟 ext2 系统,设计实现一个简单的文件系统,能够实现一般文件系统的 各种操作创建、删除、读、写、列目录.......。
实验一的具体任务如下: 1、了解市场流行的 linux、linux 系统架构类型以及 Linux 与其它操作系统的主 要区别,并且熟悉 Linux 主要应用领域 2、安装 linux,制作 u 盘启动选择一个 linux 版本进行安装。 3、获取内核版本、CPU 类型和型号。 4、掌握系统启动过程和退出过程所涉及的系统文件、函数等。 5.编写程序获取 CPU 分别花费在用户态、系统态和空闲态的时间、系统最后启动 的时间、系统启动后创建的进程数。 6、编写程序获取以下信息:计算机配置的内存数量、当前可用的内存数量。最 近一分钟内的平均负载列表。 7、绘出所安装系统的文件结构,以及每个文件夹的主要功能。 8、使用 man 命令学习下面的 shell 命令、系统调用和库函数功能描述及每个命 令使用例子: 9、查找并显示文件/etc/passwd 文件;查找并显示文件/etc/shadow 文件;查找 并显示文件 unistd.h 的内容,理解其含义;浏览系统调用表 sys_call_table;
2.1 实验一 认识和使用 Linux 操作系统
通过这次实验,我学习 ubuntu 操作系统的安装和使用。通过制作 u 盘启 动盘,能够对 linux 系统引导,与系统文件结构和分区设置有所了解,并掌握使 用方法。熟悉了系统加载和推出的步骤。熟练应用 shell 编程实现了查看系统 cpu 和内存信息的编程。主要的收获如下:
挂载和卸载。
1.3 实验三 文件系统的设计与实现
实验三的具体任务如下: 1.学习 Linux 操作系统文件系统原理,了解文件系统的工作机理。 2.学习理解 Linux 下的 ext2 文件系统的实现技术,理解文件系统的主要数据结 构。 3.模拟 ext2 系统,设计实现一个简单的文件系统。
第二章:实验完成结果
进入研究生阶段了,就如老师第一节课所讲的内容:研究生不仅仅是学习, 学习阶段应该在本科阶段完成。研究生人如其名应该是以研究为主,应该有自己 的想法大胆去实现,应该把所学的知识应用在实际使用中,在使用中不断学习。
正如所言,高级操作系统的理论知识不仅仅是肤浅的算法,更重要的要了解 操作系统是如何实现的。就如我们学习的 Linux 一样,文件管理是通过 ext2 文 件系统方式实现的,ext2 文件系统用到了我们经常说的索引,打开文件表,系 统打开文件表等。
2、双系统启动问题:安装完毕后发现电脑直接进入 win8 系统,ubuntu 的影子都找不到! 解决方法:后来知道,启动项的问题,使用 EasyBCD 引导 Ubuntu,在“添加新条目”选择 添加 Linux/BSD 即可。
第三章:遇到的问题和解决的方法
3.1 实验一 认识和使用 Linux 操作系统
1、ubuntu 的安装问题:用 UltraISO 制作 U 盘启动盘安装系统,安装界面下一步下一步一直 往下,来到分区界面,给“/”、“/BOOT”、“/HOME”和“SWAP”分完区后直接下一步, 安装完毕后发现系统启动不了! 解决方法:通过上网找到了原因:在分完区后,在“安装启动引导器的设备”下一定要选择 sda1,也就是/boot 的编号
1.2 实验二 进程调度和管理
实验二的具体任务如下: 1. 理解进程的概念,明确进程和程序的区别。 2. 认识并发的实质 4. 了解操作系统中进程通信的基本原理。 5. 了解进程调度策略。 6、软中断通信问题。
使用系统调用 fork() 创建两个子进程,再用系统调用 signal() 让父进程捕 捉键盘上发出的中断信号,当父进程接收到这两个软中断的某一个后,父进程用 系统调用 kill() 向两个子进程分别发送软中断信号,子进程获得对应中断信 号,然后分别输出各自信息后终止。 7、管道通信问题。 8、内核编译,模块挂载,系统调用问题,内核编译的步骤和方法。简单模块的
1、成功安装 ubuntu 2、学会使用了 ubuntu 3、了解 linux 系统文件结构的组织过程和在根目录下各个文件的大致作用 4、了解了 linux 系统启动过程和退出过程所涉及到的重要文件和一些函数 5、学会使用了 linux 的一些基本的 shell 命令 6、获取了一些 cpu、内核以及内存的一些信息 7、 学会了使用 vim 编辑器。 8. 根据 linux 操作系统的特点如何进行分区,并且选择适当的挂载点。
学习高级操作系统,是我对计算机的认识上升到了一个新的高度。从简单的 认识到更深一步的研究实现。现在,我对这 16 周的操作系统学习做一个总结: 第一章主要记录实验的目的和任务,第二章写出自己完成的结果,第三章写出遇 到的问题和解决的方法。
第一章:实验目的和任务
1.1 实验一 认识和使用 Linux 操作系统
不知不觉一个学期马上就要过去了,依旧记得第一次来北京时的激动,以及 妈妈火车站的目送,我想最需要奋斗的就是这几年吧。高级操作系统有 16 周课, 是我们最长的课程,每次要做实验时,可谓是“折磨”时间跨度最长的,依旧记 得我做实验二时的手足无措,足足零零散散花了我们一个半月,最好还是延期完 成了,但它也让我们收获良多。我一共负责了两次实验,负责的两次实验的体验 也完全不同,第一次实验是我斗志最高的一次,什么都想学,什么都想了解。
第三章 :遇到的问题和解决的方法...................................................................................................................8 3.1 实验一 认识和使用 Linux 操作系统......................................................................................................... 8 3.2 实验二 进程调度和管理............................................................................................................................9 3.3 实验三 文件系统的设计与实现..............................................................................................................11 3.3.1 原理算法.............................................................................................................................................. 11 3.3.2 设计思路.............................................................................................................................................. 11
3、进程调度策略: 阅读并测试代码,分析“公平共享调度”的调度策略的功能,画出程序流程,
并比较它与标准调度程序之间的异同; 4、系统性能测试:
在内核中增加测试软件,用以获得有关调度程序行为的详细性能数据。增加一 个可以启用或者禁用这种测试软件的新系统调用,该系统调用需包含一个用来初 始化这种测试软件或将内部统计信息输出到文件的选项; 5、Linux 内核模块Baidu Nhomakorabea译:
第二章 :实验完成结果....................................................................................................................................... 6 2.1 实验一 认识和使用 Linux 操作系统.......................................................................................................... 6 2.2 实验二 进程调度和管理............................................................................................................................6 2.3 实验三 文件系统的设计与实现................................................................................................................7
2.2 实验二 进程调度和管理
通过本实验,我们熟悉并了解了有关进程及相关的软中断通信机制,初步学会 了如何如何使用模块法挂载和卸载一个模块到内核。对内核的编译有了一定的了 解。通过对调度算法的学习,加深了对进程调度的理解。主要的收获如下: 1、软中断通信:
学会创建管理进程,掌握 fork(),signal(),kill(),exit(),wait()函数的用 法; 2、进程的管道通信:
编写一个简单的内核模块,研究旨在熟悉 Linux 的模块机制,并掌握模块的加 载和卸载; 6、进程调度编写测试软件:
编写测试软件,并将其附加到内核中,用以获得有关调度程序行为的详细性能 数据。增加一个可以启用或者禁用这种测试软件的新系统调用,该系统调用需包 含一个用来初始化这种测试软件或将内部统计信息输出到文件的选项。研究公平 共享调度程序的行为,分析所得性能数据(至少 10 项),报告其性能
《高级操作系统》实验总结
姓名 学号 专业年级 联系电话 电子邮件
文件系统设计与实现 吴军旗
计算机科学与技术 18813089778
14120436@bjtu.edu.cn
第一章 :实验目的和任务................................................................................................................................... 4 1.1 实验一 认识和使用 Linux 操作系统......................................................................................................... 4 1.2 实验二 进程调度和管理............................................................................................................................4 1.3 实验三 文件系统的设计与实现................................................................................................................5
2.3 实验三 文件系统的设计与实现
1. 了解了 Linux 操作系统文件系统原理,了解文件系统的工作机理。 2. 理解 Linux 下的 ext2 文件系统的实现技术,理解文件系统的主要数据结构。 3. 模拟 ext2 系统,设计实现一个简单的文件系统,能够实现一般文件系统的 各种操作创建、删除、读、写、列目录.......。
实验一的具体任务如下: 1、了解市场流行的 linux、linux 系统架构类型以及 Linux 与其它操作系统的主 要区别,并且熟悉 Linux 主要应用领域 2、安装 linux,制作 u 盘启动选择一个 linux 版本进行安装。 3、获取内核版本、CPU 类型和型号。 4、掌握系统启动过程和退出过程所涉及的系统文件、函数等。 5.编写程序获取 CPU 分别花费在用户态、系统态和空闲态的时间、系统最后启动 的时间、系统启动后创建的进程数。 6、编写程序获取以下信息:计算机配置的内存数量、当前可用的内存数量。最 近一分钟内的平均负载列表。 7、绘出所安装系统的文件结构,以及每个文件夹的主要功能。 8、使用 man 命令学习下面的 shell 命令、系统调用和库函数功能描述及每个命 令使用例子: 9、查找并显示文件/etc/passwd 文件;查找并显示文件/etc/shadow 文件;查找 并显示文件 unistd.h 的内容,理解其含义;浏览系统调用表 sys_call_table;
2.1 实验一 认识和使用 Linux 操作系统
通过这次实验,我学习 ubuntu 操作系统的安装和使用。通过制作 u 盘启 动盘,能够对 linux 系统引导,与系统文件结构和分区设置有所了解,并掌握使 用方法。熟悉了系统加载和推出的步骤。熟练应用 shell 编程实现了查看系统 cpu 和内存信息的编程。主要的收获如下:
挂载和卸载。
1.3 实验三 文件系统的设计与实现
实验三的具体任务如下: 1.学习 Linux 操作系统文件系统原理,了解文件系统的工作机理。 2.学习理解 Linux 下的 ext2 文件系统的实现技术,理解文件系统的主要数据结 构。 3.模拟 ext2 系统,设计实现一个简单的文件系统。
第二章:实验完成结果
进入研究生阶段了,就如老师第一节课所讲的内容:研究生不仅仅是学习, 学习阶段应该在本科阶段完成。研究生人如其名应该是以研究为主,应该有自己 的想法大胆去实现,应该把所学的知识应用在实际使用中,在使用中不断学习。
正如所言,高级操作系统的理论知识不仅仅是肤浅的算法,更重要的要了解 操作系统是如何实现的。就如我们学习的 Linux 一样,文件管理是通过 ext2 文 件系统方式实现的,ext2 文件系统用到了我们经常说的索引,打开文件表,系 统打开文件表等。
2、双系统启动问题:安装完毕后发现电脑直接进入 win8 系统,ubuntu 的影子都找不到! 解决方法:后来知道,启动项的问题,使用 EasyBCD 引导 Ubuntu,在“添加新条目”选择 添加 Linux/BSD 即可。
第三章:遇到的问题和解决的方法
3.1 实验一 认识和使用 Linux 操作系统
1、ubuntu 的安装问题:用 UltraISO 制作 U 盘启动盘安装系统,安装界面下一步下一步一直 往下,来到分区界面,给“/”、“/BOOT”、“/HOME”和“SWAP”分完区后直接下一步, 安装完毕后发现系统启动不了! 解决方法:通过上网找到了原因:在分完区后,在“安装启动引导器的设备”下一定要选择 sda1,也就是/boot 的编号
1.2 实验二 进程调度和管理
实验二的具体任务如下: 1. 理解进程的概念,明确进程和程序的区别。 2. 认识并发的实质 4. 了解操作系统中进程通信的基本原理。 5. 了解进程调度策略。 6、软中断通信问题。
使用系统调用 fork() 创建两个子进程,再用系统调用 signal() 让父进程捕 捉键盘上发出的中断信号,当父进程接收到这两个软中断的某一个后,父进程用 系统调用 kill() 向两个子进程分别发送软中断信号,子进程获得对应中断信 号,然后分别输出各自信息后终止。 7、管道通信问题。 8、内核编译,模块挂载,系统调用问题,内核编译的步骤和方法。简单模块的
1、成功安装 ubuntu 2、学会使用了 ubuntu 3、了解 linux 系统文件结构的组织过程和在根目录下各个文件的大致作用 4、了解了 linux 系统启动过程和退出过程所涉及到的重要文件和一些函数 5、学会使用了 linux 的一些基本的 shell 命令 6、获取了一些 cpu、内核以及内存的一些信息 7、 学会了使用 vim 编辑器。 8. 根据 linux 操作系统的特点如何进行分区,并且选择适当的挂载点。
学习高级操作系统,是我对计算机的认识上升到了一个新的高度。从简单的 认识到更深一步的研究实现。现在,我对这 16 周的操作系统学习做一个总结: 第一章主要记录实验的目的和任务,第二章写出自己完成的结果,第三章写出遇 到的问题和解决的方法。
第一章:实验目的和任务
1.1 实验一 认识和使用 Linux 操作系统
不知不觉一个学期马上就要过去了,依旧记得第一次来北京时的激动,以及 妈妈火车站的目送,我想最需要奋斗的就是这几年吧。高级操作系统有 16 周课, 是我们最长的课程,每次要做实验时,可谓是“折磨”时间跨度最长的,依旧记 得我做实验二时的手足无措,足足零零散散花了我们一个半月,最好还是延期完 成了,但它也让我们收获良多。我一共负责了两次实验,负责的两次实验的体验 也完全不同,第一次实验是我斗志最高的一次,什么都想学,什么都想了解。
第三章 :遇到的问题和解决的方法...................................................................................................................8 3.1 实验一 认识和使用 Linux 操作系统......................................................................................................... 8 3.2 实验二 进程调度和管理............................................................................................................................9 3.3 实验三 文件系统的设计与实现..............................................................................................................11 3.3.1 原理算法.............................................................................................................................................. 11 3.3.2 设计思路.............................................................................................................................................. 11