没有合适的资源?快使用搜索试试~ 我知道了~
《系统软件综合设计指导书-操作系统分册》-20181
需积分: 0 0 下载量 134 浏览量
2022-08-03
12:58:13
上传
评论
收藏 549KB PDF 举报
温馨提示
试读
19页
第1章 系统软件综合设计预备知识 31.1 操作系统内核系统软件综合设计的代码规范要求 31.1.1 操作系统代码 31.1.2 演示代码 31.2 开发与运行
资源详情
资源评论
资源推荐
1
系统软件综合设计指导书
操作系统分册
(第三版)
田卫东,李琳,刘晓平,孙晓,罗月童,周红鹃
合肥工业大学 计算机与信息学院
2018 年 7 月 2 日
2
目 录
第1章 系统软件综合设计预备知识 ............................................... 3
1.1 操作系统内核系统软件综合设计的代码规范要求 ........................... 3
1.1.1 操作系统代码 ......................................................................................................... 3
1.1.2 演示代码 ................................................................................................................. 3
1.2 开发与运行环境 ....................................................... 4
1.2.1 操作系统环境 ......................................................................................................... 4
1.2.2 程序开发环境 ......................................................................................................... 4
1.3 系统软件综合设计报告 ................................................. 6
第2章 系统软件综合设计题目 ................................................... 9
2.1 针对Windows平台的题目 ............................................... 9
2.1.1 进程的描述 ............................................................................................................. 9
2.1.2 线程/进程技术........................................................................................................ 9
2.1.3 进程间通信 IPC ................................................................................................... 10
2.1.4 处理机调度与作业调度 ....................................................................................... 10
2.1.5 死锁的理论与算法 ............................................................................................... 10
2.1.6 基本存储管理技术 ............................................................................................... 11
2.1.7 虚拟存储管理技术 ............................................................................................... 12
2.1.8 I/O 设备管理 ......................................................................................................... 13
2.1.9 磁盘存储管理技术 ............................................................................................... 13
2.1.10 文件系统技术 ..................................................................................................... 14
2.1.11 操作系统接口 ..................................................................................................... 16
2.2 针对Unix/Linux平台的题目 ............................................. 16
2.2.1 进程间通信 IPC ................................................................................................... 16
2.2.2 操作系统接口 ....................................................................................................... 16
第3章 课程设计实施和验收 .................................................... 18
3.1 课程设计实施方式、时间和地点 ........................................ 18
3.2 课程设计验收和评分 .................................................. 18
3.2 课程设计材料提交 .................................................... 19
3
第1章 系统软件综合设计预备知识
《操作系统》是计算机专业重要的专业基础课程之一,以操作系统的基本概念、技术、
原理和重要算法为主要讲述内容。课程侧重于从理论的角度来介绍现代操作系统的核心技术
内容,长篇论述较多,课程内容深,难度大。
操作系统系统软件综合设计是计算机与信息类专业的重要实践性教学环节。系统软件综
合设计的主要任务是,在掌握程序的设计技能、专业基础课程和《操作系统》课程的理论知
识的基础上,设计和实现操作系统的基本算法、模块与相关的资源管理功能,旨在加深对计
算机硬件结构和系统软件的认识,初步掌握操作系统组成模块和应用接口的使用方法,提高
进行工程设计和系统分析的能力,为毕业设计和以后的工程实践打下良好的基础。
本系统软件综合设计指导书内容分预备、设计题目安排两部分。预备介绍进入系统软件
综合设计之前的预备知识和有关系统软件综合设计的总体概况,设计题目具体规定每个设计
任务的内容和要求。
1.1 操作系统内核系统软件综合设计的代码规范要求
操作系统系统软件综合设计涉及大量的内核代码编写,原则上只允许使用系统级程序设
计语言C语言或者汇编语言。主要的操作系统代码部分都使用C语言(不建议使用C++语言),
部分设计关键性能和直接与硬件打交道的部分,建议使用汇编语言实现。
每个完成的系统软件综合设计包含两个代码组成部分:(1) 操作系统代码;(2) 演示代
码;
1.1.1 操作系统代码
操作系统代码部分,完成系统软件综合设计的主体设计内容,需要根据操作系统内核原
理来进行数据结构的设计和算法的设计与实现。
这一部分设计内容以一系列函数的形式表现出来,设计的最终结果,就是一系列的.C
文件,其中定义和实现所有完成设计题目功能的代码。一般将这部分的设计组织成一个
Project,Project的目标不是生成应用程序,而是生成一个.lib。
这部分设计强调按照操作系统原理课程的要求,设计和实现相关的数据结构。数据结构
需要精心设计,要求紧凑、节省空间。算法的设计也以操作系统原理课程讲授的标准算法为
基准。
允许并鼓励同学们设计自己的创新的数据结构和算法,但前提是需要给出实验数据和理
论说明,以证明自己设计的新的数据结构的有效性。
这部分代码,没有UI,不带任何界面,没有针对标准I/O的操作。
内核代码设计规范,比如不允许使用标准STL、不允许出现输入输出语句如cin/cout,
printf/scanf、窗口操作等,请同学们设计代码时,务必注意。代码的编写规范和风格,具
体请同学们读一读Linux源码,学习下如何写。
1.1.2 演示代码
演示代码是展示和验证上述“1.1.1 操作系统代码”中所设计的代码的有效性而额外编
写的演示程序。需要通过将上述函数有机地按一定顺序调用,以展示操作系统较大模块的功
能和运行过程。
演示代码通常带有UI,可以用标准的Windows/Linux窗口作为UI,也可以使用字符命令
4
作为展示窗口,要求功能展示完整,操作简便。
这部分代码,通常也是以一系列的.C/.CPP文件的形式出现,并组织成一个Project这个
Project的链接结果,是一个应用程序,装入模块。例如Windows环境下的.exe。
1.2 开发与运行环境
1.2.1 操作系统环境
本系统软件综合设计开始前必需准备好相应的操作系统软件。由于操作系统软件的特殊
性,无法象其它软件一样随时卸载和重装,从操作系统的应用范围、性能、价格和可获得性
等因素出发,本指导书选择流行的Windows作为实验操作系统。有条件的读者还可以选用
UNIX/LINUX或其它主机系统作为设计环境。
1.2.2 程序开发环境
本书所涉及的系统软件综合设计都需要编程,建议使用C/C++作为编程语言,如果课程
的设计环境为Windows操作系统,请选用Microsoft Visual C/C++ 5.0或更新的Visual Studio
版本,不允许使用Java、Visual Basic等解释执行的语言。以下解释Microsoft Visual C/C++
5.0开发环境的使用,其他更新的版本请参照对应参考书。
Microsoft C/C++是美国Microsoft公司推出的系列编程环境,是目前Windows平台上使
用最为广泛的C/C++开发环境。Microsoft C/C++带有一个具有GUI界面的集成环境,操作非
常方便。
Microsoft Visual C/C++支持多种类型程序的开发,读者可根据自己的实际情况选择。
如 果 熟 悉 Windows 编程 技 术 , 可 以 使 用 MFC 型 应 用 程 序 , 否 则 可 使 用 Win32 Console
Application型程序。
Microsoft Visual C/C++的使用较复杂,详细的使用方法请参见相关书籍和联机帮助。
下面仅简单介绍一个利用Microsoft Visual C/C++5.0开发Win32 Console Application应用
程序的过程。
(1) Microsoft Visual C/C++ 5.0
双击图标:Microsoft Visual C/C++ 5.0
或 选择菜单:Microsoft Visual C/C++ 5.0
(2) 建立新项目 Exp1
选择菜单:File->New
选择页面标签:Project。
选择应用程序类型:Win32 Console Application
选择项目位置:C:\TEMP
输入应用程序名称:Exp1
点击OK按钮,VC系统自动产生一个新项目Exp1;
(3) 建立源程序 maic.c:
选择菜单:File->New
弹出对话框见上图。
剩余18页未读,继续阅读
黄涵奕
- 粉丝: 73
- 资源: 328
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- career.it.signals-systems信号与系统
- 面向计算机视觉的基础库,支持Linux、Windows及MacOS平台 提供了众多功能,包括基于PyTorch的通用训练框架等
- 基于LQR实现的车辆轨迹跟踪matlab源码+项目说明+超详细注释(高分项目)
- 视2.css
- Android图片处理工具类,包括: 图片查看、照片墙、bitmap转存、圆角、剪切、图片加载缓存、图片压缩等
- 甘豆影评React Native版
- 百度地图,显示闸站分布,以及切换闸站位置,上传闸站图片信息的cordova插件,包含百度地图和百度定位库文件
- 基于合泰单片机的智能夹球小车(esp8266代码+k210代码+合泰单片机代码)
- 一个天气查询的安卓APP
- 基于CC2530+DHT11温湿度传感器实现物联网多传感器火灾报警系统
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0