操作系统(OS)学习笔记(一)

一.操作系统的概念

用户
应用程序
操作系统
裸机

操作系统是硬件不是软件
操作系统定义:
  是指控制和管理整个计算机系统的硬件和软件资源,并合理的组织调度计算机的工作和资源的分配,已提供给用户和其他软件方便的接口和环境,他是计算机系统中最基本的系统软件
二.操作系统的功能和目标
  1)作为系统资源的管理者
功能:
  1)处理机管理
  2)存储器管理
  3)文件管理
  4)设备管理
目标:安全高效
  2)作为用户和计算机硬件直接的接口
提供功能:
  1)命令接口(允许用户直接使用)
    联机命令接口:用户说一句系统做一句
    脱机命令接口:用户说一堆系统做一堆
  2)程序接口(允许用户通过程序间接使用)
    由一组系统调用组成(程序接口=系统调用)
  3)图形用户界面(GUI)   
目标:方便用户使用 
  3)作为最接近硬件的层次
功能:实现对硬件机器的拓展
  类比
   硬件:锤子\木头\钉子
   操作系统:优秀的工匠
   做成房子普通用户直接使用
三.操作系统的四个基本特征
  1.并发(concurrence)
  并行性是指两个或者多个事件在同一时刻发生,这是一个具有微观意义的概念,即在物理上这些事件是同时发生的;
并发性是指两个或者多个事件在同一时间的间隔内发生,它是一个较为宏观的概念。交替出现
  2.共享 (sharing)
  所谓共享是指,系统中的资源可供内存中多个并发执行的进程共同使用。由于资源的属性不同,故多个进程对资源的共享方式也不同,
可以分为:互斥共享方式 :只能分配给一个
      同时访问方式:交替
  3.虚拟 (virtual)
  是指通过技术吧一个物理实体变成若干个逻辑上的对应物。在操作系统中虚拟的实现主要是通过分时的使用方法。显然,如果n是某一个物理设备所对应的虚拟逻辑设备数,则虚拟设备的速度必然是物理设备速度的1/n。
  4.异步 (asynchronism)
  在多道程序设计环境下,允许多个进程并发执行,由于资源等因素的限制,通常,进程的执行并非“一气呵成”,而是以“走走停停”的方式运行。
重要考点:
理解并发和并行的区别
并发和共享互为存在条件
没有并发和共享,就淡不上虚拟和异步,因此并发和共享是操作系统的两个最基本的特征
四.OS的发展与分类
  手工操作阶段:纸袋打孔1,没打孔0
     缺点:用户独占全机
  批处理阶段
  1)单道批处理系统:引入脱机输入\输出技术(用磁带完成)
  优点:缓解了一定程度的人机速度矛盾,资源利用率有所提升
  缺点内存中仅能有一道程序运行,只有该程序运行结束之后才能调入下一道程序,CPU有大量的时间是在空间等待I/O完成。资源利用率依然很低。
  2)多道批处理系统
  操作系统正式诞生
  优点:多道程序并发进行,共享计算机资源,资源利用率大幅度提升,CPU和其他资源保持"忙碌"状态,系统吞吐量增大
  缺点:用户相应时间长,没有人机交互功能(用户提交自己的作业之后就只能等待计算机处理完成中间不能控制自己的作业执行)
  分时操作系统:计算机以时间片为单位轮流为各个用户\作业服务,各个yoghurt可以通过终端与激素啊你进行交互
  优点:用户请求可以被及时响应,解决人机交互问题,允许多个用户同时使用一台计算机,并且用户对计算机的额操作相互独立,感受不到别人存在
  缺点:不能优先处理一些紧急任务
  实时操作系统
  优点:能够优先响应一些紧急任务
  硬实时:分析及时
  软实时:不及时也没有冠以
  网络操作系统
  分布式操作系统
  个人计算机操作系统
