C++进程资源
什么是资源
资源时进程执行任务过程中所使用的硬件设备或者软件材料,资源包括硬盘、RAM、CPU、打印机、显示器、键盘、网卡、文件、程序、数据、动态链接库等等。
资源可以是进程在任何给定时间使用的任何东西。
硬件资源
硬件资源是物理设备,例如CPU,进程使用它来进行数据操纵计算执行等等。此外还有内存RAM、外存ROM、非抢占式打印机、屏幕键盘鼠标等I/O设备。
这些I/O资源可以被多个进程通过创建session来进行共享。
数据资源
数据是一种资源,进程可以使用和操纵数据,坑比如文件、对象和句柄以及系统数据(比如环境变量等等)、全局定义变量(信号量、互斥量)。
软件资源
软件资源可以是其他进程或者动态链接库(dynamic link library)。库可以是针对进程的一个语句、子程序等的源代码,共享软件资源的进程共享程序的一个拷贝,但是拥有数据片段的单独拷贝,程序的进程虚拟地址被映射到了相同的物理地址上。
使用时不发生变化的程序可以同时被多个进程使用,但是使用时可能发生变化的程序在进程没次使用它的时候都会重新初始化,程序一次只能被一个进程所使用。