进程
概念:一个正在运行的程序,在操作系统角度讲,进程就是一个pcb,pcb就是操作系统对一个正在运行的程序的描述,通过这个描述实现对指定程序的调度管理。在linux中是一个结构体—struct task_struct{…}
程序:一系列有序的指令集合,程序员编写的代码,并存储在硬盘中
所有数据指令想要被CPU处理,都会先将代码和数据加载到内存。
cpu分时机制:cpu以极快的速度切换调度运行所有的程序,每个程序在cpu上运行一个时间片之后就会切换调度下一个进程
PCB–进程控制块
每个运行的程序都会有一个pcb,pcb是用来描述进程的,也就是说,每个进程的描述信息和属性都在pcb中。
操作系统如何实现多个程序的调度运行:将这个运行中的程序描述起来,然后将这些描述组织起来进行管理,通过实现对pcb的调度管理实现对运行中程序的切换调度运行。
描述信息:
内存指针:包括程序代码和进程相关数据的指针,还有和其他进程共享的内存块的指针
程序计数器:程序中即将被执行的下一条指令的地址
上下文数据:进程执行时处理器的寄存器中的数据
进程标识符: 进程的唯一标识
状态、记账信息、进程优先级、IO信息等
cpu多核–多个处理核心-每个核心都有自己的寄存器,可以调度一个程序的运行
并行:同时运行/执行
并发:轮询处理执行
时间片:cpu调度运行程序的时间段