zoukankan      html  css  js  c++  java
  • 第一章 概述

    (图片均来自中国大学mooc王道os课程)

    一、框架

    1.概述

    2.进程管理

    3.内存管理

    4.文件管理

    5.输入输出(I/O)管理

       

    二、基本概念

       

    操作系统是指控制和管理整个计算机系统的硬件和软件资源,并合理地组织调度计算机的工作和资源地分配;以提供给用户和其他软件方便地接口和环境;它是计算机系统中最基本的系统软件

       

    ①系统资源的管理者:进程管理、内存管理、文件管理、输入输出(I/O)管理

    ②向上提供方便易用的服务(封装的思想)

        用户接口子系统——直接给用户使用

        基础平台子系统——给软件/程序员使用,系统调用

     

    ③最接近硬件的一层软件

        

    联机命令与脱机命令区别在于说一句做一句还是说一堆做一堆

       

    三、四个特征

    1.并发性

    并发:两个或多个事件在同一时间间隔内发生。宏观上同时,微观上交替。通过分时实现。

    eg9:10-9:20吃面包,9:20-9:30写作业,那么9:10-9:30间两行为并发。

    并行:两个或多个事件再同一时刻同时发生。

    eg:一边吃面包一边写作业。

    os的并发性指计算机系统中"同时"运行着多个程序,这些程序宏观上看是同时运行的,微观上是交替运行的。

    四核cpu最多4个程序并行,

     

     

       

    2.共享性

    互斥共享:一个时间段中允许一个进程访问资源。资源叫临界资源:eg:打印机。

    同时共享:同时读数据。"同时"往往是宏观上的 ,而在微观上可能是交替地对该资源进行访问的,即分时访问。

    共享与并发互为存在条件

    3.虚拟性

    把一个物理上的实体变为若干个逻辑上的对应物。逻辑实体是实际存在的,而逻辑上的对应物是用户感受到的。

    空分复用:eg:虚拟存储器

    时分复用:eg:处理器的分时共享

    没有并发性也太不上虚拟性。

    4.异步性

    进程执行时走走停停的,不是一贯到底的。

    只有拥有并发性,才有可能导致异步性。

       

       

    四、发展与分类

       

    1.手工操作阶段(无操作系统)

    串行处理,纸带打孔手动输入输出,。用户独占全机,CPU等待手工操作,利用率低。

    2.批处理阶段

    (1)单道批处理系统

    自动性:作业自动依次装入磁带

    顺序性:磁带上的作业顺序进入内存

    单道性:内存中仅有一道程序运行

       

    输入输出更快了,但只有内存中的程序运行结束了才能调入下一道程序,CPU大量时间在空闲等待I/O完成,利用率仍低。

    (2)多道批处理系统

     

    3.分时操作系统

    时间片为单位轮流为各个用户/作业服务。

    优点:用户请求可以被及时响应,解决了人机交互问题。

    缺点:不能优先处理一些紧急任务。因为os对每一个用户/作业都完全公平,不考虑优先级。

    4.实时操作系统

    5.其它

    网络os、分布式os

       

    五、os的运行机制

    1.两种指令、程序、处理器状态

    内核程序:操作系统内核作为"管理者",有时会让cpu执行"特权指令"(指计算机不允许用户直接使用的指令)

    eg:内存清0指令、置中断指令

    应用程序:只能使用"非特权指令",eg:加减法

    内核态=核心态=管态:说明正在执行的时内核程序,可以执行特权指令

    用户态=目态:说明正在执行的时应用程序,只能执行非特权指令

    CPU中程序状态寄存器(PSW)中有个二进制位,1表示"内核态",0表示"用户态"。

    内核->用户:执行一条特权指令——修改PSWos主动让出CPU使用权。

    用户->内核:"中断"引发,硬件自动完成变态过程,触发中断信号意味着os强行夺回CPU的使用权。

    2.中断和异常

    中断是让OS内核夺回CPU使用权的唯一途径。现代os是靠中端驱动的软件。

    内中断(异常):与当前执行的指令有关,中断信号来源于CPU内部

    eg:应用程序的陷入指令,应用程序主动让出CPUos内核,"系统调用"就算通过陷入指令完成的。

    地址越界、虚存系统缺页

    外中断(中断):与当前执行的指令无关,中断信号来源于CPU外部

    eg:时钟中断——有时钟部件发来的中断信号,可以用于进程的切换。

    I/O中断——由输入输出设备发来的中断信号。

       

       

    3.系统调用

    用户在程序中调用os所提供的一些子功能,可被看作特殊的公共子程序。

    应用程序可以通过系统调用来请求获得操作系统内核的服务。

       

       

       

    4.os的体系结构

       

       

       

       

       

    六、本章小结

     

  • 相关阅读:
    Java 处理 XML
    Spring MVC全局异常处理
    ThreadLocal与Synchronized区别
    office xml 方式
    Nginx ssl证书部署方法
    利用nginx来屏蔽指定的user_agent的访问以及根据user_agent做跳转
    Nginx使用GZIP来压缩网页
    Kibana安装与基本用法(ELK)
    用Linux自带的Logrotate来管理日志
    Net accounts命令
  • 原文地址:https://www.cnblogs.com/caiyishuai/p/11839093.html
Copyright © 2011-2022 走看看