🥪🥪🥪各位好,我是小饼干🍪,一个编程界的小学生,每天都希望学习一点点编程相关。最近在学操作系统,整理了一些笔记,如果有不足,非常感谢指正,欢迎跟我一起学习呀,感谢各位的驻足,笔芯♥。
0.什么是操作系统
🚗0.1概念
操作系统OS是配置在计算机硬件上的第一层软件,是对硬件系统的首次扩充。
- 是系统最基本最核心的软件,属于系统软件
- 控制和管理整个计算机的硬件和软解资源
- 合理的组织、调度计算机的工作与资源分配
- 为用户和其他软件提供方便的接口和环境

常见的操作系统:Windows,androd,ios……
1 操作系统的目标和作用
1.1 操作系统的目标
①有效性
(1)提高系统的资源利用率
(2)提高系统的吞吐量
②方便性
③可扩充性
④开放性
🍔1.2操作系统的作用
①OS作为计算机系统资源的管理者
🤷♀️计算机中所有的软硬件资源可以归纳为:处理机,存储器,I/O设备以及文件。
🚓 所以计算机操作系统可以实现:处理及管理,存储器管理,设备管理,文件管理。
🍕进一步讲,当一台计算机系统同时供多个用户使用时,诸多用户对系统中共享资源的需求有可能发生冲突。为此操作系统必须对使用资源的请求进行授权,以协调诸用户对共享资源的使用,
②OS作为用户与计算机硬件系统之间的接口
🍔含义:用户通过OS来使用计算机系统
🚗接口分为两类:命令接口和程序接口
🌭命令接口:用户直接使用
🧂程序接口:用户通过程序间接使用
③OS实现了对计算机资源的抽象(作为扩充机器)
🎈背景:一台裸机对用户能提供夫人仅仅是硬件接口(物理接口),用户必须对为物理接口的实现细节有充分的了解。(物理机器因此难以广泛使用,机器指令很蓝的)
🎆操作:I/O设备为例:人们在裸机上覆盖一层I/O设备管理软件,由它来实现对I/O设备操作的细节,并向上将I/O设备抽象为一组数据结构以及一组I/O操作命令,如read,write……
🧨结果:这样用户既可以利用这些数据结构以及操作指令来进行数据的输入或者输出,而无需关心I/O是如何具体实现的。此时用户所看到的机器是一台比裸机功能更强、使用更方便的机器。
✨简而言之:在裸机上铺设的I/O软件隐藏了I/O设备的具体细节,向上提供了一组抽象的I/O设备(如图)
🎉虚机器(扩充机器):把覆盖了上述软件的机器称为虚机器(扩充机器)
🎊扩展:不仅可以在底层对一个硬件资源加以抽象,还可以在高层对该资源底层已抽象的模型再次进行抽象,成为更高层的抽象模型。
1.3推动操作系统发展的主要动力
①不断提高计算机资源的利用率
②方便用户
③器件的不断更新换代
④计算机体系结构的不断发展
2. 操作系统的发展过程
🍯2.1无操作系统的计算机系统
①人工操作方式
🍫操作:由程序员将事先已穿孔的纸带,装入纸带输入机,再启动它们将纸带上的程序和数据输入计算机,然后启动计算机运行。仅当程序运行完毕并取走计算结果后,才允许下一个用户上机
🍬缺点:(1)用户独占全机(2)CPU等待人工操作
🍫人机矛盾:人工操作方式降低了计算机资源利用率
②脱机输入/输出方式
🍭操作:事先将装有用户程序和数据的纸带装入纸带输入机,在一台外围机的控制下,把纸带上的数据输入到磁带上,当CUP需要这些程序和数据时,再从磁带上高速得调入内存。当CPU需要输出时,可先由CPU把数据直接从内存高速地输送到磁带上,然后在另一台外围机的控制下,再将磁带上的结果通过相应的输出设备输出。
🍡脱机:由于程序和数据的输入和输出都是在外围机的控制下完成的,或者说,他们是在脱离主机的情况下进行的,故称脱机输入/输出方式,反之,直接在主机的控制下进行输入/输出方式称为联机输入/输出方式。
🍮优点:(1) 减少了CPU空闲时间(2)提高了I/O速度
2.2单批道处理系统
①处理过程
首先由监督程序将磁带上的第一个作业装入内存,并把运行控制权交给作业,当该作业处理完成时,又把控制权交给监督程序,再由监督程序把磁带的第二个作业调入内存。
②特征(1)自动性 (2)顺序性(3)单道性
2.3多批道处理系统
①基本概念
🚗 在该系统中,用户所提交的作业先存入外存中,并排成一个队列,称为后备队列。然后由作业调度程序按照一定的算法,从后备队列中选择若干个作业调入内存,使它们共享CPU系统中的各种资源。由于同时在内存中装有若干道程序,这样便可以在运行程序A的时候,利用其因I/O操作而暂停执行时的CPU空挡时间,再调度另一道程序B运行,同样可以利用程序B在I/O操作时的CPU空挡时间,再调度程序C运行,使多道程序交替运行,这样便可以保持CPU处于忙碌状态。
②优缺点
🎆资源利用率高
🧨系统吞吐量大
🎉平均周转时间最长
🎗️无交互能力
③该系统需要解决的问题
🍕处理机管理问题
🍔内存管理问题
🍟I/O设备管理问题
🌭文件管理问题
🍿作业管理问题
2.4分时系统
①该系统的产生
(1)人机交互
(2)共享主机
(3)便于用户上机
②该系统实现中的关键问题
(1)及时接收
(1)及时处理
③该系统的特征
(1)多路性:允许多个终端用户同时使用一台计算机
(2)独立性:系统中多个用户可以彼此独立的进行操作,互不干扰,单个用户感受不到其他用户的存在
(3)及时性:因为有了交互,采用时间片轮流为多个终端服务,用户请求能在很短的时间内响应
(4)交互性:用户能与系统进行人机交互
2.5实时系统
①应用需求
(1)实时控制
(2)实时信息处理
②实时任务
(1)按任务执行时是否按周期划分
🎄周期性实时任务
🎋非周期性实时任务
(2)根据对截止时间的要求来划分
🚗硬实时任务
🚓软实时任务
③实时系统与分时系统的比较
(1)多路性
(2)独立性
(3)及时性
(4)交互性
(5)可靠性
2.5微机操作系统的发展
①单用户单任务操作系统
②单用户多任务操作系统
③多用户多系统操作系统
3. 操作系统的基本特性
3.1并发性
①并发与并行
🍡并行性:两个或多个事件在同一时刻发生。
🍭并发性:两个或多个事件在同一时间间隔内发生。这些事情在宏观上是同时发生的,在微观上是交替发生的。
②引入进程
🍬进程:是指在系统中能独立运行并作为资源分配的基本单位。它是由一组机器指令、数据和堆栈组成的,是一个能独立运行的活动实体。
🎊多个进程之间可以并发执行和交换信息。
③引入线程
3.2共享性
🚗系统中的资源可以供内存中多个并发执行的进程共同使用
①互斥共享方式
😈临界资源:在一段时间内只允许一个进程访问的资源。(计算机中大多物理设备以及某些软件中的栈、变量和表格都属于临界资源)
👿互斥共享:计算机中的某个资源在一段时间内只能允许一个进程访问,别的进程没有使用权
②同时访问方式
👹计算机中的某个资源在一段时间内可以同时允许多个进程访问。
👺这里所谓的同时是宏观意义上的同时,在微观上是交替进行访问的,
💀
3.3虚拟技术
多道程序设计:(时分复用技术)是指在计算机内存中同时存放几道相互独立的程序,使它们在管理程序控制之下,相互穿插的进行,
①时分复用技术
(1)虚拟处理技术:为每道程序建立至少一个进程,让多道程序并发进行。
(2)虚拟设备技术
②空分复用技术
(1)虚拟磁盘技术
(2)虚拟存储器技术
3.4异步性
异步:多道程序环境允许多个程序并发执行,但由于资源有限,如CPU只有一个,进程的执行并不是一贯到底的,而是走走走停停,它以不可预知的速度向前推进。
4.操作系统的主要功能
4.1处理机管理功能
①进程管理
②进程同步
③进程通信
④调度
(1)作业调度
(2)进程角度
4.2存储器管理功能
①内存分配
②内存保护
③地址映射
④内存扩充
4.3设备管理功能
①缓冲管理
②设备分配
③设备处理
4.4文件管理功能
①文件存储空间的管理
② 目录管理
③文件的写/读管理和保护
(1)文件的写/读管理
(2)文件的保护
4.5操作系统与用户之间的接口
①用户接口
(1)联机用户接口
(2)脱机用户接口
(3)图形用户接口
② 程序接口
这篇博客介绍了操作系统的概念,包括它是系统软件,管理硬件和资源,提供用户接口。操作系统的目标是提高资源利用率,方便用户,具有可扩充性和开放性。作用包括资源管理、用户接口和抽象机器。文章还探讨了操作系统从无操作系统、批处理系统到实时系统和微机操作系统的发展历程。此外,讨论了操作系统的并发性、共享性、虚拟技术和异步性等基本特性,并概述了其主要功能,如处理机管理、存储器管理、设备管理和文件管理。


4177

被折叠的 条评论
为什么被折叠?



