新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 進程控制開發(fā)之:Linux進程概述

進程控制開發(fā)之:Linux進程概述

作者: 時間:2013-09-13 來源:網(wǎng)絡(luò) 收藏

本文引用地址:http://2s4d.com/article/257132.htm

7.1.3下進程的模式和類型

系統(tǒng)中,進程的執(zhí)行模式劃分為用戶模式和內(nèi)核模式。如果當(dāng)前運行的是用戶程序、應(yīng)用程序或者內(nèi)核之外的系統(tǒng)程序,那么對應(yīng)進程就在用戶模式下運行;如果在用戶程序執(zhí)行過程中出現(xiàn)系統(tǒng)調(diào)用或者發(fā)生中斷事件,那么就要運行(即核心)程序,進程模式就變成內(nèi)核模式。在內(nèi)核模式下運行的進程可以執(zhí)行機器的特權(quán)指令,而且此時該進程的運行不受用戶的干擾,即使是root用戶也不能干擾內(nèi)核模式下進程的運行。

用戶進程既可以在用戶模式下運行,也可以在內(nèi)核模式下運行,如圖7.3所示。

圖7.3用戶進程的兩種運行模式

7.1.4下的

Linux下的包括啟動進程和調(diào)度進程,下面就分別對這兩方面進行簡要講解。

1.啟動進程

Linux下啟動一個進程有兩種主要途徑:手工啟動和調(diào)度啟動。手工啟動是由用戶輸入命令直接啟動進程,而調(diào)度啟動是指系統(tǒng)根據(jù)用戶的設(shè)置自行啟動進程。

(1)手工啟動。

手工啟動進程又可分為前臺啟動和后臺啟動。

n 前臺啟動是手工啟動一個進程的最常用方式。一般地,當(dāng)用戶鍵入一個命令如“ls-l”時,就已經(jīng)啟動了一個進程,并且是一個前臺的進程。

n 后臺啟動往往是在該進程非常耗時,且用戶也不急著需要結(jié)果的時候啟動的。比如用戶要啟動一個需要長時間運行的格式化文本文件的進程。為了不使整個shell在格式化過程中都處于“癱瘓”狀態(tài),從后臺啟動這個進程是明智的選擇。

(2)調(diào)度啟動。

有時,系統(tǒng)需要進行一些比較費時而且占用資源的維護工作,并且這些工作適合在深夜無人值守的時候進行,這時用戶就可以事先進行調(diào)度安排,指定任務(wù)運行的時間或者場合,到時候系統(tǒng)就會自動完成這一切工作。

使用調(diào)度啟動進程有幾個常用的命令,如at命令在指定時刻執(zhí)行相關(guān)進程,cron命令可以自動周期性地執(zhí)行相關(guān)進程,在需要使用時讀者可以查看相關(guān)幫助手冊。

2.調(diào)度進程

調(diào)度進程包括對進程的中斷操作、改變優(yōu)先級、查看進程狀態(tài)等,在Linux下可以使用相關(guān)的系統(tǒng)命令實現(xiàn)其操作,在表7.1中列出了Linux中常見的調(diào)用進程的系統(tǒng)命令,讀者在需要的時候可以自行查找其用法。

表7.1 Linux中進程調(diào)度常見命令

選項

參數(shù)含義

ps

查看系統(tǒng)中的進程

top

動態(tài)顯示系統(tǒng)中的進程

nice

按用戶指定的優(yōu)先級運行

renice

改變正在運行進程的優(yōu)先級

kill

向進程發(fā)送信號(包括后臺進程)

crontab

用于安裝、刪除或者列出用于驅(qū)動cron后臺進程的任務(wù)。

bg

將掛起的進程放到后臺執(zhí)行

linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

linux相關(guān)文章:linux教程


pid控制器相關(guān)文章:pid控制器原理



上一頁 1 2 下一頁

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