操作系统(一)计算机系统概述

操作系统(一)计算机系统概述

  • 一、操作系统的概念
  • 二、功能和目标
    • 资源的管理者
    • 向上层提供服务
    • 对硬件的扩展
  • 三、操作系统的特征
    • 并发
    • 共享
    • 虚拟
    • 异步
  • 四、操作系统的发展与分类
    • 手工操作阶段
    • 批处理阶段
      • 单道批处理系统
      • 多道批处理系统
    • 分时操作系统
    • 实时操作系统
  • 操作系统的运行机制
  • 中断和异常
    • 中断类型
    • 中断机制的基本原理
  • 系统调用
    • 分类
    • 系统调用的过程
  • 操作系统的体系结构
    • 大内核
    • 微内核

一、操作系统的概念

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

二、功能和目标

资源的管理者

功能

  • 处理机的管理
  • 存储器的管理
  • 文件管理
  • 设备管理

向上层提供服务

直接给用户使用包括GUI(图形用户界面) 和命令接口。
命令接口包括联机命令接口脱机命令接口

联机命令接口相当于windows系统使用的cmd
在这里插入图片描述

脱机命令接口就是.bat文件

在这里插入图片描述
在这里插入图片描述

向程序提供的程序接口:可以在程序中进行系统调用来使用程序接口。普通用户不能直接使用程序接口,只能通过程序代码间接使用。

在这里插入图片描述

对硬件的扩展

在这里插入图片描述

操作系统对硬件机器的拓展:将CPU、内存、磁盘、显示器、键盘等硬件合理地组织起来,让各种硬件能够相互协调配合,实现更多更复杂的功能,普通用户无需关心这些硬件在底层是怎么组织起来工作的,只需直接使用操作系统提供的接口即可。

三、操作系统的特征

并发

并发:指两个或多个事件在同一时间间隔内发生。这些事件宏观上是同时发生的,但微观上是交替发生的。
并行:指两个或多个事件在同一时刻同时发生。

共享

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

互斥共享方式:系统中的某些资源,虽然可以提供给多个进程使用,但一个时间段内只允
许一个进程访问该资源
同时共享方式:系统中的某些资源,允许一个时间段内由多个进程“同时”对它们进行访

虚拟

虚拟是指把一个物理上的实体变为若干个逻辑上的对应物。物理实体(前者)是实际存在的,而逻辑上对应物(后者)是用户感受到的。

异步

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

四、操作系统的发展与分类

手工操作阶段

用户在计算机上算题的所有工作都要人工干预

批处理阶段

单道批处理系统

在这里插入图片描述

引入脱机输入/输出技术(用外围机+磁带完成),并由监督程序负责控制作业的输入、输出
主要优点:缓解了一定程度的人机速度矛盾,资源利用率有所提升。
主要缺点:内存中仅能有一道程序运行,只有该程序运行结束之后才能调入下一道程序。CPU有大量的时间是在空闲等待I/O完成。资源利用率依然很低。

多道批处理系统

在这里插入图片描述

主要优点:多道程序并发执行,共享计算机资源。资源利用率大幅提升,CPU和其他资
源更能保持“忙碌”状态,系统吞吐量增大。
主要缺点:用户响应时间长,没有人机交互功能(用户提交自己的作业之后就只能等待
计算机处理完成,中间不能控制自己的作业执行。eg:无法调试程序/无法在程序运行过
程中输入一些参数)

分时操作系统

分时操作系统:计算机以时间片为单位轮流为各个用户/作业服务,各个用户可通过终端与计算机进行交互。
主要优点:用户请求可以被即时响应,解决了人机交互问题。允许多个用户同时使用一台计算机,并且用户对计算机的操作相互独立,感受不到别人的存在。
主要缺点:不能优先处理一些紧急任务。操作系统对各个用户/作业都是完全公平的,循环地为每个用户/作业服务一个时间片,不区分任务的紧急性。

实时操作系统

主要优点:能够优先响应一些紧急任务,某些紧急任务不需时间片排队。
在实时操作系统的控制下,计算机系统接收到外部信号后及时进行处理,并且要在严格的时限内处理完事件。实时操作系统的主要特点是及时性和可靠性

操作系统的运行机制

特权指令:如内存清零指令
非特权指令:如普通的运算指令

用户态:cpu只能执行非特权指令
核心态:特权指令、非特权指令都可执行

内核程序: 操作系统的内核程序是系统的管理者,既可以执行特权指令,也可以执行非特
权指令,运行在核心态。
应用程序: 为了保证系统能安全运行,普通应用程序只能执行非特权指令,运行在用户态
在这里插入图片描述

