操作系统发展始与进程

进程基础知识

# 程序是什么?
# 程序就是一堆文件.
# 进程是什么?
# 进程就是一个正在执行的文件/程序,抽象的概念.
# 进程被谁执行?
# cpu最终运行你的程序.
# 操作系统调度作用.将你的磁盘上的程序加载到内存,然后交由CPU去处理.一个cpu正在运行的一个程序,就叫开启了一个进程.

操作系统

# 操作系统的定义
# 操作系统是存在于硬件与软件之间,管理,协调,控制软件与硬件的交互.
# 操作系统的作用:
#1:将一些丑陋复杂的硬件操作封装成美丽的接口,便于使用.
#2: 多个进程抢占一个资源时,合理的调度分配多个进程与cpu的关系,让其有序化,
操作系统(计算机)的发展史(多道技术)
第一代电子计算机(1940~1955)
二战时期,推出的电子计算机 手工操作.预定.类似于插线板的程序,计入机房,一个人独资享有计算机2个小时,各种硬件的操作插线与你的程序结合.
特点: 没有操作系统的概念,所有的硬件连接都是自己完成.
优点: 一个人独享.
缺点:一个人享用浪费资源.
所有的程序都是串行处理.
第二代计算机:磁带存储,批处理系统.(1955~1965)
优点: 节省了程序员连接个硬件的操作的时间.
缺点:不能独享计算机,不能在程序运行时修复bug.
cpu还是串行处理.
第三代计算机,集成电路,多道程序系统.
第三代计算机解决一个问题: 人工中途参与磁盘传递工作,以及输入输出设备不同机的问题.
第三代计算机解决第二个问题: 多道技术.

多道技术

多道技术要求物理层面实现进程之间内存的隔
多道技术解决了什么:
时间上的复用 将串行变为并发
空间上的复用.一个内存允许加载多个进程.
阻塞; IO阻塞,recv, accept, read input,write, sleep等等,都是阻塞.
如果三个进程全部都没有IO阻塞,多道技术就会影响最终的效率.

进程重要的概念

串行: 所有的进程由cpu一个一个的解决.
并发:单个cpu,同时执行多个进程(来回切换的),看起来像是同时运行.
并行:多个cpu,真正的同时运行多个进程.
阻塞:遇到IO才叫阻塞.
非阻塞: 没有IO.
进程3个状态 运行 就绪 阻塞
进程的创建.
想开启多个进程,必须是一个主进程,开启多个子进程.
unix: fork创建子进程.
windows:操作系统调用CreateProcess处理进程的创建.
linux, windows: 由主进程开启子进程:
相同点: 原则:主进程开启子进程两个进程都有相互隔离的独立的空间,互不影响.
不同点:
  linux: 子进程空间的初始数据完全是从主(父)进程copy一份.
  windows: 子进程空间的初始数据完全是从主(父)进程copy一份,但是有所不同.

开启多进程2个方法

#方式一:通过调用multiprocessing模块下面的Process类方法
from multiprocessing import Process
def task(name):
    print('这是自己写的任务逻辑代码')
if __name__ == '__main__':
    p=Process(target=task,args=(('骚强')))#target对应的是函数名 args 一定是一个元组的形式.
    p.start()#发起这个任务 通知操作系统,你给我在内存中开辟一个空间,将p这个进程放进去,然后让cpu执行.
    print('主进程')#在__name__下都是主进程
    
#方式二借助process类,自定义一个类(继承Process),从而造一个对象 并重新run方法
from multiprocessing import Process
class MYProcess(Process):
    def __init__(self,name):
        super().__init__()
        self.name=name
    def run(self):#重学run方法 下面是自己写的代码
        print('自己写的逻辑代码')
if __name__ == '__main__':
    p=Process('骚强')#传参
    p.start()
    print('主进程')

摘抄题

5.什么是进程?请简述进程的三个状态?(2分)
在运⾏中的程序就是进程
进程是计算机中最⼩的资源分配单位
进程的三状态 :就绪 运⾏ 阻塞
8.进程之间如何进⾏通信?(2分)
可以通过原⽣socket通信
如果是在同⼀个进程中,也可以使⽤multiprocessing⾃带的pipe或者queue进⾏通信
也可以使⽤第三⽅⼯具:memcache、、kafka、rabbitmq

猜你喜欢

转载自www.cnblogs.com/saoqiang/p/11376810.html