(并发编程)操作系统-进程(理论)
1 什么是进程
进程指的是一个正在进行/运行的程序,进程是用来描述程序执行过程的虚拟概念
进程指的是一个正在进行/运行的程序,进程是用来描述程序执行过程的虚拟概念
进程vs程序
程序:一堆代码
进程:程序的执行的过程
程序:一堆代码
进程:程序的执行的过程
进程的概念起源于操作系统,进程是操作系统最核心的概念,操作系统其它所有的概念都是围绕进程来
操作系统理论:
1. 操作系统是什么?
操作系统是一个协调\管理\控制计算机硬件资源与应用软件资源的一段控制程序
有两大功能:
1. 将复杂的硬件操作封装成简单的接口给应用程序或者用户去使用
2. 将多个进程对硬件的竞争变得有序
1. 操作系统是什么?
操作系统是一个协调\管理\控制计算机硬件资源与应用软件资源的一段控制程序
有两大功能:
1. 将复杂的硬件操作封装成简单的接口给应用程序或者用户去使用
2. 将多个进程对硬件的竞争变得有序
操作系统发展史
大前提:1个cpu同一时间只能执行一个任务
并发: 多个任务看起来是同时运行的
串行:一个任务完完整整地运行完毕,才能运行下一个任务
并发: 多个任务看起来是同时运行的
串行:一个任务完完整整地运行完毕,才能运行下一个任务
并行:多个任务的同时运行,只有在多核才能实现
多道技术:(复用=>共享/共用)
大背景:1个cpu实现多个进程并发的效果
1. 空间上的复用:多个任务复用内存空间,(进程与进程之间的内存空间是互相隔离的)硬件上的隔离
2. 时间上的复用:多个任务复用cpu的时间
1. 占用cpu时间过长切:比起串行执行反而会降低效率
2. io操作切(读写):比起串行执行可以提升效率
1. 空间上的复用:多个任务复用内存空间,(进程与进程之间的内存空间是互相隔离的)硬件上的隔离
2. 时间上的复用:多个任务复用cpu的时间
1. 占用cpu时间过长切:比起串行执行反而会降低效率
2. io操作切(读写):比起串行执行可以提升效率
核心:(切的速度非常快)切之前在内存中保存,下次切回来可以接着上次未完成的部分
2 为何用进程
实现并发
实现并发
3 如何用进程