一、操作系统基础:

进程的概念起源于操作系统,操作系统其它所有概念都是围绕进程来的,所以我们了解进程之前先来了解一下操作系统

操作系统位于计算机硬件与应用软件之间,本质也是一个软件。操作系统由操作系统的内核(运行于内核态,管理硬件资源)以及系统调用(运行于用户态,为应用程序员写的应用程序提供系统调用接口)两部分组成

两大功能:

  1.将复杂的硬件操作封装成简单的接口给应用程序或者用户去使用

  2.将多个进程对硬件的竞争变得有序

操作系统处理进程的发展简略:

  1.串行:一个任务完整的运行完毕才运行下一个任务

  2.并发:多个任务看起来是同时运行的

  3.多道技术(复用-->共享)

    (1)空间上的复用:多个任务复用内存空间

    (2)时间上的复用:多个任务复用cpu的时间

      时间上的复用又分为两种:

  1. 一个任务占用时间过长会被操作系统剥夺走cpu的执行权限:比起串行执行反而降低效率
  2. 一个任务遇到IO操作也会被操作系统剥夺走cpu的执行权限:比起串行执行可以提升效率 

 

二、进程

程序仅仅是一堆代码而已,而进程指的是程序运行的过程

(一)、进程的创建

开启进程的方式1:(直接使用Process)

from multiprocessing import Process
import time

def task(name):
    print('%s is running'%name)
    time.sleep(3)
    print('%s is done'%name)

#在windows系统上,开启子进程的操作必须放到 if __name__ == '__main__':中,避免递归

if __name__ == '__main__':
    p = Process(target=task,args=('egon',))
    # Process(target=task,kwargs={'name':'egon'})
    p.start()#只是向操作系统发送了一个开启子进程的信号
    print('')
View Code

相关文章: