异常(待补充)
异常的类别
异常分为:
- 中断(
interrupt
) - 陷阱(
trap
) - 故障(
fault
) - 终止 (
abort
)
进程
当在系统中运行一个程序,会得到一个假象,好像我们的程序在独占系统资源地执行。事实上,这是通过进程的虚拟化来实现的。
进程的一个经典定义:一个执行中程序的实例。也就是说,每个运行的程序都是一个进程,而每个进程都有自己的上下文。
当用户向shell中输入一个可执行文件的名字,运行程序时,就会创建一个进程。当然,应用程序也可以创建一个进程。
进程之所以重要,是因为进程提供给应用程序两个关键的抽象:
- 一个独立的逻辑控制流,通过称为上下文切换的内核机制,使得程序好像在独占地使用处理器。
- 一个私有的地址空间,通过虚拟内存,使得程序好像在独占使用内存空间。
逻辑控制流
程序计数器(PC
)值的序列称为逻辑控制流,简称逻辑流。通常所说的逻辑流是对程序执行路径的抽象描述
图8-12是一个运行着三个进程的系统。处理器的一个物理控制流被分成三个逻辑流,每个进程一个。如下图所示,三个逻辑流的执行是交错的。也就是说,进程轮流使用处理器。
每个进程执行它的流的一部分,然后被抢占(preempted)(暂时挂起),其他进程使用处理器。对于在每个进程的上下文中运行的程序,看上去好像在独占使用CPU资源。
并发流
一个逻辑流的执行在时间上与另外一个流重叠,称为并发流(concurrent flow),这两个流被称为并发地运行。
并发(concurrency): 多个流并发地地执行的一般现象称为并发
多任务:一个进程和其他进程轮流运行的概念称为多任务
时间片:一个进程执行它控制流的一部分的每一个时间段叫做时间片。因此,所任务也叫时间分片。在图8-12中,进程A的流由两个时间片组成。
应当注意的是:如果两个流在时间上重叠,那么它们就是并发的。
并行流:两个流并发地运行在不同的处理器核或者计算机上,将其称为并行流。
私有地址空间
进程为每个程序提供提供他自己的。
标签:逻辑,一个,控制流,程序,并发,进程,异常 From: https://www.cnblogs.com/notob/p/18134236