码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 操作系统基本概念


    目录

    一、基本概述

    二、操作系统的特点

    (一)并发性(实质是微观的串行、宏观的并行)

    1. 对比看:并行性

    2. 单核CPU和多核CPU

    (二)共享性

    (三)虚拟性

    (四)异步性

    三、操作系统的功能

    (一)用户与硬件的接口

    1. 命令方式

    2. 系统调用方式

    3. 图形、窗口方式

    (二)资源管理者

    1. 处理机管理

    2. 存储器管理

    3. I/O设备管理

    4. 文件管理

    (三)扩充机器

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

    (一)手工操作(无操作系统)

    (二)批处理系统(操作系统开始出现)

    1. 单道批处理系统(没有并发性)

    2. 多道批处理系统(有并发性)

    多到批处理系统需要解决的问题

    (三)分时系统

    (四)实时系统

    (五)微机操作系统

    五、内核态和用户态的切换

    六、练习题


    一、基本概述

    • 操作系统是配置在计算机硬件上的第一层软件

    二、操作系统的特点

    (一)并发性(实质是微观的串行、宏观的并行)

    • 并发性是指两个或多个事件在同一时间间隔内发生

    1. 对比看:并行性

    • 是指两个或多个时间在同一时刻发生

    2. 单核CPU和多核CPU

    • 单核CPU同一时刻只能执行一个程序,各个程序只能并发地执行
    • 多核CPU同一时刻可以同时执行多个程序,多个程序可以并行地执行

    (二)共享性

    • 是指系统中的资源可供内存中多个并发执行的是进程(线程)共同使用
    • 互斥共享方式和同时共享方式

     

    (三)虚拟性

    • 通过某种技术把一个物理实体变为若干个逻辑上的对应物
    1. 时分复用技术(虚拟处理机技术、虚拟设备技术)
    2. 空分复用技术(虚拟磁盘技术、虚拟存储器技术)

    (四)异步性

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

    三、操作系统的功能

    (一)用户与硬件的接口

    1. 命令方式

    用户通过输入有关命令来取得操作系统的服务,并控制用户程序的运行

    • 联机命令(交互式命令)和脱机命令(批处理命令)

    2. 系统调用方式

    OS提供了一组系统调用(函数),用户可在自己的应用程序中通过相应的系统调用,来实现与操作系统的通信,并取得它的服务

    3. 图形、窗口方式

     它允许用户通过屏幕上的窗口和图标来实现与操作系统的通信并取得它的服务

     

    (二)资源管理者

    1. 处理机管理

    • 用于分配和控制处理机

    2. 存储器管理

    • 主要负责内存的分配与回收

    3. I/O设备管理

    • 负责I/O设备的分配与操纵

    4. 文件管理

    • 负责文件的存取、共享和保护

    (三)扩充机器

    • 通常把覆盖了软件的机器称为扩充机器,又称为虚拟机

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

    (一)手工操作(无操作系统)

    • 缺点:用户独占全机会;CPU等待人工操作

    (二)批处理系统(操作系统开始出现)

    1. 单道批处理系统(没有并发性)

    特点:自动性、顺序性、单道性

    优点:I/O操作时,CPU无事可做

    2. 多道批处理系统(有并发性)

    特点:多道性、宏观上多任务并行、微观上多任务分片串行

    优点:由于提高了CPU、内存和I/O设备的利用率,因此系统吞吐率得到提高

    缺点:用户响应时间长,没有交互性

    多到批处理系统需要解决的问题

    • 处理机管理问题(CPU并发的执行多道任务,先执行谁?)
    • 内存管理问题(每个任务需要的内存空间不同,空间大小分配的问题)
    • I/O设备管理问题(给哪个任务分配哪个I/O设备?)
    • 文件管理问题
    • 作用管理问题

    (三)分时系统

    特点:

    • 多路性(可以按照时间线分给不同的用户)
    • 独立性(宏观上可以让用户感觉这个操作系统是为自己独立存在)
    • 及时性(操作系统根据用户的命令作出反馈,反馈要有一定的时效性)
    • 交互性

    缺点:

    • 不能优先处理一些紧急任务。操作系统对各个用户/作业都是完全公平的,循环地为每个用户/作业服务一个时间片,不区分任务的紧急性。

    (四)实时系统

    • 特点:多路性、独立性、及时性、交互性和可靠性
    • 主要优点:能够优先响应一些紧急任务,某些紧急任务不需时间片排队。

    (五)微机操作系统

    • 单用户单任务系统、单用户多任务系统和多用户多任务系统

    五、内核态和用户态的切换

    • 补充:CPU中有一个寄存器叫程序状态字寄存器(PSW),其中有个二进制位,1表示内核态,0表示用户态
    • CPU处于内核态:说明此时正在运行内核程序,此时可以执行特权指令
    • CPU处于用户态:说明此时正在运行应用程序,此时只能执行非特权指令
    • 内核态转到用户态:执行一条特权指令----------修改PSW的标志位为“用户态”,这个动作意味着操作系统将主动让出CPU的使用权
    • 用户态转到内核态:由“中断”引发,硬件自动完成变态过程,触发中断信号意味着操作系统将强行夺回CPU的使用权

     

    六、练习题

    1、在单核处理系统中,可并行的是处理器与设备、处理器与通道、设备与设备

    2、操作系统提供给应用程序的接口是系统调用

  • 相关阅读:
    豫见大势,豫见智慧——第九届博博会侧记
    asynq队列如何配置队列优先级
    【Python】Python图形化界面库PySimpleGUI的简单使用
    ubuntu tools
    ApplicationContext和ServletContext
    ROS2 机器人操作系统入门和安装以及如何使用 .NET 进行开发
    北汇信息继续扩大V2X测试服务,扎根重庆,服务全国
    Android的handler消息收发处理——子线程与主线程(UI线程)间的通信
    你要的AI Agent工具都在这里
    Eureka Series : LoRa 2.4GHz Analysis
  • 原文地址:https://blog.csdn.net/m0_63783532/article/details/132817576
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号