热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

操作系统的基本概念|操作系统

文章目录操作系统的概念一、操作系统的功能和目标1.作为系统资源的管理者2.作为用户和计算机硬件之间的接口3.作为最接近硬件的层次二、操作系统的特征1.并发2.共享3.虚拟4.异步三

文章目录

    • 操作系统的概念
    • 一、操作系统的功能和目标
      • 1.作为系统资源的管理者
      • 2.作为用户和计算机硬件之间的接口
      • 3.作为最接近硬件的层次
    • 二、操作系统的特征
      • 1.并发
      • 2.共享
      • 3.虚拟
      • 4.异步
    • 三、操作系统的发展和分类
      • 1.手工操作阶段
      • 2.单道批处理阶段
      • 3.多道批处理阶段
      • 4.分时操作系统
      • 5.实时操作系统
      • 6.网络操作系统
      • 7.分布式操作系统
      • 8.个人计算机操作体系
    • 四、运行机制
      • 指令
      • 处理器状态
      • 两种程序
    • 五、操作系统内核
    • 六、中断和异常
    • 六、系统调用
      • 系统调用和库函数的区别
      • 系统调用背后的过程


操作系统的概念

1)操作系统是控制和管理整个计算机系统的硬件和软件资源,并合理的组织调度计算机工作和资源分配,以2)提供给用户和其他软件方便的接口环境,他是计算机系统中最基本的3)系统软件。
(三个需要注意的点)

一、操作系统的功能和目标


1.作为系统资源的管理者

在这里插入图片描述

2.作为用户和计算机硬件之间的接口

在这里插入图片描述

3.作为最接近硬件的层次

在这里插入图片描述
功能和目标:实现对硬件机器的扩展
没有任何软件支持的计算机称为裸机,在裸机上安装操作系统,可以提供资源管理功能和方便用户的服务功能。
通常把覆盖了软件的机器称为扩充机器,或虚拟机。

二、操作系统的特征

在这里插入图片描述

1.并发

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

2.共享

共享即资源共享,指系统中的资源可以供内存中的多个并发进程同时使用
在这里插入图片描述
所谓“同时”往往是宏观的,微观上,可能交替地对资源进行访问。

3.虚拟

虚拟是指把一个物理实体变为若干逻辑上的对应物。物理(实体)是实际存在的,而逻辑上对应物是用户感受到的。
在这里插入图片描述

4.异步

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

三、操作系统的发展和分类


1.手工操作阶段

在这里插入图片描述

2.单道批处理阶段

在这里插入图片描述
引入了脱机输入/输出技术(用磁带完成),并监督程序负责作业的输入和输出

3.多道批处理阶段

在这里插入图片描述
用户每次往内存中输入多道程序
操作系统正式诞生,并且引入了中断技术,由操作系统负责管理这些程序的运行

4.分时操作系统

在这里插入图片描述
计算机以时间片为单位轮流为各个用户/作业服务

5.实时操作系统

在这里插入图片描述

6.网络操作系统


7.分布式操作系统


8.个人计算机操作体系


四、运行机制

在这里插入图片描述

指令

指令:处理机(CPU)能识别、执行的最基本命令
在这里插入图片描述

处理器状态

在这里插入图片描述

两种程序

在这里插入图片描述

五、操作系统内核

在这里插入图片描述

六、中断和异常

在这里插入图片描述
内中断另一个分类
在这里插入图片描述
发生中断就意味着需要操作系统介入,开展管理工作。
由于操作系统的管理工作(如进程切换、分配I/O设备等)需要特权指令,因此CPU需要从用户态转为和核心态,中断可以使CPU从用户态切换为核心态,使操作系统获得计算机的控制权。
有了中断,才能实现多道程序的并发执行。

用户态—>核心态是通过中断来实现,并且中断是唯一的途径
核心态->用户态的切换是通过执行一个特权指令,将程序状态字(PSW)的标志位设置为“用户态”

六、系统调用

操作系统提供“系统调用”功能,用户进程想要使用打印机这种共享资源时,只能通过系统调用向操作系统发出请求,操作系统会对各个请求进行协调管理。

应用程序通过系统调用请求操作系统的服务、系统中的各种共享资源都由操作系统同一掌管。因此在用户程序中,凡是与资源有关的操作(内存分配、I/O操作、文件管理等),都必须通过系统调用的方式向操作系统提出服务请求,由操作系统代为完成,这样可以保证系统的稳定性和安全性。

系统调用相关处理涉及到对资源系统的管理、对进程的控制,这些功能需要执行一些特权指令才能完成。因此系统调用相关处理需要在核心态完成

系统调用和库函数的区别


普通应用程序可以直接进行系统调用,也可以使用库函数。有的库函数涉及系统调用(“创建一个新文件”),有的不涉及(“数学函数MAX”)。
编程语言向上提供库函数,有时会将系统调用封装成库函数,以隐藏系统调用的一些细节,使上层进行系统调用更方便
操作系统向上提供系统调用,隐藏物理细节

系统调用背后的过程


  1. 系统传递调用参数
  2. 执行陷入指令(用户态)
  3. 执行系统调用的相应服务程序(核心态)
  4. 返回应用程序

注意

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

推荐阅读
  • Java和JavaScript是什么关系?java跟javaScript都是编程语言,只是java跟javaScript没有什么太大关系,一个是脚本语言(前端语言),一个是面向对象 ... [详细]
  • 一、Hadoop来历Hadoop的思想来源于Google在做搜索引擎的时候出现一个很大的问题就是这么多网页我如何才能以最快的速度来搜索到,由于这个问题Google发明 ... [详细]
  • 本文介绍了如何使用php限制数据库插入的条数并显示每次插入数据库之间的数据数目,以及避免重复提交的方法。同时还介绍了如何限制某一个数据库用户的并发连接数,以及设置数据库的连接数和连接超时时间的方法。最后提供了一些关于浏览器在线用户数和数据库连接数量比例的参考值。 ... [详细]
  • t-io 2.0.0发布-法网天眼第一版的回顾和更新说明
    本文回顾了t-io 1.x版本的工程结构和性能数据,并介绍了t-io在码云上的成绩和用户反馈。同时,还提到了@openSeLi同学发布的t-io 30W长连接并发压力测试报告。最后,详细介绍了t-io 2.0.0版本的更新内容,包括更简洁的使用方式和内置的httpsession功能。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 基于事件驱动的并发编程及其消息通信机制的同步与异步、阻塞与非阻塞、IO模型的分类
    本文介绍了基于事件驱动的并发编程中的消息通信机制,包括同步和异步的概念及其区别,阻塞和非阻塞的状态,以及IO模型的分类。同步阻塞IO、同步非阻塞IO、异步阻塞IO和异步非阻塞IO等不同的IO模型被详细解释。这些概念和模型对于理解并发编程中的消息通信和IO操作具有重要意义。 ... [详细]
  • Tomcat/Jetty为何选择扩展线程池而不是使用JDK原生线程池?
    本文探讨了Tomcat和Jetty选择扩展线程池而不是使用JDK原生线程池的原因。通过比较IO密集型任务和CPU密集型任务的特点,解释了为何Tomcat和Jetty需要扩展线程池来提高并发度和任务处理速度。同时,介绍了JDK原生线程池的工作流程。 ... [详细]
  • Oracle优化新常态的五大禁止及其性能隐患
    本文介绍了Oracle优化新常态中的五大禁止措施,包括禁止外键、禁止视图、禁止触发器、禁止存储过程和禁止JOB,并分析了这些禁止措施可能带来的性能隐患。文章还讨论了这些禁止措施在C/S架构和B/S架构中的不同应用情况,并提出了解决方案。 ... [详细]
  • 本文介绍了操作系统的定义和功能,包括操作系统的本质、用户界面以及系统调用的分类。同时还介绍了进程和线程的区别,包括进程和线程的定义和作用。 ... [详细]
  • 篇首语:本文由编程笔记#小编为大家整理,主要介绍了软件测试知识点之数据库压力测试方法小结相关的知识,希望对你有一定的参考价值。 ... [详细]
  • MySQL数据库锁机制及其应用(数据库锁的概念)
    本文介绍了MySQL数据库锁机制及其应用。数据库锁是计算机协调多个进程或线程并发访问某一资源的机制,在数据库中,数据是一种供许多用户共享的资源,如何保证数据并发访问的一致性和有效性是数据库必须解决的问题。MySQL的锁机制相对简单,不同的存储引擎支持不同的锁机制,主要包括表级锁、行级锁和页面锁。本文详细介绍了MySQL表级锁的锁模式和特点,以及行级锁和页面锁的特点和应用场景。同时还讨论了锁冲突对数据库并发访问性能的影响。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • RouterOS 5.16软路由安装图解教程
    本文介绍了如何安装RouterOS 5.16软路由系统,包括系统要求、安装步骤和登录方式。同时提供了详细的图解教程,方便读者进行操作。 ... [详细]
  • 在2022年,随着信息化时代的发展,手机市场上出现了越来越多的机型选择。如何挑选一部适合自己的手机成为了许多人的困扰。本文提供了一些配置及性价比较高的手机推荐,并总结了选择手机时需要考虑的因素,如性能、屏幕素质、拍照水平、充电续航、颜值质感等。不同人的需求不同,因此在预算范围内找到适合自己的手机才是最重要的。通过本文的指南和技巧,希望能够帮助读者节省选购手机的时间。 ... [详细]
  • Centos下安装memcached+memcached教程
    本文介绍了在Centos下安装memcached和使用memcached的教程,详细解释了memcached的工作原理,包括缓存数据和对象、减少数据库读取次数、提高网站速度等。同时,还对memcached的快速和高效率进行了解释,与传统的文件型数据库相比,memcached作为一个内存型数据库,具有更高的读取速度。 ... [详细]
author-avatar
墨鱼轩869
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有