第2章 操作系统
1.1 定义、分类和功能
1)基础知识:
操作系统是其他软件的基础,是用户与计算机之间的接口。
2)概念:
控制和管理计算机系统内部各个硬件和软件资源
3)分类:
批处理操作系统、分时处理操作系统、实时处理操作系统、嵌入式操作系统…
1.2 特征和功能
1)特征:
并发性、共享性、虚拟性、不确定性
2)功能:
存储管理:
存储管理应该具备 内存分配、内存包含、地址映射、内存扩充等等
文件管理:
文件管理应该具备 文件存储空间管理、目录管理、文件的读写管理、文件的共享等等
设备管理:
设备管理应该具备 缓冲管理、设备分配、设备处理等等
处理机管理:
处理机管理应该具备 处理机分配、管理和控制等等,处理机的分配是以线程位单位的
用户接口:
为了方便用户使用操作系统,操作系统位用户提供了命令接口和系统调用接口,之后操作系统又向用户提供了图形接口
1.3 UNIX操作系统
前言:UNIX是一种多用户、多任务的分时操作系统。它利用最内层的硬件提供的基本服务,向外层提供应用程序所需的服务
1)UNIX文件系统
它的目录结构是树型的,根目录记为:“/"
非叶节点是目录文件,叶节点可以是目录文件、文件、特殊文件.....
2)UNIX设备管理:
在UNIX系统中:文件==系统中可用的任何资源(选择用“文件”这个概念作为一切资源的抽象表示方法)
特点:
块设备与字符设备具有相似的层次结构
将设备作为一个特殊的文件,并且赋予一个文件名
利用完善的缓冲区技术
3)shell程序:
它是一种命令语言,又是一种程序设计语言,在UNIX中,任何一个存放一条或者多条命令的文件成为shell程序或者shell过程
shell变量类型:
1、用户自定义变量:必须以字母或者_开始,可以包括字母、下划线、数字
2、系统定义变量
3、shell定义变量
注意:设计操作系统时,不需要考虑语言编译器的设计实现
1.4 进程管理
1)基本概念:
前趋图:
是一个有向无循环图:Pi------->Pj,表示Pi执行完才可以执行Pj