ucos ii作業系統可以允許後臺執行多個任務,而每個任務都是無限迴圈的,核心是如何排程的

2021-05-27 12:15:58 字數 5323 閱讀 7535

1樓:匿名使用者

每個嵌入式作業系統都會牽扯到這個問題。

任務排程通俗的講就是作業系統分配每個任務的執行時間,協調他們的工作。

對於每個任務來說,程式設計者可以認為只有它佔用cpu,故而可以寫成無限迴圈的形式,在這個迴圈中加入系統延時(或請求訊息、事件等),當任務執行到系統延時這條語句不會傻傻的等待,而是轉而處理其他的任務。作業系統記住了延時時間,當時間到時如果這個任務就緒再引發一次排程,執行本任務,也就是延時之後的程式。

作業系統是怎麼知道哪個任務應該執行,哪個任務需要等待,哪個任務需要訊息的呢?不管哪個作業系統,都要有一個任務控制塊,這個控制塊要標明任務的優先順序、任務的入口地址,並且給任務分別堆疊等。堆疊其實就是儲存任務執行資訊的,比如在哪個地方呼叫了系統延時,當系統排程給這個任務執行時就能找到在什麼地方執行了。

找本ucos的書看,然後讀**,能很快理解。學習任何一門知識都要紮實,這種問題書上講解的很清楚,不要上來就問,這不是學習的好態度。祝你好運~

2樓:

通常情況下。ucos的所有任務都會做的事情就是在大迴圈查詢它的訊息郵箱,等收到一個訊息msg。等到之後,任務就開始執行不同的訊息的處理函式,執行完畢後重來繼續等下一個訊息。

所謂的排程就是,當任務a執行完一次訊息處理、或者查詢自己郵箱發現沒有訊息、或者某個更高優先順序的任務需要執行、或者發生某個中斷的時候(這取決於核心的排程策略),核心會將任務a掛起。將這個任務a的執行上下文(暫存器狀態、堆疊指標、pc指標等)儲存起來,然後將它們恢復成任務b(或者中斷服務程式)的執行上下文,這樣暫存器、堆疊、pc等的值就切換成任務b(或者中斷服務程式)的上下文,於是接下來任務b(或者中斷服務程式)開始跑。

如果所有的任務都沒有訊息,則核心最終切換到idletask(空閒任務)。這是核心提供的最低優先順序任務(就是一段空跑的for迴圈)。每隔一定時間,空閒任務都會“自動掛起”,引發一次核心排程,使得使用者任務得以執行

3樓:匿名使用者

先儲存此任務,再恢復彼任務,何謂儲存,cpu的暫存器入棧,何謂恢復,cpu的暫存器出棧,詳細來我空間看看

計算機作業系統有哪些?

4樓:天涯客

1,unix系列,

比如unix,opensolaris

2,微軟的作業系統,這個是最常見的。比如win7,win10等等3,linux系列,基於linux核心的作業系統,比如redhat,fedora,denian,ubuntu等等

4,bsd系列,比如openbsd,freebsd等等。實際上bsd是從unix系統分化出來的

5,menuetos作業系統,這個系統由組合語言編寫而成,體積很迷你小巧

6,蘋果的mac os x作業系統

5樓:雲南新華電腦學校

現有unix、linux、mac、os/2、gun、dos、windows等數種通用常規作業系統,另外還有特殊應用的作業系統。

據統計國人有超過95%的計算機使用windows系統。每一種作業系統又根據其核心不同細分為不同系列,例如windows有windows3.1,windows95,windows98,windows2000,windows xp,windows 2003,windows...

現有unix、linux、mac、os/2、gun、dos、windows等數種通用常規作業系統,另外還有特殊應用的作業系統。 據統計國人有超過95%的計算機使用windows系統。每一種作業系統又根據其核心不同細分為不同系列,例如windows有windows3.

1,windows95,windows98,windows2000,windows xp,windows 2003,windows vista,windows 7等

6樓:life布可

幾個常用的作業系統:

1、  dos作業系統

dos是英文disk operation system的簡稱,中文為磁碟作業系統,自2023年推出1.0版發展至今已升級到6.22版,dos的介面用字元命令方式操作,只能執行單個任務。

2、  windows 9x

windows 9x是一個視窗式圖形介面的多工作業系統,彌補了dos的種種不足。此後推出的windows me(2023年)、windows xp(2023年)與windows 9x相比,著重增加和增強了網路互聯、數字**、娛樂元件、硬體即插即用、系統還原等方面的功能。

3、windows 98

是面向大眾使用者的版本,由於是從dos發展過來的,在安裝和執行了大型軟體以後,系統會變得不太穩定,經常會宕機。

4、windows xp

實在windows nt的技術上發展過來的,由於最初windows nt是為伺服器設計的因此穩定性要比windows 98系列作業系統好很多。

5、  windows nt/ windows 2000

windows 2000是在windows nt核心基礎上構建起來的,同時吸收了windows 9x的優點,因此,windows 2000更易於使用和管理,可靠性更強,執行更迅速,更穩定和更安全,網路功能更齊全,娛樂效果更佳。

windows伺服器最常用的是 windows 2003和windows 2008兩種,這兩款都被很多大小型企業所用。

6、  unix

unix作業系統設計是從小型機開始的,從一開始就是一種多使用者、多工的通用作業系統,它為使用者提供了一個互動、靈活的操作介面,支援使用者之間共享資料,並提供眾多的整合的工具以提高使用者的工作效率,同時能夠移植到不同的硬體平臺。

