操作系统

操作系统基本概念

计算机系统分为硬件,操作系统,应用程序,用户。操作系统管理各种计算机硬件,为应用程序提供基础,充当计算机硬件与用户之间的中介。
操作系统控制和协调各用户的应用程序对硬件的分配和使用。是计算机系统中最基本的系统软件。

  1. 操作系统的特征
  • 并发
    并发是多个事件在同一时间间隔内发生,计算机系统中同时存在多个运行着的程序,具有处理和调度多个程序同时执行的能力。引入进程的目的就是为了使的程序能够并发执行。
    微观上并发程序还是在交替的分时执行,操作系统的并发性是通过分时来实现的。
    但是并行性是指系统具有可以同时进行运算或者操作的特性,在同一时刻完成两种或者两种以上的工作,需要有相关硬件的支持。
    可以联想自己写的并行程序是要在多个计算机上运行的,而如果在一台计算机上,它也只能是分时运行的。

  • 共享
    资源共享,指系统中的资源可以供内存中多个并发执行的进程共同使用。

    • 互斥共享方式
      一段时间内只允许一个进程访问该资源,一段时间内只允许一个进程访问的资源称为临界资源或者独占资源。
    • 同时访问方式
      同时只是宏观上的,微观上,进程还是交替的对资源进行访问,即分时共享。同时访问的共享,一个请求分几个时间片段间隔完成的效果,与连续完成的效果相同。

    并发和共享是操作系统两个最基本的特征。

  • 虚拟
    将物理实体变成逻辑上的对应物,虚拟处理器,虚拟内存,虚拟外部设备。
    利用多道程序设计技术,把一个物理上的CPU虚拟成多个逻辑上的CPU,称为虚拟处理器。
    将一台计算机的物理存储器变为虚拟存储器,以便从逻辑上来扩充存储器的容量。
    虚拟设备技术,将一台物理I/O设备虚拟为多台逻辑上的I/O设备,并允许用户占用一台逻辑上的I/O设备,这样便可以使原来仅允许在一段时间内由一个用户访问的设备,临界资源,变成在一段时间内允许多个用户同时访问的共享设备。

  • 异步
    多道程序环境下,允许多个程序并发执行,但是资源有限,进程的执行并不是一贯到底,而是以不可知的速度向前推进,这就是进程的异步性。

  1. 操作系统的特征和目标
    处理机管理,存储器管理,设备管理,文件管理。
  • 处理机管理
    处理机的分配和运行以进程为基本单位,因此处理机管理可以归结为进程管理。进程控制,进程同步,进程通信,死锁处理,处理机调度。
  • 存储器管理
    方便用户使用以及提高内存使用率,内存分配,地址映射,内存保护与共享,内存扩充。
  • 文件管理
    文件存储空间的管理,目录管理,文件读写管理和保护。
  • 设备管理
    提高设备利用率,完成用户的I/O请求,缓冲管理,设备分配,设备处理,虚拟设备。
  1. 操作系统为用户与计算机硬件系统间提供了接口
    用户接口分为两类:
  • 命令接口
    用操作命令来组织和控制作业执行
    • 联机控制
      交互式命令接口,分时或者实时系统
    • 脱机控制
      批处理命令接口,适用于批处理系统,一组作业控制命令。
  • 程序接口
    程序接口由一组系统调用命令组成,用户在程序中使用这些系统调用命令来请求操作系统为其服务,程序中用户可以直接使用这组系统调用命令。
    图形用户界面,图形接口,也是调用程序接口实现的。

Tips:

  1. 系统软件包括,操作系统,数据库管理软件,语言处理程序,服务性程序,标准库程序
  2. 系统调用是操作系统提供给应用程序使用内核功能的一个接口。
  3. 库函数是高级语言提供的与系统调用对应的函数,但是有些库函数与系统调用无关。
  4. 文件I/O需要在内核态运行。
  5. 操作系统不提供管理系统缓存的系统调用。
  6. 多道程序设计失去了封闭性和顺序性,顺序性是单道程序设计的基本特征。
  7. 不使用系统调用的库函数,效率高,因为不存在上下文的转换以及状态转换,用户态转换成核心态。
  8. 通道是独立于CPU的控制输入输出的设备,与CPU可以并行。

操作系统的发展

  1. 手工操作
  2. 批处理阶段
  • 单道批处理系统
    顺序性,每次主机内存中存放一道作业,运行期间发出输入输出请求的时候,高速CPU就处于等待低速I/O完成状态。
  • 多道批处理系统
    多道,宏观上并行,微观上串行,内存中的多道程序轮流占有CPU,交替执行。响应时间长,不能人机交互。
  1. 分时操作系统
    分时操作系统是多个用户通过终端同时共享一台主机,多道批处理是实现作业自动控制而无需人工干预的系统,分时系统是实现人机交互的系统。
  2. 实时操作系统
  • 硬实时系统
    动作必须绝对的在某个时刻发生
  • 软实时系统
    某个特定的动作在规定的时间完成,如果偶尔违反也不会产生永久性损害。

严格的时间限制内完成处理时间,主要特定是及时性和可靠性。

  1. 网络操作系统和分布式计算机系统
    网络中各种资源的共享以及各台计算机之间的通信
    分布式系统主要特点是分布性和并行性,若干台计算机相互协同完成一个任务。

Tips:

  1. 虚拟和交换技术以多道程序设计技术为前提
  2. 实时系统普遍用高优先级,并且用可抢占来确保实时处理。
  3. 要求快速响应用户是导致分时系统出现的原因。

操作系统的运行环境

特权指令:计算机中不允许用户直接使用的指令,I/O指令,置中断指令,存取用于内存保护的寄存器,送程序状态字到程序状态字寄存器等指令。操作系统在具体实现上分了用户态(目态)和核心态(管态)。
操作系统采用了层次式的设计结构,与硬件关联紧密的模块,时钟管理,中断处理,设备驱动等处于最底层,其次是运行频率较高的程序,进程管理,存储器管理,设备管理。这两部分构成了操作系统的内核。

  1. 操作系统的运行
    内核是计算机上配置的底层软件。
  • 时钟管理
    第一功能是计时,另外通过时钟中断管理,可以实现进程的切换。
  • 中断机制
    初衷是提高多道程序运行环境中的CPU利用率,主要针对外部设备。键盘鼠标的输入,进程管理和调度,系统功能调用,设备驱动,文件访问。现代操作系统是靠中断驱动的软件。
    中断机制中,小部分功能属于内核,负责保护和恢复中断现场的信息,转移控制权到相应的处理程序,减少中断的处理时间,提高系统的并行处理能力。
  • 原语
    底层是一些可以被调用的公用小程序,各自完成一个规定的操作。
    最接近硬件的部分,程序运行具有原子性,运行时间短,调用频繁。
    具有这些特点的程序称为原语,定义原语的直接方法是关闭中断,让它所有动作不可分割的进行完再打开中断。系统中设备驱动,CPU切换,进程通信等功能部分操作定义为原语,使他们称为内核的组成部分。
  • 系统控制的数据结构及处理
    进程管理,存储器管理,设备管理

核心态指令实际上包括系统调用类指令和一些针对时钟,中断和原语的操作指令。

  1. 中断和异常
    用户态和核心态的切换,从用户态进入核心态需要进行中断或者异常,中断或者异常发生时,运行用户态的CPU会立即进入核心态,这是通过硬件实现的。
    提高资源利用率需要在程序没有使用某种资源的时候,把它对那种资源的占有权释放,这个行为,就需要中断实现。
  • 中断
    外中断,来自CPU执行指令之外的事件发生,设备发出的I/O结束中断,时钟中断,表示一个固定的时间片已到,让处理机处理计时,启动定时运行任务等。这一类中断是与当前程序运行无关的事件。
  • 异常
    内中断,例外,陷入,源自CPU执行指令内部的事件,程序非法操作,地址越界,算术溢出,异常处理一般要依赖于当前程序的运行现场,异常不能被屏蔽,一旦出现应立即处理。
  1. 系统调用
    操作系统作为用户与计算机硬件系统之间的接口,命令接口和程序接口,程序接口就是系统调用。
    用户在程序中调用操作系统提供的子功能,特殊的公共子程序。
    在用户程序中,凡是与资源有关的操作,存储分配,进行I/O传输,以及管理文件,都必须通过系统调用方式向操作系统提出服务请求。
    系统调用运行在系统的核心态,系统调用命令是由操作系统提供的一个或者多个子程序模块实现的。
    用户通过操作系统运行上层程序,这个上层程序依赖于操作系统的底层管理程序提供服务支持,需要管理程序服务时候,系统通过硬件中断机制进入核心态,运行管理程序。也可能是程序运行出现异常,被动需要管理程序的服务,通过异常处理进入核心态,管理程序运行结束的时候,通过相应的保存程序现场退出中断处理程序或者异常处理程序,返回断点继续执行。
    关心的是系统核心态和用户态的软件实现和切换。
    从核心态转向用户态由一条指令实现,也是特权指令,一般是中断返回指令。
    用户态进入核心态,不仅状态需要切换,堆栈也需要从用户堆栈切换为系统堆栈,系统堆栈是属于该进程的。
    程序运行从用户态转到核心态,用到访管指令,访管指令是在用户态使用的,所以不可能是特权指令。

Tips:

  1. 用户程序在用户态下要使用特权指令引起的中断属于访管中断。
  2. 只能在核心态下运行的指令是置时钟指令。
  3. 广义指令就是系统调用命令,只能在核心态下执行。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 160,585评论 4 365
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,923评论 1 301
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 110,314评论 0 248
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,346评论 0 214
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,718评论 3 291
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,828评论 1 223
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 32,020评论 2 315
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,758评论 0 204
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,486评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,722评论 2 251
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,196评论 1 262
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,546评论 3 258
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,211评论 3 240
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,132评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,916评论 0 200
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,904评论 2 283
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,758评论 2 274

推荐阅读更多精彩内容