(1) --关于并发
https://www.cnblogs.com/zhehan54/p/6130030.html
收获:
为什么要有多进程的多线程?? 首先现实生活中一个服务器不可能一次只服务一个客服端,大的来说像微信,每天那么多账号登录,而每一个账号,每一台手机/PC/平板都是一个客户端。 这么多客户端同时的访问服务器以及等待服务器给予响应,不可能按照先来后到的一个一个的领号排序等待上一位处理完业务。 生活中解决这个问题就是多设立几个窗口,多增加几条流水线,像火车站多增设几台自动取票机等。-------------并行
而计算实现并行的方法是:
多进程,多线程,IO路复用等(都不是太了解)
(2)--进程和线程
链接: https://www.zhihu.com/question/25532384?sort=created
收获:
进程(fork):资源分配的最基本的单位 线程(Thread): 程序执行的最基本的单位,是进程的一个执行流
进程和线程是对CPU使用时间段的一种描述
进程就是包换上下文切换的程序执行时间总和 = CPU加载上下文+CPU执行+CPU保存上下文
线程是共享了进程的上下文环境,的更为细小的CPU时间段
(3) --进程空间-虚拟内存
https://segmentfault.com/a/1190000019750164
收获:
很多概念比如虚拟机,虚拟内存,虚拟表等都是虚拟, 虚拟的字面就是不存在,但是为什么我们可以使用? 因为它应该是将通过一份映射的关系从而建立和实际内存吗,实际表的关系,而这些怎么映射的以及如何的抽取的信息都是封装起来的,使得我们在使用的时候丝毫感觉不到虚拟的,只有在查询实际的表结构的时候才发现,怎么没有???
我所理解的多进程就是利用空余的内存空间,根据进程创建一个个具有“连续地址的”虚拟内存,而虚拟内存中顺序存储各个全局变量,静态变量,线程就是分部在其中在这个虚拟内存中访问地址空间。
原来分散的内存地址-----到虚拟内存中又成为了连续的了----然后就可以实行对连续地址进行操作的那套逻辑了???
声明: 理解的还很不成熟,待改进