操作系统基础知识:
- 计算机系统自下而上可以粗略分为四个部分:硬件、操作系统、应用程序、用户。
- 操作系统是计算机系统资源的管理者。
- 操作系统管理各种计算机硬件,为应用程序提供基础,并充当计算机硬件系统与用户之间的接口。
- 操作系统是指控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源的分配,以提供给用户和其他软件方便的接口和环境的程序集合。
- 裸机:没有任何软件支持的计算机。
- 扩充机器(虚拟机):覆盖了软件的机器。
- 分时技术:把处理器的运行时间分成很短的时间片,按时间片轮流把处理器分配给各联机作业使用。
- 分时系统:是指实现人机交互的系统。
- 实时操作系统:为了能在某个时间限制内完成某些紧急而不需时间片排队,诞生了实时操作系统(实时操作系统的特点:及时性、可靠性)。
- 多道批处理:是指实现作业自动控制而无需人工干预的系统。
- 特权指令:是指计算机中不允许用户直接使用的指令,如I/O指令、置中断指令等。
- 内核:是指计算机上配置的底层软件,是计算机功能的延伸。
- 操作系统内核工作在核心态,而用户程序工作在用户态。
- 在计算机操作系统中,通常CPU执行两种不同性质的程序:操作系统内核程序、用户自编程序或系统外层的应用程序。
- 操作系统的各项功能分别被设置在不同的层次上。一些与硬件关联较密切的模块,例如:时钟管理、中断管理、设备驱动等处于最底层;其次是运行频率较高的程序,例如:进程管理、存储器管理、设备管理等;这两部分内容构成了操作系统的内核。
操作系统的特征:
- 并发:并发是指两个或多个事件在同一时间间隔内发生。操作系统的并发性是指计算机操作系统中同时存在多个运行着的程序,因此它具有处理和调度多个程序同时执行的能力。在操作系统中引入进程的目的是使系统能并发执行。操作系统的并发性是通过分时得以实现的。
- 共享:资源共享即共享,是指系统中的资源可供内存中多个并发执行的进程共同使用。互斥共享方式——仅当进程A访问完并释放该资源后,才允许另一个进程对该资源进行访问。把在一段时间内只允许一个进程访问的资源称为临界资源或独占资源。同时访问方式——系统中有另一类资源,允许在一段时间内由多个进程“同时”对它们进行访问。这里所谓的“同时”往往是宏观上的,而微观上,这些进程可能是交替地对该资源进行访问,即“分时共享”。
- 虚拟:是指把一个物理上的实体变成若干个逻辑上的对应物。操作系统中利用了多种虚拟技术,分别用来实现虚拟处理器、虚拟内存、虚拟外部设备等。虚拟处理器——是通过多道程序设计技术,把一个物理上的CPU虚拟为多个逻辑上的CPU。虚拟存储技术——将一台机器的物理存储器变为虚拟存储器,以便从逻辑上来扩充存储器的容量。虚拟设备技术——将一台物理I/O设备虚拟为多台逻辑上的I/O设备,并允许每个用户占用一个逻辑上的I/O设备,变为在一段时间内允许多个用户同时访问的共享设备。
- 异步:在多道程序环境下,允许多个程序并发执行,但由于资源有限,进程的执行不是一贯到底,而是走走停停,以不可预知的速度向前推进,这就是进程的异步性。
**并发和共享是操作系统两个最基本的特征,这两者是互为存在条件。资源的共享是以程序的并发为条件的,若系统不允许程序并发执行,则自然不存在资源共享问题;若系统不能对资源共享实施有效的管理,也必将影响程序的并发执行,甚至根本无法并发执行。**
操作系统的功能:
操作系统的功能包括:处理机管理、存储器管理、设备管理、文件管理、用户接口……
- 处理机管理:在多道程序环境下,处理机的分配和运行都以进程为基本单位,因而对处理机的管理可以归纳为对进程的管理。并发时,在计算机内同时运行多个进程,所以,进程何时创建、撤销、如何管理、如何避免冲突、合理共享是进程管理的最主要的任务。进程管理的主要功能有:进程控制、进程同步、进程通信、死锁处理、处理机调度等。
- 存储器管理:存储器管理是为了给多道程序的运行提供良好的环境,方便用户使用以及提高内存的利用率。主要包括:内存分配、地址映射、内存保护与共享、内存扩充等功能。
- 设备管理:主要任务是:完成用户的I/O请求、方便用户使用各种设备、并提高设备利用率等。
- 文件管理:计算机中的信息都是以文件的形式存在的,操作系统中负责文件管理的部分称为文件系统。文件管理包括:文件存储空间的管理、目录管理、文件读写管理和保护等。
操作系统提供的接口:
- 命令接口:用户利用操作命令来组织和控制作业的执行。
- 联机命令接口(交互式命令接口):适用于分时或实时系统的接口,由一组键盘操作命令组成。用户通过控制台或终端输入操作命令。
- 脱机命令接口(批处理命令接口):适用于批处理系统,它由一组作业控制命令组成。脱机用户不能直接干预作业的运行。
- 程序接口:编程人员可以使用它们请求操作系统服务。
程序接口由一组系统调用命令组成,用户通过在程序中使用这些系统调用命令来请求操作系统为其提供服务。“最为流行的是图形用户界面”,即图形接口:用户通过鼠标和键盘,在图形界面上单击或使用按键就能很方便地使用操作系统。
内核包括的内容:
内核包括如下四个方面:
- 时钟管理:操作系统需要通过时钟管理,向用户提供标准的系统时间;通过时钟中断的管理,可以实现进程的切换。
- 中断机制:初衷是提高多道程序运行环境中CPU的利用率,而且主要针对外部设备。例如:键盘或鼠标的信息输入、进程的管理和调度、系统功能的调用、设备驱动、文件访问等,无不依赖于中断机制,可以说,现代操作系统是靠中断驱动的软件。
- 原语:处于操作系统的最底层,是最接近硬件的部分、程序的运行具有原子性(即操作只能一气呵成)、程序的运行时间都较短、而且调用频繁…具有以上这些特点的程序称为原语。系统中的设备驱动、CPU切换、进程通信等功能中的部分操作都可以定义为原语。
- 系统控制的数据结构及处理。
中断:
- 中断(也称为外中断):是指来自CPU执行指令以外的事件的发生。
- 异常(也称为内中断、例外或陷入):指源自CPU执行指令内部的事件,如程序的非法操作码、地址越界、算术溢出、虚存系统的缺页以及专门的陷入指令等引起的事件。
系统调用分类:
系统调用按功能分类:
- 设备管理:完成设备的请求或释放、以及设备启动等功能。
- 文件管理:完成文件的读、写、创建及删除等功能。
- 进程管理:完成进程的创建、撤销、阻塞及唤醒等功能。
- 进程通信:完成进程之间的信息传递或信号传递等功能。
- 内存管理:完成内存的分配、回收以及获取作业占用内存大小及始址等功能。
本博客内容为原创,版权所有违者必究,转载请注明来源 http://www.cnblogs.com/sunshine-blog/