首页 > 系统相关 >并发与进程

并发与进程

时间:2022-11-17 19:22:21浏览次数:37  
标签:计算机 多个 程序 并发 进程 CPU 运行

并发编程理论

研究网络编程其实就是在研究计算机的底层原理及发展史
操作系统发展史
	1.穿孔卡片阶段
  	计算机很庞大 使用很麻烦 一次只能给一个人使用 期间很多时候计算机都不工作
    	好处:程序员独占计算机 为所欲为
  		坏处:计算机利用率太低 浪费资源
  2.联机批处理系统
  	提前使用磁带一次性录入多个程序员编写的程序 然后交给计算机执行
    	CPU工作效率有所提升 不用反复等待程序录入
	3.脱机批处理系统
  	极大地提升了CPU的利用率
	总结:CPU提升利用率的过程

多道技术

# 在学习并发编程的过程中 不做刻意提醒的情况下 默认一台计算机就一个CPU(只有一个干活的人)
单道技术
	所有的程序排队执行 过程中不能重合
多道技术
	利用空闲时间提前准备其他数据 最大化提升CPU利用率
  
多道技术详细
	1.切换
  	计算机的CPU在两种情况下会切换(不让你用 给别人用)
    	1.程序由IO操作
      	输入\输出操作
        	input、time.sleep、read、write
  		2.程序长时间占用CPU	
      	我们得雨露均沾 让多个程序都能被CPU运行一下 

  2.保存状态
  	CPU每次切换走之前都需要保存当前操作的状态 下次切换回来基于上次的进度继续执行

进程理论

进程与程序的区别
	程序:一堆死代码(还没有被运行起来)
	进程:正在运行的程序(被运行起来了)
 
进程的调度算法(重要)
	1.FCFS(先来先服务)
  	对短作业不友好
	2.短作业优先调度
  	对长作业不友好
	3.时间片轮转法+多级反馈队列(目前还在用)
  	将时间均分 然后根据进程时间长短再分多个等级
    等级越靠下表示耗时越长 每次分到的时间越多 但是优先级越低

进程的并行与并发

并行
	多个进程同时执行 必须要有多个CPU参与 单个CPU无法实现并行
    可以简单的理解为并行需要多个CPU同时运行
并发
	多个进程看上去像同时执行 单个CPU可以实现 多个CPU也可以
    可以支持多个人同时访问,只要CPU够强就可以一个CPU运行,当然多个CPU一起来也可以
    

进程的三状态

就绪态
	所有的进程在被CPU执行之前都必须先进入就绪态等待
运行态
	CPU正在执行
阻塞态
	进程运行过程中出现了IO操作 阻塞态无法直接进入运行态 需要先进入就绪态

并发编程理论

研究网络编程其实就是在研究计算机的底层原理及发展史
操作系统发展史
	1.穿孔卡片阶段
  	计算机很庞大 使用很麻烦 一次只能给一个人使用 期间很多时候计算机都不工作
    	好处:程序员独占计算机 为所欲为
  		坏处:计算机利用率太低 浪费资源
  2.联机批处理系统
  	提前使用磁带一次性录入多个程序员编写的程序 然后交给计算机执行
    	CPU工作效率有所提升 不用反复等待程序录入
	3.脱机批处理系统
  	极大地提升了CPU的利用率
	总结:CPU提升利用率的过程

多道技术

# 在学习并发编程的过程中 不做刻意提醒的情况下 默认一台计算机就一个CPU(只有一个干活的人)
单道技术
	所有的程序排队执行 过程中不能重合
多道技术
	利用空闲时间提前准备其他数据 最大化提升CPU利用率
  
多道技术详细
	1.切换
  	计算机的CPU在两种情况下会切换(不让你用 给别人用)
    	1.程序由IO操作
      	输入\输出操作
        	input、time.sleep、read、write
  		2.程序长时间占用CPU	
      	我们得雨露均沾 让多个程序都能被CPU运行一下 

  2.保存状态
  	CPU每次切换走之前都需要保存当前操作的状态 下次切换回来基于上次的进度继续执行