前四阶段考试重点
五.操作系统运行机制和体系结构
  运行机制:1)两种指令:特权指令:不允许普通用户使用
            非特权指令
       2)两种处理状态:
       1核心态:特权指令,非特权指令都可以执行
       0用户态:此时CPU只能执行非特权指令
       3)两种程序:内核程序:是系统的管理者都可执行运行在核心态
           应用程序:只能执行非特权指令运行在用户态
  操作系统内核:时钟管理
       中断处理
       原语
       对系统资源进行管理的功能:进程管理
                     存储器管理
                     设备管理
  操作系统体系结构:
内核是计算机配置的底层软件,是操作系统最基本最核心的部分
        大内核:将操作系统的主要功能模块都作为系统内核运行在核心态
        优点:高能性
        缺点:内核代码庞大,结构混乱,难以维护
         微内核:只把最基本的功能保留在内核
         优点:内核功能减少,结构构清晰,方便维护
         缺点:需要频繁的在和心态和用户态之间切换,性能低                   
六、中断异常
发生中断就意味着操作系统介入
用户态到核心态是通过中断实现的并且中断是唯一的途径
核心态到用户态通过执行一个特权指令
 1.当中断发生时, CPU立即进入核心态
 2.当中断发生后,当前运行的进程暂停运行,并由操作系统内核对中断进行处理
 3.对于不同的中渐信号,会进行不同的处理
发生了中断,就意味着需要操作系统介入,开展管理工作,由于操作系统的管理工作(比如进程切换、分配I/O设备等) 需要使用特权指令, 因此CPU要从用户态转为核心态。中断可以使CPU从用户态切换为核心态,使操作系统获得计算机的控制权、有了中断,才能实现多道程序并发执行。
中断分类
 内中断(CPU内部与当前指令有关):
      自愿中断——指令中断
     强迫中断:硬件故障
         软件中断
 外中断(CPU外部与当前指令无关):外设请求
     人工干预

补充:内中断的另一种分类方式一
   陷阱、陷入(trap)
   故障(fault)
    终止(abort)
外中断的处理过程
1)每条指令执行结束后, CPU检查是否有外部中断信号
2)若有外部中断信号, 则需要保护被中断进程的CPU环境
3)根据中断信号类型转入相应的中断处理程序
4)恢复原进程的CPU环境并退出中断, 返回原进程继续往下执行
七、系统调用
作用:应用程序通过系统调用请求操作系统的服务。系统中的各种共享资源都由操作系统统一掌管,因此在用户程序中,凡是与资源有关的操作(如存储分配、I/O操作、文件管理等),都必须通过系统调用的方式向操作系统提出服务请求,由操作系统代为完成。这样可以保证系统的稳定性和安全性,防止用户进行非法操作。
设备管理 完成设备的请求/释放/启动等功能
文件管理完成文件的读/写/创建/删除等功能
进程控制完成进程的创建/撤销/阻塞/唤醒等功能
系统调用(按功能分类)
进程通信
内存管理
完成进程之间的消息传递/信号传递等功能
完成内存的分配/回收等功能
1)什么是系统调用,有何作用?
 操作系统提供给应用程序使用的接口
 应用程序透过系统调用来请求获得操作系统的服务
 系统调用会佳处理器从用户态进入核心本
2)分类设备管理、
   文件管理 、
    进程控制 (凡是与资源有关的操作、会直接影响到其他进程的操作,定需要操作系统介入
进程透信 需要通过系统调用来实现)
   进程通信
    内存管理
3)系统调用和库涵数的区别
 系统混用是操作系统向上层提供的接口
有的库涵数是对系统调用的进一步封装
当今媲写的应用程序大多是透过高级语言提供的库活数
问接地进行系统用
4)系统调用背后的过程
1.传递系统调用参数
2.执行陷入指令
3.执行系统满用相应服务程序
4.返回用户程序

注:以上所有内容作者结合《王道考研》归纳总结
发布了5 篇原创文章 · 获赞 25 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/m0_46315852/article/details/104591471