CSAPP translation summary page 14

实现进程这个抽象的概念需要低级硬件和操作系统软件之间的紧密合作.

Implementing the process abstraction require close cooperation between both the low-level hardware and the operating system software.

线程:

一个进程可以由多个(multiple )称为线程的执行单元组成,每个线程都运行在进程的上下文当中,分享着相同的代码和全局数据. 由于网络服务器对并行(concurrency )处理的需求,由于数据的分享在多个线程和处理器之间更加的容易,因为线程比处理器更加的高效.多线程是一种让程序运行得更快的结果,

A process can consist of multiple excution unites, calls treads, each treads are running in the context of the process, sharing the same code and global data. Because of the requirement for concurrency in network servers, because the share data is easier both multiple threads and multiple processes, because threads efficient than processes.

在linux中,地址空间最上面(topmost)的区域(region)是保留给操作系统中的代码和数据的,这对所有的进程来说都一样(common).地址空间的底部区域放用户进程定义的代码和数据.

In Linux, the topmost region for address is give code and data in the operating system. The lower address region put code and data of user process define.

每个进程看到的虚拟地址(virtual address)空间由大量准确定义(welldefined )的区构成,每个区都有具体的(specific)的目的.

Each processes seen virtual address space consists of a number of welldefined areas, each areas have welldefined specific.

对所有进程来说代码是从同一固定的地址开始的,紧接着是C全局变量(global variables)相对应(correspond )的数据位置. 代码和数据区(data areas)是已直接初始化的(initialized)可执行目标文件内容.

For all process the code always begin at same fixed address, followed data locati that correspond to global C variables, code and data areas are initialized directly from the contents of an executable object file.

你可能感兴趣的:(CSAPP translation summary page 14)