行程管理
此條目没有列出任何参考或来源。 (2015年11月12日) |
在現代作業系統中,行程管理(英語:Process management)是作業系統的功能之一,特別是多任務處理的狀況下,這是必要的功能。作業系統將資源分配給各個行程,讓行程間可以分享與交換資訊,保護每個行程擁有的資源,不會被其他行程搶走,以及使行程間能夠同步。為了達到這些要求,作業系統為每個行程分配了一個資料結構,用來描述行程的狀態,以及行程擁有的資源。作業系統可以透過這個資料結構,來控制每個行程的運作。
多道程序
编辑许多现代操作系统都支持在内存中同时加载同一程序的不同实例。例如,多个用户可能都在运行同一个程序,每个用户所运行的就是该程序在内存中的不同副本。有一些程序可以只在内存中加载一个副本,在不同的用户间共享通向的程序代码,这样的程序是可重入的。同一处理器(核)在任意时间点都只能执行一个程序中的一条指令,而如果每隔一段时间轮换处理器所处理的进程,暂时停止其它进程的活动,那么多个进程就可以同时在一段时间内存在,这样就是一种并发计算。
多道和多任务的操作系统便是一种可以多进程并发执行的系统。多道程序要求处理器为每个进程都分配一定的时间,并在合适的时机释放。如果释放时进程尚未结束,则需要确保进程能够很方便地重启。
进程执行过程中,如果操作系统需要取回处理器的控制权,一般有两种方法:
一个进程停止、另一个进程开始(或者重启)的过程称作上下文交換或上下文切换。在许多现代操作系统中,进程还可以包含许多子进程,这样便引入了线程的概念。可以将线程看作子进程,即在同一进程中的独立代码执行单元。