青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

  C++博客 :: 首頁 :: 聯系 :: 聚合  :: 管理
  117 Posts :: 2 Stories :: 61 Comments :: 0 Trackbacks

常用鏈接

留言簿(8)

搜索

  •  

最新評論

閱讀排行榜

評論排行榜


        (下面的文字還為整理)

本來是想在留言里面回simohayha的,結果越寫越多,改成博客算了,也許對別人也有幫助。沒什么中心思想,大家胡亂看看。

我在讀大學的時候是努力試圖學習過linux源碼的,在機房里打印出厚厚一疊紙,悶在計算機旁邊猛看了好幾天,飯也沒好好吃,那些紙的質量不太好,有股怪味,空著肚子鉆研,到后來聞那股味道,差點嘔吐,于是放棄,出去大吃了一頓。

這是上世紀末的事情了,那時其實水平還沒到,心里好奇,完全是賴蛤蟆想吃天鵝肉。學習這個事情,還是得循序漸進的。

要想學深入學習操作系統,推薦從這本書開始: Operatiing Systmes, Design and Implementation (by Tanenbaum, Woodhull),里面有個用于教學的操作系統MinixLinux的某些方面,現在還可以找到Minix的影子。

我手里的這本書,是第二版,現在書最新版是第三版。Minix 3.0,也已經有點難度了, X Window System都有了。http://www.minix3.org/

要是覺得還是太復雜,還有個更簡單的GeekOShttp://geekos.sourceforge.net/

OS
的設計是受限于硬件的,尤其是CPU。當代OS的不同進程之間的內存保護,虛擬地址,都要通過硬件。所以對一個CPU的深刻了解,必不可少。對于IntelCPU,應該讀下面三本:

1. Intel Architecture Software Developer's Manual, Volume 1: Basic Architecture http://www.intel.com/design/PentiumII/manuals/243190.htm

2. Intel Architecture Software Developer's Manual, Volume 2: Instruction Set Reference Manual http://www.intel.com/design/PentiumII/manuals/243191.htm

3. Intel Architecture Software Developer’s Manual Volume 3: System Programming http://www.intel.com/design/PentiumII/manuals/243192.htm

尤其是第三本,OS必看,虛擬內存,內存保護的東西全在里面。

操作系統里面代碼最多的,實際是IO部分,理論不多,可事關重要。Mindshare出了一系列書,寫的非常深入詳細。http://www.mindshare.com/

學匯編開始直接學CISC的指令集太費勁了,推薦先從RISC匯編開始,西方大學計算機專業走的也是這條路。可以看的一本書是Introduction to RISC Assembly Language Programmingby John Waldron。里面用的處理器MIPS,可以下載個SPIM Simulator,在PC上跑。http://www.cs.wisc.edu/~larus/spim.html

Knuth
老先生在The Art of Computer Programming一書里的例子,都是匯編,現在用的虛擬機是訪RISC設計的,叫做MMIXKnuth寫了本書,叫做MMIXware, A RISC Computer for the Third Millennium, 呵呵,口氣好大啊。

講計算機架構的兩本計算機學科經典書,是PattersonHennessy合寫的兩本:Computer Organization and Design: The Hardware/Software Interface 3rd edition,以及Computer Architecture, Fourth Edition: A Quantitative Approach

學匯編要注意一點,每個匯編器,其語法都不一樣。在Windows下面寫匯編,微軟的Macro Assembler不是很合適,里面的Macro太多,都趕上高級語言了。有個開源的Netwide Assembler, http://sourceforge.net/projects/nasm, 倒是挺不錯,推薦使用。

關于學習操作系統內核,如果不是非抱著Linux的話,BSD是個挺好的選擇。代碼的結構可能還清晰些。我有一臺FreeBSD服務器,基本非常滿意,有兩點不足,MySQL是針對Linux優化的,在FreeBSD下性能不夠好,但是根據Yahoo的人說(YahooFreeBSD,FreeBSD最新版下用MySQL threading library重新編譯性能可以接受了。Java也不盡如意,Sun 現在提供Java 5binaryFreeBSD。但我在FreeBSD如果啟動Tomcat開的內存太大,啟動會失敗。

想看看FreeBSD的源碼,可以看看這里:http://www.leidinger.net/FreeBSD/src_docs/,里面列的都是內核各個部分的Code Reference Manual。里面那個講kernel的文件有23M,共2205頁,可見鉆研這些是件極為費時費力的事情。

http://www.chinaunix.net/
也有很多BSD的資料。

現在主流操作系統,就兩大家了,一邊是微軟的以NT為內核的Win2k/XP/2003/Vista,另一邊是以UNIX為根基的Linux/BSD/Solaris等等.

Tanenbaum
說過這么一句話,操作系統是什么呢,就是操作系統定義的API

學習Windows下的API,容易許多,資料全,另外Jeffrey RichterProgramming Application for MS Windows那本書寫的太好了,Process, Job, Thread, Fiber, Critical Section, Event, Waitable Timer, Semaphore, MutexVirtual Memory, IO,寫的非常詳盡清楚。要是Linux/BSD下面也有這么一本書,該有多好啊。Linux, BSD里面的線程,家家各有不同,把人搞得糊里糊涂。

如果從研究操作系統是怎么實現的,那么正好反過來,Linxu/BSD/Solaris簡單明了多了.除了代碼公開,他們內部結構沒有Windows那么復雜。Windows的源碼,要是成為微軟的MVP,也是可以看到的。Windows 2000的大部分源碼,還泄露出來了,在網上流傳了一陣子。

我個人覺得搞應用的去學習編譯器回報可能更大,首先就是對語言了解很深入,寫碼,讀碼容易。如果會了編譯器前臺技術,可以自己寫個分析代碼的程序啊,那么讀別人的碼不久容易很多。現在雖然有現成的源碼分析器,但是想想你有個數據庫,一種是只能使用別人寫好的界面,一種是可以用SQL自由查找,哪個好?如果學會了編譯器后臺技術,恭喜你,寫任何一行代碼都知道在計算機里怎么執行的,這是一種多么自由自在的境界啊。   

posted on 2010-02-18 01:42 煙皚 閱讀(11550) 評論(1)  編輯 收藏 引用 所屬分類: 操作系統學習筆記

Feedback

# re: 如何學習操作系統?——整理篇,非個人感悟 2016-02-10 21:26 星空不遠
收藏,先把現代操作系統過一遍,有個基本概念后,再來好好學習一番  回復  更多評論
  


只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲美女啪啪| 久久久久久久久蜜桃| 国产精品久久久久久户外露出| 欧美a级大片| 欧美日韩国产综合一区二区| 欧美日韩高清在线一区| 欧美日韩在线第一页| 国产精品美女久久久久av超清| 国产精品私房写真福利视频| 国产日韩欧美综合在线| 亚洲国产天堂网精品网站| 亚洲视频在线观看| 久久久亚洲成人| 亚洲人成欧美中文字幕| 99国产一区二区三精品乱码| 亚洲天堂网在线观看| 久久久久国色av免费看影院| 欧美黄色aaaa| av成人免费在线| 欧美中日韩免费视频| 免费日韩精品中文字幕视频在线| 欧美日本韩国| 黄色工厂这里只有精品| 亚洲天堂偷拍| 欧美成人精品在线播放| 夜夜嗨av一区二区三区网页| 欧美在线综合视频| 欧美视频在线观看视频极品| 一区二区三区自拍| 亚洲性色视频| 欧美国产综合视频| 亚洲欧美日韩在线观看a三区| 久久综合色影院| 国产美女精品一区二区三区| 日韩亚洲视频| 蜜月aⅴ免费一区二区三区| 亚洲一区二区三区精品动漫| 欧美成人综合| 亚洲第一黄网| 久久久久久精| 亚洲一区国产视频| 欧美视频在线观看| 亚洲欧洲三级| 欧美国产欧美综合| 久久久久久97三级| 国产日韩一区二区三区在线| 亚洲视频福利| 亚洲精品一线二线三线无人区| 久久久久国产精品一区| 国产亚洲欧美激情| 久久国产精品第一页| 亚洲自拍三区| 国产精品久久久| 亚洲一区亚洲| 亚洲一区二区欧美| 国产精品丝袜久久久久久app| 亚洲一区免费网站| 亚洲私人影院在线观看| 国产精品亚洲不卡a| 午夜欧美不卡精品aaaaa| 亚洲小说欧美另类婷婷| 国产精品美女主播| 午夜一区不卡| 欧美一二三区在线观看| 国产亚洲欧美一区| 久久香蕉精品| 欧美77777| 一本大道久久a久久综合婷婷 | 亚洲无限乱码一二三四麻| 亚洲国产精品va在线观看黑人| 欧美在线999| 亚洲春色另类小说| 91久久精品日日躁夜夜躁国产| 欧美国产精品日韩| 午夜精品久久久久| 久久精品国产99| 亚洲人成在线播放| 在线综合亚洲| 亚洲校园激情| 国产亚洲精品成人av久久ww| 免费试看一区| 欧美精品成人一区二区在线观看 | 亚洲嫩草精品久久| 国产亚洲欧美另类中文| 免费欧美日韩国产三级电影| 欧美激情aⅴ一区二区三区| 在线中文字幕日韩| 欧美一区二区在线免费观看| 亚洲黄色在线看| 亚洲香蕉网站| 国内在线观看一区二区三区| 亚洲高清自拍| 国产欧美在线视频| 亚洲电影免费在线 | 欧美日韩三区四区| 久久久精品网| 欧美色区777第一页| 久久久久国产一区二区三区四区| 老司机aⅴ在线精品导航| 亚洲视频福利| 久久久久五月天| 亚洲欧美在线免费观看| 麻豆av一区二区三区| 欧美亚洲视频在线看网址| 欧美黄色一区| 蜜月aⅴ免费一区二区三区| 欧美性天天影院| 欧美国产欧美亚洲国产日韩mv天天看完整 | 亚洲视频 欧洲视频| 久久久久久久久久久一区| 在线视频亚洲一区| 久久精品欧洲| 久久大综合网| 国产精品你懂的在线| 最近看过的日韩成人| 国产一区在线视频| 一区二区三区视频在线观看| 亚洲人成亚洲人成在线观看| 久久狠狠亚洲综合| 欧美一级视频免费在线观看| 欧美日产国产成人免费图片| 老司机久久99久久精品播放免费| 国产精品一区二区欧美| 一区二区欧美视频| 一区二区三区成人| 亚洲精品视频在线| 亚洲精品视频一区二区三区| 久久福利影视| 久久午夜羞羞影院免费观看| 国产欧美韩日| 亚洲欧美福利一区二区| 亚洲女同性videos| 国产精品国产三级国产aⅴ入口| 亚洲三级免费| 一区二区三区免费网站| 欧美日本在线一区| 日韩系列欧美系列| 亚洲一本视频| 国产精品成人一区二区艾草| 一区二区三区视频在线观看| 亚洲一区在线免费| 国产精品日韩欧美一区二区| 一区二区三区.www| 欧美一区二区三区日韩| 国产精品亚发布| 久久www成人_看片免费不卡| 麻豆av福利av久久av| 91久久线看在观草草青青| 欧美成人福利视频| 亚洲精品一区在线| 欧美一级片一区| 在线成人av| 欧美精品一区二区三区蜜臀| 亚洲精品在线看| 欧美亚洲免费在线| 在线日本高清免费不卡| 欧美激情一区| 亚洲综合第一| 欧美电影打屁股sp| 亚洲午夜一区二区三区| 国产精品综合久久久| 久久久久久亚洲精品杨幂换脸 | 久久一区二区三区国产精品| 亚洲大片在线| 国产精品爱啪在线线免费观看| 亚洲男女自偷自拍| 每日更新成人在线视频| 一本大道久久精品懂色aⅴ| 国产精品羞羞答答xxdd| 免费成人小视频| 一区二区三区久久网| 免费不卡视频| 亚洲欧美制服中文字幕| 亚洲第一在线综合网站| 国产精品久久久久999| 久久女同精品一区二区| 一区二区三区四区蜜桃| 欧美成人在线免费视频| 欧美一区二区三区久久精品| 亚洲国产精品一区二区尤物区| 国产精品久久久久久一区二区三区 | 日韩一区二区免费高清| 久久综合图片| 香蕉久久国产| 一区二区三区欧美亚洲| 亚洲观看高清完整版在线观看| 国产精品成人在线| 欧美国产日韩xxxxx| 久久久久久久久蜜桃| 亚洲欧美日韩国产成人| 亚洲免费观看高清在线观看| 男人天堂欧美日韩| 亚洲人成网站色ww在线 | 亚洲午夜黄色| 亚洲国产高清视频| 国内久久精品视频| 国产欧美日韩亚州综合| 欧美午夜一区二区三区免费大片| 免费视频最近日韩| 久久综合九色九九|