中断和异常

中断的作用:“中断”会使CPU由用户态变为内核态,使操作系统重新夺回对CPU
的控制权

内核态->用户态:执行一条特权指令——修改PSW的标志位为“用户态”,这个动作意味着操作系统将主动让出CPU使用权
用户态->内核态:由“中断”引发,硬件自动完成变态过程,触发中断信号意味着操作系统将强行夺回CPU的使用权

中断类型

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

中断机制的基本原理

不同的中断信号,需要用不同的中断处理程序来处理。当CPU检测到中断信号后,会根据中断信号的类型去查询“中断向量表”,以此来找到相应的中断处理程序在内存中的存放位置。
在这里插入图片描述

系统调用

操作系统作为用户和计算机硬件之间的接口,需要向上提供一些简单易用的服务。主要包括命令接口和程序接口。其中,程序接口由一组系统调用组成。

分类

  • 设备管理:完成设备的请求/释放/启动等功能
  • 文件管理:完成文件的读/写/创建/删除等功能.
  • 进程控制:完成进程的创建/撤销/阻塞/唤醒等功能
  • 进程通信:完成进程之间的消息传递/信号传递等功能.
  • 内存管理:完成内存的分配/回收等功能

系统调用的过程

在这里插入图片描述

  1. 陷入指令是在用户态执行的,执行陷入指令之后立即引发一个内中断,使CPU进入核心态
  2. 发出系统调用请求是在用户态,而对系统调用的相应处理在核心态下进行

操作系统的体系结构

大内核

在这里插入图片描述

将操作系统的主要功能模块都作为系统内核,运行在核心态
优点:高性能
缺点:内核代码庞大,结构混乱,难以维护

微内核

在这里插入图片描述

只把最基本的功能保留在内核
优点:内核功能少,结构清晰,方便维护
缺点:需要频繁地在核心态和用户态之间切换,性能低

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/384312.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

操作系统(二)进程管理

ui 操作系统(二)进程管理一、进程程序和进程进程控制块(PCB)进程的组成进程的特征进程的状态与转换进程状态的转换进程的组织链接方式索引方式进程的控制进程的创建进程的终止进程阻塞进程唤醒进程切换进程通信共享存储消息传递管…

gethostbyname()函数说明

转载&#xff1a;http://www.cnblogs.com/cxz2009/archive/2010/11/19/1881611.html gethostbyname()函数说明——用域名或主机名获取IP地址 包含头文件 #include <netdb.h> #include <sys/socket.h> 函数原型 struct hostent *gethostbyna…

操作系统(三)内存管理

操作系统&#xff08;三&#xff09;内存管理一、程序执行过程装入的三种方式链接的三种方式二、内存管理的概念内存空间的分配与回收连续分配管理方式单一连续分配固定分区分配动态分区分配首次适应算法最佳适应算法最坏适应算法邻近适应算法非连续分配管理方式基本分页存储管…

操作系统(四)文件管理

操作系统&#xff08;四&#xff09;文件管理一、文件系统基础1.文件逻辑结构无结构文件有结构文件2.文件目录文件控制块&#xff08;FCB&#xff09;目录结构单级目录两级目录结构多级目录结构无环图目录结构3.文件保护口令保护加密保护访问控制4.文件共享硬链接软链接5.文件系…

如何在Ubuntu上安装GCC编译器

如何在Ubuntu上安装GCC编译器1.首先更新包列表sudo apt update2.安装build-essential软件包&#xff1a; sudo apt install build-essential3.验证GCC编译器是否已成功安装&#xff0c;请使用gcc --version命令打印GCC版本 rootubuntu:/home/csd# gcc --version

操作系统(五)输入/输出(I/O)管理

操作系统&#xff08;五&#xff09;输入/输出&#xff08;I/O&#xff09;管理一、I/O控制器二、I/O控制方式程序直接控制方式中断驱动方式DMA方式通道控制方式I/O软件层次结构假脱机技术设备的分配与回收缓冲区单缓冲双缓冲循环缓冲区缓冲池一、I/O控制器 I/O设备由机械部件…

Linux下的I/O多路复用select,poll,epoll浅析

转载&#xff1a;http://blog.csdn.net/u011573853/article/details/52105365 一&#xff0c;什么是I/O多路复用 所谓的I/O多路复用在英文中其实叫 I/O multiplexing. 就是单个线程&#xff0c;通过记录跟踪每个I/O流(sock)的状态&#xff0c;来同时管理多个I/O流 。) I/O mu…

计算机组成原理(一)计算机系统概述

