进程的理论

Posted saoqiang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了进程的理论相关的知识,希望对你有一定的参考价值。

操作系统

操作系统的定义
操作系统是存在于硬件与软件之间,管理,协调,控制软件与硬件的交互.
操作系统的作用:
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一份,但是有所不同.

以上是关于进程的理论的主要内容,如果未能解决你的问题,请参考以下文章

在 Python 多处理进程中运行较慢的 OpenCV 代码片段

java 简单的代码片段,展示如何将javaagent附加到运行JVM进程

代码片段:Shell脚本实现重复执行和多进程

进程线程同步异步

CentOS 7进程和计划任务管理(理论+实践)

三十进程理论