操作系统基础知识

【一】操作系统发展史

python 复制代码
1.穿孔卡片
    优势:一个人独占电脑
  劣势:CPU利用率极低
​
2.联机批处理系统
    一次性可以录入多个用户指令、缩短了CPU等待的时间、提高了CPU的利用率
  
3.脱机批处理系统
    是现代计算机核心部件的雏形、提高CPU的利用率
​
# 总结:操作系统的发展史其实就是提升CPU利用率的过程

【二】多道技术

python 复制代码
1.通俗的说,可以将不同的任务同时进行,以来缩短时间,最终用时是其中最长的时间
2.多道技术
    1.空间上的复用
        多个任务共用一套计算机硬件
    2.时间上的复用
        切换+保存状态
            CPU在两种情况下会被剥夺
                1.程序遇到IO操作 
                2.程序长时间占用CPU 会被强行剥夺 保证其他程序不被饿死

【三】进程

python 复制代码
1.进程通俗的说就是一次程序允许的结果,进程是动态的,程序是静态的
2.进程调度算法
    1.先来先服务
    对短作业任务不太友好
    2.短作业优先
    对长作业任务不太友好
    3.时间片轮转法与多级反馈队列
    时间片轮转法:先公平的将CPU分给每个人执行
    多级反馈队列:根据作业长短的不同再合理分配CPU执行时间,优先级

【四】并发并行

python 复制代码
1.并发--》宏观上同时运行即并行,微观上串行
2.并行--》同时一起运行
# 高并发与高并行
    高并发:我们写的软件可以支持1个亿的并发量
        一个亿的用户来了之后都可以感觉到自己被服务着
  高并行:我们写的软件可以支持1个亿的并行量
        上述话语的言外之意是计算机有一亿个CPU

【五】同步与异步

python 复制代码
1.同步---》意思是前一步的结果是后一步运行的前提,所以后一步只能在等待前一步的结果,不会去做其他事情
2.异步---》意思是在等待前一步的结果时,先去做其他事情,不会原地等待,有结果就回来下一步

【六】阻塞和非阻塞

python 复制代码
1.阻塞:时间片用完,或等待某事件
2.非阻塞:就绪,运行

【七】同步异步与阻塞非阻塞结合

python 复制代码
同步异步:用来描述任务的提交方式
阻塞非阻塞:用来描述任务的执行状态
# 上述两组属于两个不同概念 但是可以结合
  同步阻塞:银行排队办理业务 期间不做任何事
  同步非阻塞:银行排队办理业务 期间喝水吃东西 但是人还在队列中
  异步阻塞:在椅子上坐着 但是不做任何事
  异步非阻塞:在椅子上坐着 期间喝水吃东西办公    (程序运行的极致)     
相关推荐
Rick19934 分钟前
Spring AI 如何进行权限控制
人工智能·python·spring
码界筑梦坊4 分钟前
302-基于Python的安卓应用市场数据可视化分析推荐系统
开发语言·python·信息可视化·毕业设计·fastapi
星辰_mya8 分钟前
OSI 七层模型之“跨国诈骗集团”深度讲解
运维·服务器·后端·面试·架构师
齐鲁大虾14 分钟前
新人编程语言选择指南
javascript·c++·python·c#
TechubNews16 分钟前
Base 发布首个独立 OP Stack 框架的网络升级 Azul,将是 L2 自主迭代的开端?
大数据·网络·人工智能·区块链·能源
Absurd58723 分钟前
Redis如何限制列表最大长度_利用LTRIM指令截断List保留最新记录
jvm·数据库·python
2401_8822737223 分钟前
SQL函数面试题解析_函数性能与设计考点
jvm·数据库·python
knight_9___26 分钟前
RAG面试题5
人工智能·python·agent·rag
a95114164227 分钟前
mysql查询分析中如何快速识别全表扫描_通过EXPLAIN中的type列检查
jvm·数据库·python
Irene199130 分钟前
使用Python进行文件读写的API或方法及其注意事项
python·文件读写