您的位置:首页 > 其它

操作系统复习笔记二:OS Structures

2014-04-11 18:46 344 查看
一、OS功能

操作系统主要有五大功能:进程管理、内存管理、文件管理、辅存管理、I/O设备管理

1、进程管理

什么是进程:进程是一个执行中的程序。

进程可以分为 系统进程 和 用户进程 。

主要管理活动:产生和终止进程、

暂停和继续进程、

进程管理机制:进程同步、进程通信、死锁处理。

2、内存管理

什么是存储器:a large array of words and bytes each with its own address.

内存特性:唯一能被CPU直接访问的大型存储设备。

具有易失性。

主要管理活动:记录内存使用情况、分配和重新分配内存。

3、文件管理

对于不同物理存储介质存储的信息,操作系统提供一个统一的logical view,比如 文件。

什么是文件:a collection of related information defined by its creator.

主要管理活动:创建和删除文件、创建和删除目录、提供对文件和目录的操作、将文件映射到辅存中、备份文件到稳定的存储介质中。

4、辅存管理

辅存的作用:由于内存的存储空间小且断电易失,计算机系统需要辅存来备份内存中的信息。

主要管理活动:管理剩余空间、分配存储空间、分盘目录。

5、I/O设备管理

I/O设备的作用:hiding the peculiarities of specific hardware devices from the user.

I/O子系统的组成:内存管理组件(缓冲区、缓存、后台打印),设备驱动程序的接口,特定的硬件设备的驱动。

二、OS服务

两类服务:帮助用户的服务、保证系统正常运行的服务。

1、帮助用户的服务

执行程序:将程序载入内存中并且运行。

I/O操作:provide some means to perform I/O

文件系统操作:文件的创建、删除、读、写。

进程通信:主要是共享内存和消息传递。

查错:通过查找在硬件或者用户程序中的错误来确保程序正确运行。

2、帮助系统运行的服务

给同时运行的多用户或者多作业分配资源。

记录不同用户使用的资源的类型以及数量。

确保所有对系统资源的访问都在控制范围下。

recording all the connections for detection of break-ins.

注意服务和功能的区别:服务是功能的集合。服务是相对于用户而言的概念,功能是相对于系统而言的概念。

三、OS接口

接口可以分为两类:面向用户的接口、面向程序的接口(SCI 和 API)

1、面向用户的接口(界面):命令行界面(CLI):纯命令行 (两种执行命令:系统内部命令、扩展命令)

批处理界面:文件和命令行

图形界面(GUI):基于鼠标和菜单的操作

2、面向程序的接口:system calling interface: 开发软件时可用的一系列命令函数和协议的集合。

application program interface: 程序从系统内核请求服务。

为什么用户大多使用API而不是SCI?

原因:1、隐藏细节,简单。API通常比系统调用提供了更多有用的功能。

2、可移植性。API支持不同版本的系统调用,这样便于把软件移植到不同平台上。而且,API会随着操纵系统的升级而升级,相反系统调用需要手动升级。

3、开销。API比SCI的开销小。因为每次执行SCI都需要从用户态切换到内核态然后再返回,而每次执行API却不一定要切换到内核态。

四、OS结构

OS结构可以分为四类:简单结构、分层结构(虚拟机)、微内核结构、模块化结构

1、简单结构:MS-DOS:用最小的空间提供最基础的功能,接口和功能的层次没有分离。

original UNIX:由内核和系统程序组成。

2、分层结构:操作系统被分成很多层,一个层次都是利用较低层提供的操作来实现的。

模块化,简化了调试和系统验证。

主要问题涉及对层的仔细定义和效率稍低。

虚拟机:应用程序可以将系统程序看作一个层次整体,将这种分层方法逻辑地延伸为虚拟机的概念。

将一个计算机的硬件抽象成多个不同的执行环境(通过CPU调度和虚拟内存技术实现)。

优点:通过完全保护系统资源,虚拟机提供了一个坚实的安全层。虚拟机允许进行系统开发而不必中断正常的系统操作。

主要困难在于磁盘系统不够,解决方法是提供虚拟磁盘。

3、微内核结构:使操作系统的内核提供最小的进程和内存管理以及通信功能。

操作系统更加安全可靠、易于扩展。

4、模块化结构:内核由一系列分功能的模块组成。

允许内核提供内核服务同时也允许一些特性动态实现,更加弹性和高效。

五、OS设计和实现

设计目标:对于用户而言,OS应该使用便捷、容易上手、安全可信赖、而且快速;对系统而言,OS应该容易实现、容易维护、稳定且高效。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: