操作系統(tǒng)淺析

操作系統(tǒng)淺析

這篇文章不是探討操作系統(tǒng)的具體實(shí)現(xiàn)細(xì)節(jié)這樣技術(shù)性的問題,而是想從宏觀上探討一下為什么會(huì)有操作系統(tǒng)仑氛,操作系統(tǒng)是干什么的抑堡。

一.從最簡單的輸入輸出設(shè)備說起

我做過一個(gè)最簡單的帶有輸入輸出設(shè)備的裝置站玄,大致是這樣:

屏幕快照 2016-09-16 下午2.30.32.png

一個(gè)按鍵設(shè)備作為輸入按摘,一個(gè)數(shù)碼管作為顯示輸出包券,一個(gè)單片機(jī)處理數(shù)據(jù)
整個(gè)單片機(jī)的工作流程是這樣的:

屏幕快照 2016-09-16 下午5.07.12.png

這是一個(gè)沒有操作系統(tǒng)的設(shè)備炫贤,程序是在電腦上寫好了然后下載到單片機(jī)上的溅固,所以寫了之后就不能更改。

我在獲取到鍵值(哪個(gè)鍵被按下照激,編號(hào)為1-10发魄,共10個(gè)按鍵)和按鍵類型(長按,短按俩垃,雙擊)之后所做的顯示操作是:數(shù)碼管的前兩位顯示鍵值励幼,后兩位顯示當(dāng)前鍵值代表的按鍵被按下了多少次(短按加一次,雙擊加兩次口柳,長按加三次)苹粟,比如說如果當(dāng)前數(shù)碼管顯示為0222,則表示2號(hào)按鍵被按下的次數(shù)為22次跃闹,如果此時(shí)我再對2號(hào)按鍵長按一次嵌削,則數(shù)碼管顯示會(huì)變成0225(長按按鍵次數(shù)加3)。

作為一個(gè)嵌入式的設(shè)備望艺,整個(gè)設(shè)備的功能已經(jīng)很完善了苛秕,在沒有操作系統(tǒng)的情況下運(yùn)行的很好。實(shí)際上這就是一個(gè)最簡易的計(jì)算機(jī)模型找默,它有輸入設(shè)備(10個(gè)按鍵)艇劫,有CPU和內(nèi)存(單片機(jī)),有顯示器(數(shù)碼管)惩激。這個(gè)裝置在沒有操作系統(tǒng)的情況下也可以良好運(yùn)行店煞,那么為什么計(jì)算機(jī)上要有一個(gè)操作系統(tǒng)呢?

二.操作系統(tǒng)的引入

實(shí)際上大多數(shù)嵌入式設(shè)備都是沒有操作系統(tǒng)的风钻,都是直接面向硬件編程顷蟀,因?yàn)榇蠖鄶?shù)嵌入式設(shè)備的功能比較固定,比如電視遙控器骡技,它的功能就只是負(fù)責(zé)控制電視鸣个。這類專用設(shè)備實(shí)際上是不需要操作系統(tǒng)的,直接對硬件編程就行了布朦,那么操作系統(tǒng)是怎么產(chǎn)生的呢毛萌?

我還是以上面那個(gè)最簡單的設(shè)備為例,如果其他的程序員拿到了我的這個(gè)設(shè)備喝滞,而他現(xiàn)在在獲取按鍵鍵值和按鍵類型之后想要做其他的顯示操作(比如只想顯示哪個(gè)鍵被按下阁将,只需要前面兩位數(shù)碼管就行了,后面兩位可以顯示為0)右遭,而他又看不懂我的原始代碼做盅,這樣就意味著,他需要從做基礎(chǔ)的檢測按鍵鍵值→檢測按鍵類型→進(jìn)行顯示操作做起窘哈,而他實(shí)際上只是希望在獲取到鍵值和類型之后進(jìn)行其他的顯示操作吹榴,也就是只想改變一下最后一步。這樣的情況下滚婉,這個(gè)程序員肯定就會(huì)想图筹,如果能夠有一個(gè)東西幫我檢測按鍵鍵值和類型就好了,這個(gè)東西就是操作系統(tǒng)。

如果這個(gè)設(shè)備有了操作系統(tǒng)远剩,它可以幫程序檢測但按鍵鍵值和類型扣溺,那么程序員就可以很方便的對其進(jìn)行編程,達(dá)到所需要的顯示操作瓜晤,因此這個(gè)設(shè)備就有了通用性锥余。這實(shí)際上就是操作系統(tǒng)一個(gè)很重要的功能:為應(yīng)用程序提供底層接口。以這個(gè)設(shè)備為例痢掠,它提供的底層接口就是按鍵鍵值和類型驱犹,使程序員可以忽略具體的檢測過程而直接進(jìn)行所需要的顯示操作。想象一下足画,如果IOS程序員在編程時(shí)雄驹,還需要自己去寫代碼檢測是否有手指點(diǎn)擊以及點(diǎn)擊的位置,那么對程序員來說無疑是災(zāi)難性的淹辞,這些檢測實(shí)際上都是操作系統(tǒng)完成的医舆,程序員編程時(shí)只需要告訴操作系統(tǒng)有手指按下之后需要做什么就行了,包括iOS最新出的3Dtouch的功能桑涎,程序員并不需要自己去檢測是否發(fā)生了一次3Dtouch彬向,而只需要告訴操作系統(tǒng)當(dāng)3Dtouch發(fā)生之后需要做什么就行了。這些都是操作系統(tǒng)提供的接口攻冷。

