首页 > 编程语言 >并发编程

并发编程

时间:2022-11-17 21:01:09浏览次数:37  
标签:耗时 编程 程序 阻塞 并发 进程 cpu

并发编程理论

# 操作系统发展史

1.穿孔卡片
    cpu利用率非常低,好处是程序员能为所欲为
2.联机批处理系统
    缩短录入数据的时间,使cpu工作时间变长,提高cpu利用率
3.脱机批处理系统
    再次提高cpu的利用率,是现代计算机的雏形
  
  操作系统的发展史也可以看成是cpu利用率提升的发展史

多道技术

# 多道技术的前提是在单核cpu的基础上的
    单道技术             所有程序按序排队,耗时久,效率低
    多道技术             计算机空闲时提前准备好一些数据,提高效率,耗时变短
              通俗来说多道技术就是在做一件事的时候,在空余时间做其他事
# 切换+保存状态 # 1.切换 CPU在两种下会切换(去执行其他程序) 1.程序自身进入IO操作 IO操作:输入输出操作 获取用户输入 time.sleep() 读取文件 保存文件 2.程序长时间占用CPU # 2.保存状态 每次切换之前要记录当前的执行状态,之后切回后基于当前状态执行(如app的界面一般)

进程理论

# 1.进程的理解: 
     正在被运行的程序
# 2.进程的调度算法
    -1.先来先服务算法
        针对耗时短的程序不友好
    -2.短作业优先调度
        针对耗时久的程序不友好
    -3.时间片轮转法+多级反馈队列
        将都固定的个时间分为多份,每个程序分到一份
           分配多次后还有程序运行就分到下一层
              越往下表示程序总耗时越长,每次分到的时间片就越多,优先度变低
                  如果新来一个程序就会先运行新来的程序

进程的并行与并发

# 1.并行:  多个进程同时执行
          无法通过单个cpu实现,需要多个cpu
# 2.并发:  多个进程看上去像被同时执行
          可以通过单个cpu实现(就是时间片轮转法+多级反馈队列)
       
 """并行也属于并发"""
# 描述一个网站厉害通常说的是并发量(高并发),使用高并行描述不太合理

进程的三种状态

1.所有的进程要想被运行 必须先经过就绪态
2.运行过程中如果出现了IO操作 则进入阻塞态
3.运行过程中如果时间片用完 则继续进入就绪态
4.阻塞态要想进入运行态必须先经过就绪态

# 阻塞    : 阻塞态
# 非阻塞 : 就绪态,运行态

 

标签:耗时,编程,程序,阻塞,并发,进程,cpu
From: https://www.cnblogs.com/juzijunjun/p/16900921.html

相关文章

  • 网络编程之并发编程
    并发编程理论操作系统发展史 1.穿孔卡片阶段 计算机很庞大使用很麻烦一次只能给一个人使用期间很多时候计算机都不工作 好处:程序员独占计算机为所欲为 ......
  • 进入python的世界_day33_网络编程—— 黏包现象、UDP协议、并发编程理论
    一、黏包现象1.何为黏包​ 流逝协议:所有的数据类似于水流连接在一起的​ 数据量很小并且时间间隔很多那么就会自动组织到一起recv​ 我们不知道即将要接收的......
  • 粘包、struct模块、进程并行与并发
    目录粘包现象struct模块粘包代码实战udp协议(了解)并发编程理论多道技术进程理论进程并行与并发进程的三状态粘包现象1.服务端连续执行三次recv2.客户端连续执行三次sen......
  • 黏包现象、struct模块和解决黏包问题的流程、UDP协议、并发编程理论、多道程序设计技
    目录黏包现象二、struct模块及解决黏包问题的流程三、粘包代码实战UDP协议(了解)并发编程理论多道技术进程理论进程的并行与并发进程的三状态黏包现象什么是粘包1.服务......
  • 计算机网络——并发编程理论、多道技术、进程理论、进程的并行与并、进程的三状态
    计算机网络——并发编程理论、多道技术、进程理论、进程的并行与并、进程的三状态一、并发编程理论"""计算机中真正干活的是CPU"""操作系统发展史 1.穿孔卡片阶段......
  • 并发编程理论
    网络编程研究网络编程其实就是在研究计算机的底层原理计算机中CPU才是真正干活的人并发编程理论发展史:1.穿孔卡片一次只能给一个人使用电脑cpu利用率极低......
  • 网络编程 黏包现象
    黏包问题1.服务端连续执行三次recv2.客户端连续执行三次send"""服务端一次性接收到了客户端三次的消息该现象称为黏包现象"""服务端:importsocketserver=sock......
  • 并发编程
    并发编程粘包现象1.粘包现象产生的本质sock.send(b'jason')data=client.recv(1024)print(data)对方只给了5个字符,但是后面我们返回是要返回1024个粘包现象的产......
  • 网络编程之黏包与struct模块、并发编程
    黏包现象1.服务端连续执行三次recv2.客户端连续执行三次send问题:服务端一次性接收到了客户端三次的消息,这种现象称为'黏包现象'黏包现象产生的原因1.不知道每次的数......
  • 并发编程理论
    操作系统发展史1.穿孔卡片阶段计算机很庞大,使用很麻烦,一次只能给一个人使用,期间很多时候计算机都不工作好处:程序员独占计算机,为所欲为 坏处:计算机利用率太低,浪费......