1.操作系统的功能

操作系统的主要任务:
(1)管理处理机
(2)存储器管理(内存)
(3)管理输入/输出设备(外设)
(4)管理数据文件(文件)
(5)提供接口服务

1.1 接口功能

指操作系统为用户提供的人机交互界面
(1)命令行:DOS、Unix;对于初学者很难入门
(2)图形化户用接口:Windows,懂不懂英语不重要,只要认识图标就好了
(3)程序接口:基于系统调用的形式供用户编程进行使用。如Windows API

1.2 处理机管理任务

(1)进程控制:创建和撤销进程以及控制进程的状态转换;进程的创建是由操作系统管理的,而不是由用户操控。此外,进程一旦结束,需要操作系统及时进行回收,以释放资源。
(2)进程同步:多道程序,多个进程在内存,他们不仅仅在竞争资源,也可能存在数据的通信,比如数据的计算进程和打印进程。所以多个进程应该在内存中协调(同步),并且互斥地访问临界资源【打印机就是特殊的临界资源,比如多个进程同时应用打印机资源,轮流调用打印机明显是不合理的;只能够一个进程应用完,释放后下一个进程才能够使用】【亦或者两个进程同时修改同一个变量,最明显的就是柜台和ATM客户端同时修改存款的额度】,并协调执行进度。
(3)进程通信:进程间的信息交换【比如说发送邮件与接收邮件就不需要同步】
(4)进程调度:按照一定算法从进程就绪队列中选出一个进程,把处理机分配给它,使之运行。

1.3 存储器管理任务与功能

(1)为多道程序的并发执行提供良好的环境【进程切换、数据存储安全】;便于用户使用存储器【便于用户实时修改大小】;提高存储器的利用率【很重要的,如何让进程驻留内存?分块?分区?最关键的是不要浪费内存空间】;为尽量多的用户提供足够大的存储空间【多进程在内存空间,多进程就是为了提高系统吞吐量,使尽量多的进程提供处理器资源】。

(2)功能:

内存分配:静态分配【一次分配,不可以改动】;动态分配【进程即已分配的空间可以调整大小,相比较之下,比较灵活,但管理比较复杂,需要操作系统支持】;连续分配【简单粗暴,但是存在零头的问题】;非连续分配【对内存空间的利用率会更高,技术水平也更高】。

内存保护:数据【操作系统自身的数据、用户的数据;要保证用户不要非法修改系统数据,用户之间不非法修改数据】。

地址映射:逻辑地址(0,1,2,3,....)映射到内存中的物理地址,方便处理机调用【非连续存储在这里就会更加复杂】。

内容扩充:虚拟存储技术,提高内存利用率。把一部分外存虚拟成系统内存。

1.4 设备管理任务与功能

多道程序在内存会对资源进行竞争...

(1)为用户程序分配I/O设备

(2)完成用户程序请求的I/O操作

(3)提高处理机和I/O设备的利用率

(4)改善人机操作界面;比如磁盘磁带看起来是不同的对象,但是我们希望操作系统把他们看成相同的对象,即提供统一的接口,友好地进行人机交互。

设备管理功能:缓冲管理【内存->缓存区->外存;解决了CPU的数据很快,但是输入输出设备的速度却很慢】、设备分配【多进程对打印机资源的竞争】、设备管理(启动设备、中断处理)【申请输出功能、管理功能等,中断处理,保护现场,还原现场】、虚拟设备功能【虚拟内存、分时技术实际上及将CPU虚拟成多个处理机】、RAID技术【磁盘阵列技术,提高数据安全性,确保数据可以进行恢复】、磁盘调度【数据的先后处理等】

1.5 文件管理任务与功能:

(1)管理用户文件【隐私性】和系统文件
(2)管理文件的存储空间
(3)保证文件数据的安全【设置访问权限】【修改文件建立时间、修改保存地址等】
(4)方便用户使用文件【文件命名的要求,如早期的Windows只允许8个字符的文件名,很不方便,后来经过改进允许进行长字符进行命名】
任务:
(1)文件目录管理【不允许修改目录,目录中包含了文件的属性,强制修改将会出现文件错误】【统一文件目录一般不允许出现两个同名同类文件】
(2)文件逻辑组织与访问方式【文件:由若干个有关联的数据构成;如何确定数据的组织形式,按时间?按属性?等等,要看用户的选择】
(3)存储空间的管理:文件的物理组织【文件在磁盘中是如何存储的?一条一条的还是Block形式?文件如何存数到磁盘中的】、空闲磁盘空间的管理
(4)文件共享与安全【如何实现不同用户间的文件进行共享,并且这些共享又是安全的?】

2.现代操作系统的特征及基本概念(具备基本概念)

2.1 特征

(1)任务共行性:宏观上,指系统中有多个任务同时运行;微观上,指单处理机系统中的任务并发,即多个任务在单个处理机上交替运行;或多处理机系统中的任务并行,即多个任务在多个处理机上同时运行。
(2)资源共享性:宏观上,指多个任务可以同时使用系统资源;微观上,指多个任务可以交替互斥地使用系统中的某个资源。【例如:酷狗和爱奇艺同时竞争声卡发声资源,宏观上声卡被驱动同时播放歌声和电影。微观上,两个进程在交替的使用声卡资源】
(3)虚拟性:指将一个物理上的实体变为若干个逻辑上的对应物 。如,采用分时技术,将一台处理机虚拟为若干台处理机。还可以虚拟存储、虚拟设备、虚拟通道、虚拟文件、虚拟用户组以及虚拟网络等。
(4)不确定性:程序执行结果不确定,程序不可再现【很严重!!!同一程序同一环境执行效果不同???进程之间互相干扰是不被允许的!!!】;多道程序环境下,进程以异步方式执行【进程A被终止,其他进程跟进,只影响进程执行的进度,而不干扰进程执行的结果】

2.2 基本概念

多道程序设计技术:系统中允许多道程序同时准备运行,当正在运行的那道程序因为某种原因(比如等待输入或输出数据)暂时不能继续运行时,系统将自动地启动另一道程序运行;一旦原因消除(比如数据已经到达或数据已经输出完毕),暂时停止运行的那道程序在将来某个时候还可以被系统重新启动继续运行。
引发的问题:(!资源利用率高、系统吞吐量大的代价!) 
(1)协调因争夺处理机或者输入/输出设备而产生的冲突,解决同步、互斥和死锁【两个资源同时等待对方的资源而出现僵持现象】问题。
(2)防止各道程序之间的交叉和冲突,防止作业被有意无意地破坏【数据安全性问题】
(3)必须建立高效、可靠和方便的文件系统,有效地管理和存取系统中的软件资源和辅存空间【单道共享性差,文件管理容易,多道程序设计大量应用共享性,必须对文件进行有效管理】

进程与线程

(1)进程是指,程序的一次执行,包括可执行的程序、程序所需的数据和相关状态信息。进程是拥有资源的最小实体,在传统操作系统中,进程同时也是系统调度的最小单位。进程是一个动态的概念!

(2)线程是指,程序的一次相对独立的运行过程;在现代操作系统中,线程是系统调度的最小单位。

作业

计算机用户在一次上机过程中要求计算机系统为其所做工作的集合;作业中的每项相对独立的工作称为作业步。通常,人们用一组命令来描述作业;其中,每个命令定义一个作业步【如一次程序调试过程中要一次次把显示数据写到显示屏上】

虚拟存储

为了能在有限的内存空间中运行更大、更多的进程(程序),可以将一部分磁盘空间虚拟为逻辑内存,使用户感觉到一个比物理内存空间大得多的逻辑内存空间,即实际物理内存空间与虚拟的那部分逻辑内存空间的总和,统称为虚拟内存空间。

有了虚拟存储技术,进程执行时,只需要预先在物理内存中装入进程的一部分程序代码和数据,进程即可开始执行。

当需要的程序代码和数据不在物理内存时,根据需要临时装入,而整个操作对用户透明

文件

文件是若干相关数据的集合,有的操作系统将程序、数据以及各种外部设备统统称为文件。具有唯一的文件名,对文件的操作包括文件的建立、修改、删除、重命名、设置访问权限等。概括地说,文件就是命名了的字节流,它是现代操作系统对计算机系统中种类繁多的外部设备进行高度抽象的结果。

3. 操作系统分类

根据操作系统在用户界面的使用环境和功能特征的不同分类:批处理系统、分时系统和实时系统。

3.1 批处理操作系统

       一批作业首先在外存上排成一个队列;然后,由作业调度程序负责从该队列中选取一个或多个作业进入内存,并分别为它们建立进程,使若干进程共享包括处理机、内存空间在内的系统资源,以提高资源利用率和系统吞吐量。 

批处理操作系统:优缺点:

(1)主要优点:多道程序由操作系统自动调度执行,大大降低了人工干预对系统性能的影响,资源利用率高,系统的吞吐量大。

(2)缺点: 交互性很差,修改和调式程序极其困难,增加了作业的平均周转时间。作业在外存排队,等待调度进入内存。进程在内存排队,等待获取所需的系统资源。

3.2 分时操作系统

提供了一个多用户工作环境,一台主机连接若干台终端,每台终端供一个用户使用。用户交互式地向系统提出联机命令请求,系统接受所有用户的命令,采用分时原则处理服务请求,再通过交互式终端显示执行结果。

3.3 实时操作系统

能及时响应外部事件的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一致地运行的操作系统。设计目标:对外部请求必须及时响应,在严格规定的时间内完成某事件,要求系统具有极高的可靠性和完整性。 

3.4 分布式操作系统 

分布式系统是指多个处理机通过通信线路互连而构成的系统,系统的处理和控制功能分布在各个处理机上。配置在分布式系统上的操作系统称为分布式操作系统,它负责分布式系统中的任务分配、资源管理等功能服务。

