每日作业 4/22

# 今日作业

**必做题**

* 简述操作系统发展史

1、手工操作
2、批量处理系统
3、联机批量处理系统
4、脱机批处理系统
5、多道程序系统
6、分时系统
7、实时系统
8、通用操作系统


* 简述进程发展史及算法演变

1、先来先服务调度算法
2、短作业优先调度算法
3、时间片轮转法+多级反馈队列

* 简述多道技术

空间上的服用与时间上的服用

* 空间上的复用
  多个程序公用一套计算机硬件

* 时间上的复用
    切换+保存状态


* 简述同步异步阻塞非阻塞概念

同步:任务提交之后,原地等待任务的返回结果,等待的过程中不做任何事(干等)
异步:任务提交之后,不原地等待任务的返回结果,直接去做其他事情,之后通过回调机制通知调用者
阻塞:调用是指调用结果返回之前,当前线程会被挂起(如遇到io操作)。函数只有在得到结果之后才会将阻塞的线程激活。
非阻塞:指在不能立刻得到结果之前也会立刻返回,同时该函数不会阻塞当前线程。


* 书写进程创建的两种方式

方式一:

复制代码
import time
# import random
from multiprocessing import Process
def piao(name):
    print('%s piaoing' %name)
    # time.sleep(random.randrange(1,5))
    time.sleep(1)
    print('%s piao end' %name)


if __name__ == '__main__':

    p1=Process(target=piao,args=('egon',)) #必须加,号
    p2=Process(target=piao,args=('alex',))
    p3=Process(target=piao,args=('wupeqi',))
    p4=Process(target=piao,args=('yuanhao',))

    p1.start()
    p2.start()
    p3.start()
    p4.start()
    print('主线程')

'''
主线程
egon piaoing
alex piaoing
wupeqi piaoing
yuanhao piaoing
egon piao end
alex piao end
wupeqi piao end
yuanhao piao end

#注意:
1、p1.start()是告诉操作系统去申请内存空间,然后运行代码,之后p1.start()这行代码就完事了,继续往下运行print()
2、申请内存空间然后重新运行代码耗时长,速度肯定print代码运行速度快,因此先打印"主线程"
'''
复制代码

方法二:

复制代码
#开进程的方法二:
import time
# import random
from multiprocessing import Process


class Piao(Process):
    def __init__(self,name):
        super().__init__()
        self.name=name
    def run(self):
        print('%s piaoing' %self.name)

        # time.sleep(random.randrange(1,5))
        time.sleep(1)
        print('%s piao end' %self.name)
if __name__ == '__main__':

    p1=Piao('egon')
    p2=Piao('alex')
    p3=Piao('wupeiqi')
    p4=Piao('yuanhao')

    p1.start() #start会自动调用run
    p2.start()
    p3.start()
    p4.start()
    print('主线程')

'''
主线程
egon piaoing
alex piaoing
wupeiqi piaoing
yuanhao piaoing
egon piao end
alex piao end
wupeiqi piao end
yuanhao piao end
'''


* 将具体内容整理到博客中

**选做题**

* 计算机硬件知识扩展(感兴趣)
* 数据分析算法学习资料收集(感兴趣)

原文地址:https://www.cnblogs.com/baicai37/p/12754348.html