001. OS的基本了解

----------------------

基础认识:


简单介绍,逐步细分
----------------------------------------------------------------------------
操作系统是计算机中的一种系统软件,用来管理和控制计算机软硬件资源的计算机程序。

用户通过操作系统提供的接口,去满足自己的需求。而在满足需求的过程中,操作系统会充当管理者对资源进行管理。

任何软件都必须在操作系统的支持下才能运作。

主要研究内容:

- 进程管理:CPU
- 内存管理:内存卡
- 文件管理:磁盘
- I/O管理:外设

- 即操作系统实现资源管理的主要功能

操作系统的特性(不同的资料对此有着不同的划分)


- 并发性:多个任务进程“同时”运行,通俗点就是开着游戏的同时,又挂着微信,这两个可以称为程序也可以称为进程,此外,

         一个程序也可以有多个进程比如,你的微信开着和别人聊天的聊天框,又点开朋友圈。

         而所谓的同时是这些进程执行在时间上是重叠的,重叠则是指多个进程同时执行的时候,是相互进行的,

         你执行一会,我也执行一会之类的穿插式执行。

注:单核每次只能执行一个进程,多核可执行同时多个进程,这是真正的并发,也叫并行,形象点就是一边唱歌,一边跳舞,

且这两者是同时进行的。

看到知乎上有关于并发和并行对于“同时”的解释,他或许是对的,但上述的描述却更好理解。

https://www.zhihu.com/question/307100151
------------------------------------------------------------------------------------------------------------------

- 共享性:计算机中的资源可以被多个并发执行的程序共同使用。资源:比如,CPU资源,程序想要执行,其数据资源需要经由CPU处理。

- 异步性:也称随机性,异步性对应上面的并发性,计算机中执行的程序众多,而资源是有限的。操作系统不会为每一个进程提供一套完整
         的资源一道程序也不会一直执行到结束,而是你走走我走走。而随机性可以理解为,操作系统不知道你什么时候鼠标会点击哪里。

补充知识: 复制上面知乎的一段话

高并发:指可以让软件系统在一段时间内能够处理大量的请求,说的是最终效果。只要能达到效果,不管怎么实现都行。因此,
极端一点【高并发】甚至并不一定需要【并行】,只要处理速度快的足够满足要求就可以。如启动一个nginx的【OS进程】,
它只能用到一个CPU核心,也就不可能【并行】。但是他如果能每秒能处理10万个请求,而业务需求只要求8万个请求就可以了,
那么这个单进程的nginx本身就算【高并发】了

不断修正,不断笔记,能力有限,若有不妥之处,望不吝指教。
------------------------------------------------------

原文地址:https://www.cnblogs.com/cstrick-1/p/13822235.html