zoukankan      html  css  js  c++  java
  • 操作系统|操作系统概述

    什么是操作系统?

    操作系统(Operating System,OS)是控制应用程序执行和充当硬件系统和应用程序之间的界面的软件。

    操作系统的目标

    方便性、有效性、可扩充性、开放性。

    操作系统的作用

    • OS作为用户与计算机硬件系统之间的接口

      如图所示,用户可以通过命令方式、系统调用和图标-窗口方式实现与操作系统的通信,并取得它的服务。

      图片描述

    • OS作为计算机系统资源的管理者

      1. 管理处理器,用于分配和控制处理器
      2. 管理存储器,主要负责内存的分配与回收
      3. 管理I/O设备,负责I/O设备的分配与操纵
      4. 管理文件,负责文件的存取、共享和保护
    • OS实现了对计算机资源的抽象

      OS是铺设在计算机硬件上的多层软件的集合,增加了系统的功能,隐藏了对硬件系统的具体细节,实现了对计算机硬件操作的多个层次的抽象模型,方便用户使用。

      图片描述

    操作系统的发展过程

    • 未配置操作系统的计算机系统

      1. 人工操作方式

      2. 脱机输入/输出方式

        脱机I/O方式指的是程序和数据的输入和输出都是在外围机的控制下完成的,或者说,他们是在脱离主机的情况下进行的。

        联机I/O指的是在主机的直接控制下进行输入/输出的方式。

    • 单道批处理系统:首先由监督程序将磁带上的第一个作业装入内存,并把运行控制权交给该作业,当该作业处理完成时,又把控制权交还给监督程序,再由监督程序把磁带上的第二个作业调入内存,计算机系统就这样自动地一个作业紧接一个作业进行处理,直至磁带上的所有作业全部完成。

    • 多道批处理系统:用户所提交的作业都先存放在外存上并排成一个队列,称为“后备队列”;然后由作业调度程序按一定的算法从后被队列中选择若干个作业调入内存,使它们共享CPU和系统中的各种资源。

      图片描述

    • 分时系统:分时系统是指在一台主机上连接了多个配有显示器和键盘的终端并由此所组成的系统,该系统允许多个用户同时通过自己的终端,以交互方式使用计算机,共享主机中的资源。为了及时从终端接收命令并处理,需要为每个终端配置缓冲区,暂存用户键入的命令(或数据)。因为作业在磁盘上是不能运行的,所以作业应直接进入内存,并且系统规定采用轮转运行方式,每个作业只能运行一个时间片,然后就暂停该作业的运行,并立即调度下一个作业运行。

    • 实时系统:实时系统是指系统能及时响应外部时间的请求,在规定的时间内完成对该事件的处理,并控制所有实时任务协调一直地运行。

    • 微机操作系统

    操作系统的基本特性

    并发:指两个或多个事件在同一时间间隔内发生,使得OS能有效地提高系统中资源利用率,增加系统的吞吐量。

    • 并发性是指两个或多个事件在同一时间间隔发生。
    • 并行性是指两个或多个事件在同一时刻发生。

    共享:共享是指系统中的资源可供内存中多个并发执行的进程(线程)共同使用。

    • 互斥共享:仅当占有资源的进程A访问完并释放该资源后,才允许另一进程B对该资源进行访问(对独占资源应采用该方式)
    • 同时访问:允许在一段时间内由多个进程“同时”对它们进行访问。这里的“同时”,在单处理机环境下往往是宏观的,而在微观上,这些进程可能是交替对该资源进行访问。

    虚拟:通过某种技术将一个物理实体变成若干个逻辑上的对应物。

    • 时分复用技术

    虚拟处理机技术:虚拟处理机技术借助多道程序设计技术,即为每一道程序建立一个进程,让多道程序并发执行,从而达到分时使用一台计算机,这台计算机能够同时为多个用户服务,使得每个终端用户都认为有一个处理机专门为他服务。

    虚拟设备技术:一台物理I/O设备虚拟为多台逻辑上的I/O设备,并允许用户占用一台逻辑上的I/O设备,这样可以允许在一段时间内由一个用户访问的设备(即临界资源)变为在一段时间内允许多个用户同时访问的共享设备。

    • 空分复用技术

    可以用来实现虚拟磁盘、虚拟存储等,提高资源的利用率。它将一个频道范围非常宽的信道,划分成多个频率范围较窄的信道,其中的任何一个频带都只供一个用户通话

    异步:在多道程序环境下允许多个进程并发执行,但只有进程在获得所需的资源后方能执行。进程以人们不可与之的速度向前推进,此即进程的异步性。简单来说,即由于各用户程序性能的不同,不同程序对内存的使用开始时间、结束时间、中断时间是不可预知的。

    操作系统的主要功能

    • 处理机管理功能:创建和撤销进程,对诸进程的运行进行协调,实现进程之间的信息交换,以及按照一定的算法把处理机分配给进程。主要为进程控制进程同步进程通信调度
    • 存储器管理功能:内存分配和回收内存保护地址映射内存扩充等。
    • 设备管理功能:主要是完成和用户进程提出的I/O请求,为用户进程分配所需的I/O设备,并完成指定的I/O操作以及提高CPU和I/O设备的利用率,提高I/O速度,方便用户使用I/O设备。主要有缓冲管理设备分配以及虚拟设备等。
    • 文件管理功能:对用户文件和熊文件进行管理以及方便用户使用,并保证文件的安全性。主要有对文件存储空间的管理目录管理文件的读,写管理以及文件的共享与保护等功能。
    • 操作系统与用户之间的接口:便于用户直接或间接地控制自己的作业。主要有联机用户接口、脱机用户接口图形用户接口

    微内核OS结构

    微内核(Micro Kernel)操作系统

    基本特征

    • 足够小的内核

    • 基于客户/服务器模式

      图片描述

    • 应用“机制与策略分离”原理

    • 采用面向对象技术

    微内核的基本功能:进程(线程)管理、低级存储器管理、中断和陷入处理

    微内核操作系统的优点:提高了系统的可拓展性,增强了系统的可靠性,可移植性强,提供了对分布式系统的支持,融入了面向对象技术

    文章同步在微信公众号,习惯微信上看文章的可以关注微信公众号:加二减壹
    文章同步https://segmentfault.com/u/1s_kiwen,转载须注明出处

    作者:1s_kiwen
    个人博客:https://kiwen.top
    如果本文使您有所收获,请点击右下角的 [推荐]! 如果您对本文有意见或者建议,欢迎留言,哪怕是拍砖(^_^)! 欢迎转载,请注明出处! 感谢您的阅读,请关注后续博客!
  • 相关阅读:
    JS-得到屏幕宽高、页面宽高
    CSS3-border-radius 属性
    从30岁到35岁:为你的生命多积累一些厚度【转载】
    HTML5-IOS WEB APP应用程序(IOS META)
    HTML-Meta中的viewport指令
    EasyUI-window包含一个iframe,在iframe中如何关闭window
    JS-为句柄添加监听函数
    EasyUI-EasyUI框架入门学习
    Linux下的C编程
    ***经典笔试题
  • 原文地址:https://www.cnblogs.com/kiwenzhang/p/10894408.html
Copyright © 2011-2022 走看看