计算机组成原理&#xff08;一&#xff09;计算机系统概述一、计算机系统层次结构冯诺伊曼机计算机工作过程多级层次结构一、计算机系统层次结构 冯诺伊曼机 特点&#xff1a; 计算机由五大部件组成指令和数据以同等地位存于存储 器&#xff0c;可按地址寻访指令和数据用二进…

计算机组成原理(二)数据的表示和运算

计算机组成原理&#xff08;二&#xff09;数据的表示和运算一、BCD码二、奇偶校验码三、海明码四、循环冗余校验码&#xff08;CRC&#xff09;五、乘法运算原码乘法补码乘法六、除法运算原码除法补码除法七、浮点数的表示与运算浮点数的运算一、BCD码 组合式BCD码&#xff1…

Linux IO复用区别与epoll详解

转载&#xff1a;http://blog.csdn.net/hacker00011000/article/details/52160590 一、select、poll、epoll之间的区别总结[整理]   select&#xff0c;poll&#xff0c;epoll都是IO多路复用的机制。I/O多路复用就通过一种机制&#xff0c;可以监视多个描述符&#xff0c;一…

简单图和多重图

一、简单图    ① 不存在重复边&#xff1b;    ② 不存在顶点到自身的边&#xff1b; 二、多重图   ① 某两结点之间边数多于一条&#xff1b;   ② 允许顶点通过一条边和自己关联&#xff1b;

C++笔记:select多路复用机制

转载&#xff1a;http://blog.csdn.net/qdx411324962/article/details/42499535 函数作用&#xff1a; 系统提供select函数来实现多路复用输入/输出模型。select系统调用是用来让我们的程序监视多个文件句柄的状态变化的。程序会停在select这里等待&#xff0c;直到被监视的文件…

交叉编译执行应用程序出现:No such file or directory

问题分析 当我在arm板子上执行交叉编译过的程序的时候发现了这个错误。通过百度查询基本都是缺少32位库什么的,但是都不能解决问题。 然后我用ll指令&#xff0c;也排除了权限的原因。 我们用ldd指令发现&#xff0c;它不是动态执行的&#xff0c;虽然我们可以使用-static指…

select、poll、epoll 比较

转载&#xff1a;http://blog.csdn.net/dodo_328/article/details/39081183 1.Selet&#xff1a;本质上是通过设置或者检查存放fd标志位的数据结构来进行下一步处理。 缺点&#xff1a;1 单个进程可监视的fd数量被限制&#xff0c;因为受描述符集合fd_set限制&#xff0c;fd数量…

C库函数 File

C库函数常用的有&#xff1a;fopen, fclose, fread, fwrite, fgets, fputs, fscanf, fprintf, fseek, fgetc, fputc, ftell, feof, flush等&#xff0c; 当使用fopen打开一个文件时通常返回一个文件指针 FILE *fp。FILE类型是一个结构体&#xff0c;包含文件描述符&#xff08;…

Unix 网络编程(四)- 典型TCP客服服务器程序开发实例及基本套接字API介绍

转载&#xff1a;http://blog.csdn.net/michael_kong_nju/article/details/43457393 写在开头&#xff1a; 在上一节中我们学习了一些基础的用来支持网络编程的API&#xff0c;包括“套接字的地址结构”、“字节排序函数”等。这些API几乎是所有的网络编程中都会使用的一些&…

C库函数与系统函数的关系

转载于:https://www.cnblogs.com/lr1402585172/p/10464933.html

Unix网络编程(六)高级I/O技术之复用技术 select

转载&#xff1a;http://blog.csdn.net/michael_kong_nju/article/details/44887411 I/O复用技术 本文将讨论网络编程中的高级I/O复用技术&#xff0c;将从下面几个方面进行展开&#xff1a; a. 什么是复用技术呢&#xff1f; b. 什么情况下需要使用复用技术呢&#xff1f; c. …

Ubuntu在vmware虚拟机无法上网的解决方法

http://blog.csdn.net/xueyushenzhou/article/details/50460183 在vmware中安装Ubuntu之后&#xff0c;我们希望基本的功能如上网、传输文件等功能都是可用的&#xff0c;但是经常遇到不能上网的情况。使用笔记本时&#xff0c;我们经常希望能通过无线网卡上网&#xff0c;但是…

IO 多路复用之poll总结

http://www.cnblogs.com/Anker/p/3261006.html IO多路复用之poll总结 1、基本知识 poll的机制与select类似&#xff0c;与select在本质上没有多大差别&#xff0c;管理多个描述符也是进行轮询&#xff0c;根据描述符的状态进行处理&#xff0c;但是poll没有最大文件描述符数量的…