unix作業系統的可靠性和穩定性是其他系統所無法比擬的,是公認的最好的internet伺服器作業系統。從某種意義上講,整個因特網的主幹幾乎都是建立在執行unix的眾多機器和網路裝置之上的。

7、  linux

準確的說,linux應該是符合unix規範的一個作業系統,linix是基於源**的方式進行開發的。linux是一套免費使用和自由傳播的類似unix的作業系統,這個系統是由全世界各地的成千上萬的程式設計師設計和實現的。

使用者不用支付任何費用就可以獲得它和它的源**,並且可以根據自己的需要對它進行必要的修改,無償對它使用,無約束地繼續傳播。

linux以它的高效性和靈活性著稱。它能夠在pc計算機上實現全部的unix特性,具有多工、多使用者的能力。而且還包括了文字編輯器、高階語言編譯器等應用軟體。

它還包括帶有多個視窗管理器的x—windows圖形使用者介面,如同我們使用windows nt一樣,允許我們使用視窗、圖示和選單對系統進行操作。它是一個功能強大、效能出眾、穩定可靠的作業系統。

8、 其他作業系統

如:mac os是蘋果電腦macintosh機器的專用作業系統,從本質上將,mac os 也是unix的一個變體。

7樓:匿名使用者

計算機作業系統有很多,在計算機裡有很普通的作業系統,也有一般的作業系統,在作業系統中去操作計算機是以非常懸殊的操作方法去操作,這才是真正的計算機作業系統,必須要耐,真的學習

8樓:hao獅子

一般是這四種:

windows系列作業系統

由微軟公司生產;

unix類作業系統

如solaris,bsd系列(freebsd,openbsd,netbsd,pcbsd);

linux類作業系統

如ubuntu,suse linux,fedora,等mac作業系統

由蘋果公司生產(darwin),一般安裝於mac電腦。

windows10的系統:

unix solaris:

linux ubuntu:

mac:

9樓:匿名使用者

1.dos分為pc-dos(ibm)和ms-dos(微軟),國產漢化版本為uc-dos

2.windows(桌面類:windows3.

1系列 windows95、windows98、 windows me、windows xp、windows vista、windows 7、windows 8 伺服器類:windows nt、windows 2000、windows 2003、windows 2008)

3.linux 由於linux 是開源的所以衍生版本較多常見的有 redhat、suse、紅旗(後合作開發asianux)、ubuntu、 debian、fedora等

4.unix 為最高階最複雜的作業系統,多為承載大型應用的伺服器作業系統,常見的有aix(ibm)、solaris(原為sun 現為oracle)、true64(原為compaq 現為hp)、hp-unix(hp)、sco unix(sco)等等。

10樓:匿名使用者

單機版作業系統主要有“windows 98" "windows 2000"

"windows xp" "windows me"

98特點是對硬碟和主頻要求不高,缺點是不穩定。

2000 特點是對硬碟和主頻要求不高,還有很強的網路功能,比較穩定。

xp 最大的優點就是穩定,執行中有點兒小毛病也礙事兒。缺點是對硬碟和記憶體要求太高,一般配置都很高。

網路版作業系統主要有“unix" "windows 2000 nt"

"linux" 等

最常用的是windows 2000 nt 最有前途的是linux它的特點是開放源**。

11樓:

最受歡迎的電腦作業系統,作業系統演變史

12樓:蝶影重重

作業系統很多,但主流是windows,

還有其他比如伺服器多用unix和linux。因為相對穩定和安全。

而unix和linux又有很多分支,很多其實只是用來研究,而沒有實際應用。

蘋果電腦用自己的作業系統。mac系列,其實也是從unixlinux來的。

13樓:橙子小可樂樂

有windows linux 紅旗 dos等

14樓:庫梧永晶輝

dos、windows(包括2000、xp、vista.win7)、unix、linux

比較常見

作業系統主要有哪幾種基本型別?

15樓:匿名使用者

1.批處zhi理作業系統

dao(batch processing operation system).

2.分時作業系統專(time sharing operating system).

3.實時作業系統(real time operating system).

4.個人屬作業系統(personal operating system).

5.網路作業系統(nos, network operating system).

6.分散式作業系統(distributed operating system)。

手機作業系統和電腦作業系統的區別

都是bai作業系統 區別就在硬體不一樣du。zhi 手機,電腦 效能要求不 dao一樣。版1.手機硬體條件不如權電腦,資源比較緊張。2.手機一般不會關機,而電腦經常重啟。3.手機一般要求比較省電,所以也要求作業系統的效能。等等等等 windows mobile作業系統由於脫胎於pc機的windows...

vb判斷作業系統型別,VB判斷作業系統型別

如何用vb 實現判斷當前的作業系統是中文的還是英文的,如,中文的xp系統還是英文的xp,謝謝 通過api 函式getsystemdefaultlcid 判斷系統的語言 option private declare function getversionex lib kernel32 alias ge...

電腦作業系統

是不是進了一些惡意 傳染了病毒.先防毒,如果還是這樣的話先用3721修復,還是不行就用優化大師清理一下.上面能清理的都清理.你的電腦是不是一開始就這樣 如果是應該是設定的問題 如果不是 可能是中病毒或什麼惡意 之類的東西用3721殺不錯試試吧如果行不行就重新裝系統了 我的電腦也是這種現象,我重灌過系...