进程理论

进程与程序的区别
	程序:一堆死代码(还没有被运行起来)
	进程:正在运行的程序(被运行起来了)
 
进程的调度算法(重要)
	1.FCFS(先来先服务)
  	对短作业不友好
	2.短作业优先调度
  	对长作业不友好
	3.时间片轮转法+多级反馈队列(目前还在用)
  	将时间均分 然后根据进程时间长短再分多个等级
    等级越靠下表示耗时越长 每次分到的时间越多 但是优先级越低

进程的并行与并发

并行
	多个进程同时执行 必须要有多个CPU参与 单个CPU无法实现并行
    可以简单的理解为并行需要多个CPU同时运行
并发
	多个进程看上去像同时执行 单个CPU可以实现 多个CPU也可以
    可以支持多个人同时访问,只要CPU够强就可以一个CPU运行,当然多个CPU一起来也可以
    

进程的三状态

就绪态
	所有的进程在被CPU执行之前都必须先进入就绪态等待
运行态
	CPU正在执行
阻塞态
	进程运行过程中出现了IO操作 阻塞态无法直接进入运行态 需要先进入就绪态

image

标签:计算机,多个,程序,并发,进程,CPU,运行
From: https://www.cnblogs.com/zyg111/p/16900515.html

相关文章

  • 网络并发3
    今日内容详细粘包现象1.服务端连续执行三次recv2.客户端连续执行三次send问题:服务端一次性接收到了客户端三次的消息该现象称为'粘包现象'粘包现象产生的原因 1.......
  • 黏包 struct模块 进程理论进程的并行与并发
    今日内容黏包现象1.服务端连续三次执行recv2.客户端连续三次执行send问题:服务端一次性接收到了客户端三次消息该现象称为"黏包现象"黏包现象产生的原因 1.不知道......
  • 并发编程
    目录黏包现象struct模块struct.pack()struct.unpack()文件过大无法打包黏包问题解决黏包实战UDP协议(了解)操作系统发展史穿孔卡片阶段联机批处理系统脱机批处理系统并发......
  • 并发控制
    并发控制并发造型带来的数据不一致性丢失修改(lostupdate)两个事务T1和T2T2读入同一数据并修改,T2提交的结果破坏了T1提交的结果,导致T1的修改丢失不可重复读(n......
  • 粘包现象、进程
    粘包现象1.什么是沾包?TCP粘包是指发送方发送的若干包数据到接收方接收时粘成一包,从接收缓冲区看,后一包数据的头紧接着前一包数据的尾。2.为什么出现沾包现象?(1)发送......
  • 网络编程与并发编程
    今日内容概要黏包现象解决黏包逻辑思路代码实操UDP基本代码使用并发编程理论之操作系统发展史多道技术进程理论及调度算法今日内容详细黏包现象1.服务端连......
  • 黏包现象 并发编程
    目录黏包现象struct模块struct.pack()struct.unpack()文件过大无法打包黏包问题解决黏包实战UDP协议(了解)操作系统发展史穿孔卡片阶段联机批处理系统脱机批处理系统并发......
  • 黏包、udp协议、多道技术、进程并行与并发
    目录黏包现象struct模块黏包代码实战UDP协议(了解)并发编程理论多道技术进程理论进程的并行与并发进程的三状态黏包现象1.服务端连续执行三次recv2.客户端连续执行三次sen......
  • 并发编程
    并发编程理论"""计算机中真正干活的是CPU"""操作系统发展史: 1.穿孔卡片阶段计算机很庞大,使用很麻烦,一次只能给一个人使用,期间很多时候计算机都不工作 好处:程序......
  • nginx高并发优化之缓存配置
    一、配置http{proxy_cache_path/app/cache/levels=1:2keys_zone=proxy_cache:10mmax_size=10ginactive=60muse_temp_path=off;upstreambackend{server127......