3.5 嵌入式操作系统

运行在嵌入式系统环境中,对整个嵌入式系统以及它所操作、控制的各种部件装置等资源进行协调、调度、指挥和控制的系统软件。嵌入式操作系统在工业控制、军事及民用设施中有着广泛的应用前景。 

[OS复习]操作系统综述2相关推荐

  1. [OS复习]操作系统综述1

    1.计算机系统资源 软件:系统软件(操作系统及应用程序).应用软件 硬件:处理机(CPU).内存(条).外部I/O设备(显示器.键盘.鼠标.打印机.磁盘.磁带.扫描仪--)以及系统总线 2.什么是操作 ...

  2. 操作系统:操作系统总复习(综述篇)

    操作系统综述篇 文章目录 操作系统综述篇 前言 一.什么是操作系统? 二.操作系统的作用是什么? 三.操作系统的基本特性 并发性 共享性 虚拟性 异步性 四.微内核OS结构 特点 功能 问题 总结 前 ...

  3. Symbian 智能手机操作系统综述

    Symbian 智能手机操作系统综述 Symbian 智能手机操作系统综述 (这是根据自己的理解写的一篇综述,操作系统课程论文) 1.智能手机操作系统: 手机已渐渐成为人们日常生活不可或缺的东西,最初 ...

  4. 在用苹果Mac OS X操作系统吗?那你得小心了……

    曾几何时,苹果操作系统一度被人认为是最安全的操作系统.然而近几年,针对苹果系统的攻击日益增多,影响范围也越来越大.无独有偶,近日,苹果Mac OS X操作系统也沦陷了,研究机构赛门铁克揭示了首个攻击该 ...

  5. OS复习——设备管理习题

    OS复习--设备管理习题 在I/O系统中引入缓冲的主要原因是什么?某文件占10个磁盘块,现要把该文件的磁盘块逐个读入主存缓冲区,并送用户区进行分析.一个缓冲区与磁盘块大小相等.把一个磁盘块读入缓冲区的 ...

  6. 关于ROS(Robot OS 机器人操作系统)

    关于ROS(Robot OS 机器人操作系统) 关于ROS(Robot OS 机器人操作系统) 对于ROS的安装,在它的官方网站: http://wiki.ros.org/ROS/Installati ...

  7. mac os 苹果操作系统如何切换输入法

    mac os 苹果操作系统如何切换输入法 中英文切换:command(又称苹果键)+空格键

  8. Linux 常见指令及权限、OS(操作系统)基本概念

    目录 一.OS(操作系统)基本概念 1.概念 二.Linux常见指令 1.ls指令 2.pwd指令 3.cd指令 4.touch指令 5.mkdir指令 6.rmdir指令 && rm ...

  9. 【OS】操作系统高频面试题英文版(1)

      今天开始更新操作系统高频面试题英文版.同样也分为 Basic.Intermediate.Advanced 三部分.下面是 Basic 部分.音频文件下方获取. [OS]操作系统高频面试题英文版(1 ...

最新文章

  1. Linux驱动程序开发 - 设备IO
  2. Fedora学习总结
  3. c语言对分查找实验报告,C语言实验指导.doc
  4. Linux shell的和||
  5. 第 10 章 建造者模式【Builder Pattern】
  6. 最全数据结构详述: List VS IEnumerable VS IQueryable VS ICollection VS IDictionary
  7. DbUtils: JDBC Utility Component Examples翻译
  8. 无法关闭microsoft word_仅记录word文档损坏后的挣扎(亲历)
  9. 原生js代码实现Ajax
  10. JQuery中Ajax传json格式中文至后台乱码
  11. 一文读懂python中数据纬度是怎么数的。
  12. 《Mybatis 手撸专栏》第10章:使用策略模式,调用参数处理器
  13. MSET key value [key value ...]
  14. STC8H8K64U——LED灯闪烁
  15. 拨号上网、ISDN、ADSL、光纤上网比较
  16. 阿里云大数据组件选型
  17. matlab 像素点的辐照度方程,用蒙特卡罗方法和MATLAB计算冷屏内壁表面辐射光线落入探测器芯片的比例...
  18. Android自定义实现按周签到打卡功能
  19. 启发式搜索 luogu2483——[SDOI2010]魔法猪学院
  20. 《周易》六十四卦歌诀

热门文章

  1. Surrounded Regions
  2. 求一个二叉树中距离最远的两个节点
  3. SQL Server 日志传送[转载]
  4. MVC Razor 语法(转)
  5. 分布式计算互相sayhello
  6. 跟JBPM学设计模式之适配器模式
  7. 迷你HTM在线L编辑器—xhEditor
  8. “error LNK1169: 找到一个或多个多重定义的符号”的解决方法
  9. nyoj1306海拔
  10. Flutter Text或者RichText不换行的问题