操作系统基础知识

【一】操作系统发展史

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 复制代码
同步异步:用来描述任务的提交方式
阻塞非阻塞:用来描述任务的执行状态
# 上述两组属于两个不同概念 但是可以结合
  同步阻塞:银行排队办理业务 期间不做任何事
  同步非阻塞:银行排队办理业务 期间喝水吃东西 但是人还在队列中
  异步阻塞:在椅子上坐着 但是不做任何事
  异步非阻塞:在椅子上坐着 期间喝水吃东西办公    (程序运行的极致)     
相关推荐
weixin_44040169几秒前
Python数据分析-合并清洗与转换(concat+lambda函数+apply+删除drop/替换数据replace)
开发语言·python·数据分析
Dxy12393102162 分钟前
Python如果遇见乱码可以通过二进制判断是什么编码吗?
开发语言·python
敲代码的哈吉蜂2 分钟前
服务端I/O流程、I/O模型、网络I/O模型
linux·服务器·nginx
隔壁大炮7 分钟前
07. PyTorch框架简介
人工智能·pytorch·python
TTBIGDATA9 分钟前
【Atlas】Atlas 搜索时报 `__AtlasUserProfile` 不存在导致事务回滚
开发语言·python·ambari·kerberos·ranger·atlas·bigtop
晚风予卿云月9 分钟前
【Linux】初步理解进程
linux·运维·服务器
apcipot_rain10 分钟前
python与人工智能代码基础
人工智能·python·机器学习
海天一色y20 分钟前
用Python和Pygame从零打造植物大战僵尸:完整技术解析
开发语言·python·pygame
嫂子的姐夫20 分钟前
029-rs5:欧治
爬虫·python·逆向
两万五千个小时27 分钟前
构建mini Claude Code:03 - TodoWrite:让模型按计划执行
人工智能·python