注意事项:要求每个同学独立完成以下三个项目中的任两个,编程语言不限。
项目一:命令行解释程序。
教学内容】 利用c语言编写一个微型命令解释程序,体会操作系统作为用户与计算机接口的作用。巩固c语言编程能力。
1.所设计的微型命令解释程序具有下列5条命令。
cdir (列出当前文件和目录)
ccopy 文件1 文件2 (拷贝文件)
cerase 文件名 (删除文件)
cdis 字符串 (显示该字符串)
cend (退出微型命令解释程序)
2.项目报告要求。
列出采用的数据结构并加以说明。
打印一份源程序清单,并附加流程图与注释。
分析windows操作系统和linux操作系统的命令解释程序的不同之处。
教学重点及难点】
重点:命令解释程序的作用。
难点:命令解释程序的实现原理。
基本要求】 了解常用操作系统的命令操作方式和不同操作系统的命令解释程序。
理解命令解释程序的作用。
掌握命令解释程序的实现原理。
主要实践教学条件】
ibm 586以上微型计算机及其兼容机。
windows xp/2000 以上版本,linux redhat9 以上版本。
turbo c 2.0、vc++、其他高级语言或gcc编译器。
项目二:进程控制。
教学内容】 利用linux进程控制部分的主要系统调用进行编程,实现对进程的创建、终止、同步和通信等控制,提高学生对进程控制系统调用的编程能力,加深对进程控制的理解。
1.实现对进程的如下控制操作。
进程的创建和终止;
进程的状态转换;
进程之间的通信;
进程之间的互斥访问文件。
2.项目报告要求。
列出采用的数据结构并加以说明。
打印一份源程序清单,并附加流程图与注释。
分析windows操作系统和linux操作系统的进程控制系统调用的不同之处。
教学重点及难点】
重点:进程之间的通信。
难点:进程之间的互斥。
基本要求】 了解常用操作系统的提供的常用进程控制类系统调用。
理解进程通信方式。
掌握用信号量实现进程互斥。
主要实践教学条件】
ibm 586以上微型计算机及其兼容机。
windows xp/2000 以上版本,linux redhat9 以上版本。
turbo c 2.0、vc++、其他高级语言或gcc编译器。
项目三:文件系统。
教学内容】模拟文件管理。设计并调试一个简单的文件系统,模拟文件操作命令的执行。深入了解主要文件操作命令的执行过程,掌握它们的基本实施方法。
1.实现文件系统的基本功能。
设计一个支持n个用户的文件系统,每个用户可拥有多个文件。
采用二级或二级以上的多级文件目录管理。
对文件设置存取控制保护方式,如“只能执行”、“允许读”、“允许写”等。
系统的外部特征应接近于真实系统,可以设置下述文件操作命令:建立文件、打开文件、关闭文件、删除文件、读文件、写文件、复制文件、查询目录。
通过键盘使用该文件系统,系统应当显示操作命令的执行结果。
2.项目报告要求。
列出采用的数据结构及并加以说明。
打印一份源程序清单,并附加流程图与注释。
分析windows操作系统和linux操作系统的文件系统的不同之处。
分析windows操作系统和linux操作系统的文件操作命令有何不同。
教学重点及难点】
重点:文件系统的主要功能。
难点:文件系统的常用命令的主要工作。
基本要求】 了解各种文件操作系统的异同。
理解常用操作系统支持的文件操作系统。
掌握文件系统的主要功能。
掌握文件系统的常用命令的主要工作。
主要实践教学条件】
ibm 586以上微型计算机及其兼容机。
windows xp/2000 以上版本,linux redhat9 以上版本。
turbo c 2.0、vc++、其他高级语言或gcc编译器。
必备教材、实践教学指导书和参考资料。
一)必备教材。
1.《操作系统实验教程(linux版)》,潘景昌编著,清华大学出版社,2023年第1版。
二)实践教学指导书。
1.《计算机操作系统实验与实践——基于windows与linux》,秦明编著,清华大学出版社,2023年第1版。
2.《操作系统实验教程及linux和windows系统调用编程》,张丽芬编著,清华大学出版社,2023年第1版。
三)参考资料。
1.《操作系统原理实用教程》,李俭编著,清华大学出版社,2023年第1版。
2.《操作系统原理实验教程(基于linux)》,胡峰松编著,清华大学出版社,2023年第1版。
3.《计算机操作系统》,汤小丹编著,西安电子科技大学出版社,2023年第3版。
课外学习要求。
1.项目一命令解释程序课外学习要求。
了解windows操作系统和linux操作系统的命令解释程序,并分析二者的不同之处。
会使用windows操作系统和linux操作系统的常用命令。
完成项目一的报告。
2.项目二进程控制课外学习要求。
了解windows操作系统和linux操作系统的进程控制类常用系统调用,并分析二者的不同之处。
了解windows操作系统和linux操作系统中实现进程同步的系统调用方法有哪些,并能利用该方法够编程实现进程的同步。
完成项目二的报告。
3.项目三文件系统课外学习要求。
了解windows操作系统和linux操作系统的文件系统,并分析二者的不同之处。
会使用windows操作系统和linux操作系统的文件操作命令,分析两种操作系统支持的文件操作命令有何不同。
完成项目三的报告。
考核及成绩评定方式。
1. 考核方式。
本课程设计中的三个项目都属于综合设计类项目,所以对每个项目进行验收时,通过学生演示程序实现的功能,检查学生完成的程序是否符合项目要求,结合源程序**对学生进行质疑,每个项目有一个验收成绩。
2. 成绩评定方式。
总评成绩=课程设计报告(30%)+平时 (70%)。平时成绩包括考勤、提问、质疑和课程设计期间表现等,主要考查学生日常项目完成情况,注重对学生能力的考核。课程设计报告要符合要求并独立完成。
操作系统课程设计要求
操作系统 课程设计要求。一 课程设计教学目的。操作系统课程设计是操作系统理论课程的必要补充,学生在学习了操作系统的原理后,通过课程设计,综合运用所学知识,以小组为单位,通过综合实验环节,加深学生对操作系统基本原理与工作过程的理解,提高学生分析问题 解决问题的能力,增强学生的动手能力与协作能力。二 课...
操作系统课程设计报告内容
1 设计目标。编写并调试一个多进程共行的进程调度程序,以加深对进程调度的理解。要求1 高于实验 至少有四种以上的进程调度程序供选择 每个进程由进程控制块表示,进程控制块至少包含6个信息项 设计一个实用的用户界面,以便选用不同的进程调度算法 要求2 独立运行 有能脱离外部api 支持库及操作系统运行的...
操作系统课程设计题目及要求
5 最近未使用算法 nur 命中率 页面失效次数 页地址流长度。分析 本实验的程序设计基本上按照实验内容进行。即首先用srand 和rand 函数定义和产生指令序列,然后将指令序列变换成相应的页地址流,并针对不同的算法计算出相应的命中率。1 通过随机数产生一个指令序列,共320条指令。指令的地址按下...