我們大多數(shù)有操作系統(tǒng)的設(shè)備娃胆,比如手機(jī)和電腦,其實(shí)都是通用設(shè)備等曼,你可以在上面裝各種各樣的應(yīng)用程序來完成不同的功能里烦,而如果要在操作系統(tǒng)上編寫應(yīng)用程序,實(shí)際上就是利用了操作系統(tǒng)所提供的各種各樣的接口禁谦,操作系統(tǒng)很重要的一個(gè)功能就是:為上層應(yīng)用程序提供底層接口胁黑。當(dāng)然操作系統(tǒng)還有其他很多功能比如進(jìn)程線程管理等。
以上內(nèi)容為自己的一些淺薄的認(rèn)識(shí)州泊,如有錯(cuò)誤丧蘸,還請大神指出。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末遥皂,一起剝皮案震驚了整個(gè)濱河市力喷,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌演训,老刑警劉巖弟孟,帶你破解...
    沈念sama閱讀 211,948評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異样悟,居然都是意外死亡拂募,警方通過查閱死者的電腦和手機(jī)庭猩,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,371評論 3 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來陈症,“玉大人蔼水,你說我怎么就攤上這事∨来眨” “怎么了徙缴?”我有些...
    開封第一講書人閱讀 157,490評論 0 348
  • 文/不壞的土叔 我叫張陵试伙,是天一觀的道長嘁信。 經(jīng)常有香客問我,道長疏叨,這世上最難降的妖魔是什么潘靖? 我笑而不...
    開封第一講書人閱讀 56,521評論 1 284
  • 正文 為了忘掉前任,我火速辦了婚禮蚤蔓,結(jié)果婚禮上卦溢,老公的妹妹穿的比我還像新娘。我一直安慰自己秀又,他們只是感情好单寂,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,627評論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著吐辙,像睡著了一般宣决。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上昏苏,一...
    開封第一講書人閱讀 49,842評論 1 290
  • 那天尊沸,我揣著相機(jī)與錄音,去河邊找鬼贤惯。 笑死洼专,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的孵构。 我是一名探鬼主播屁商,決...
    沈念sama閱讀 38,997評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼颈墅!你這毒婦竟也來了蜡镶?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,741評論 0 268
  • 序言:老撾萬榮一對情侶失蹤精盅,失蹤者是張志新(化名)和其女友劉穎帽哑,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體叹俏,經(jīng)...
    沈念sama閱讀 44,203評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡妻枕,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,534評論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片屡谐。...
    茶點(diǎn)故事閱讀 38,673評論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡述么,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出愕掏,到底是詐尸還是另有隱情度秘,我是刑警寧澤,帶...
    沈念sama閱讀 34,339評論 4 330
  • 正文 年R本政府宣布饵撑,位于F島的核電站剑梳,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏滑潘。R本人自食惡果不足惜垢乙,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,955評論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望语卤。 院中可真熱鬧追逮,春花似錦、人聲如沸粹舵。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,770評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽眼滤。三九已至巴席,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間柠偶,已是汗流浹背情妖。 一陣腳步聲響...
    開封第一講書人閱讀 32,000評論 1 266
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留诱担,地道東北人毡证。 一個(gè)月前我還...
    沈念sama閱讀 46,394評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像蔫仙,于是被迫代替她去往敵國和親料睛。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,562評論 2 349

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,796評論 25 707
  • 姓名:吳兆陽 學(xué)號(hào):14020199009 轉(zhuǎn)自韋東山 嵌牛導(dǎo)讀:對嵌入式初學(xué)者摇邦,沒有足夠的視野選擇一個(gè)合適投入方...
    吳兆陽閱讀 2,380評論 0 4
  • 有什么愛好是你堅(jiān)持了幾年的施籍? 前幾天刷微博的時(shí)候居扒,看到這句話。我仔細(xì)想了想丑慎,除了一直寫喜喂,好像也沒別的了瓤摧。 開始寫日...
    白于斯閱讀 431評論 0 1
  • 1、 解決辦法:添加SystemConfiguration.framework 2.這個(gè)是引用NSDataAddi...
    wangminglang閱讀 415評論 0 0
  • 你說你有很多功課 你說你快樂不多 你說你工作繁瑣 你說你感情受挫 你說你為生活所迫 你說你想放棄自我 為什么不快樂...
    韋小五閱讀 256評論 3 2