Skip to Content
LINUX系統程式設計 第二版
book

LINUX系統程式設計 第二版

by Robert Love
December 2013
Intermediate to advanced
496 pages
8h 57m
Chinese
GoTop Information, Inc.
Content preview from LINUX系統程式設計 第二版
進階的行程管理
|
215
必須非常小心忙碌等待(busy waiting)的問題。如果一個即時行程忙碌等待一個優
先權較低之行程所把持的一個資源,則即時行程將永遠忙碌等待下去。
開發一個即時行程的時候,讓一個終端機保持開啟的狀態,並以較高的優先權(相
較於進行開發的行程)將它執行成即時行程。發生緊急狀況時,終端機將依然會有
反應,允許你終止(kill)失控的即時行程。(因為終端機依然是閒置著,等待鍵盤
的輸入,所以不會干擾到其他的即時行程。)
使用
chrt
公用程式(
util-linux
工具套件的一部分)可輕易取得和設定其他行程的
即時屬性。使用此工具可輕易執行一個即時排班類型中的任何程式(例如前面所提
到的終端機)或是變更現有應用程式的即時優先權。
決定論
即時行程的重要性在於事情已成定論(determinism)。在即時運算中,行動已成定
論:如果輸入一樣,則所花的時間一樣,所產生的結果也一樣。在現代的電腦中則
有所不同,因為有些東西的定義已經完全不一樣了:快取區有多個層級(導致命中或
失誤的不可預測性)、多個處理器、分頁(paging)、置換(swapping)以及多任務化
multitasking)嚴重破壞了特定行動需要花多少時間的可估計性。的確,我們已經達到
了每個行動(硬碟的存取除外)都「奇快無比」的地步,但是在此同時,現代的系統也
讓我們難以準確估計特定操作實際上將花多少時間。
一般來說,即時應用程式往往會嘗試限制不可預測性,特別是情況最糟的延遲。接下來
我們會探討解決此類問題的二種方法。 ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

優雅的SciPy|Python科學研究的美學

優雅的SciPy|Python科學研究的美學

Juan Nunez-Iglesias, Stéfan van der Walt, Harriet Dashnow
C++语言导学(原书第2版)

C++语言导学(原书第2版)

本贾尼 斯特劳斯特鲁普

Publisher Resources

ISBN: 9789862769812