注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當前位置: 首頁出版圖書科學技術(shù)計算機/網(wǎng)絡操作系統(tǒng)30天自制操作系統(tǒng)

30天自制操作系統(tǒng)

30天自制操作系統(tǒng)

定 價:¥99.00

作 者: (日)川合秀實 著 周自恒 等 譯
出版社: 人民郵電出版社
叢編項:
標 簽: 操作系統(tǒng)/系統(tǒng)開發(fā) 計算機/網(wǎng)絡 系統(tǒng)開發(fā)

ISBN: 9787115287960 出版時間: 2012-08-01 包裝: 平裝
開本: 16開 頁數(shù): 字數(shù):  

內(nèi)容簡介

  這是一本兼具趣味性、實用性與學習性的操作系統(tǒng)圖書。作者從計算機的構(gòu)造、匯編語言、C語言開始解說,讓讀者在實踐中掌握算法。在這本書的指導下,從零編寫所有代碼,30天后就可以制作出一個具有窗口系統(tǒng)的32位多任務操作系。本書適合操作系統(tǒng)愛好者和程序設計人員閱讀。

作者簡介

  川合秀實(Hidemi Kawai),生于1975年,是一位以“輕量化”編程思想見長的“非主流”開發(fā)者。2000年因自行開發(fā)的OSASK項目而名聲大噪。OSASK是一個開源的32位微型操作系統(tǒng),它并非以Linux等內(nèi)核為基礎,而是完全從零開始開發(fā),在一張軟盤的容量下實現(xiàn)了GUI、多任務、多語言等高級特性,啟動時間只需1秒。本書的內(nèi)容可以看成是作者以OSASK為藍本,教會讀者從零開始開發(fā)一個操作系統(tǒng),同時可以讓初學者在編寫操作系統(tǒng)的過程中,了解操作系統(tǒng)背后更多的知識。

圖書目錄

第0天  著手開發(fā)之前
1  前言
2  何謂操作系統(tǒng)
3  開發(fā)操作系統(tǒng)的各種方法
4  無知則無畏
5  如何開發(fā)操作系統(tǒng)
6  操作系統(tǒng)開發(fā)中的困難
7  學習本書時的注意事項(重要?。?br /> 8  各章內(nèi)容摘要

第1天  從計算機結(jié)構(gòu)到匯編程序入門
1  先動手操作
2  究竟做了些什么
3  初次體驗匯編程序
4  加工潤色

第2天  匯編語言學習與Makefile入門
1  介紹文本編輯器
2  繼續(xù)開發(fā)
3  先制作啟動區(qū)
4  Makefile入門

第3天  進入32位模式并導入C語言
1  制作真正的IPL
2  試錯
3  讀到18扇區(qū)
4  讀入10個柱面
5  著手開發(fā)操作系統(tǒng)
6  從啟動區(qū)執(zhí)行操作系統(tǒng)
7  確認操作系統(tǒng)的執(zhí)行情況
8  32位模式前期準備
9  開始導入C語言
10  實現(xiàn)HLT(harib00j)

第4天  C語言與畫面顯示的練習
1  用C語言實現(xiàn)內(nèi)存寫入(harib01a)
2  條紋圖案(harib01b)
3  挑戰(zhàn)指針(harib01c)
4  指針的應用(1)(harib01d)
5  指針的應用(2)(harib01e)
6  色號設定(harib01f)
7  繪制矩形(harib01g)
8  今天的成果(harib01h)

第5天  結(jié)構(gòu)體、文字顯示與GDT/IDT初始化
1  接收啟動信息(harib02a)
2  試用結(jié)構(gòu)體(harib02b)
3  試用箭頭記號(harib02c)
4  顯示字符(harib02d)
5  增加字體(harib02e)
6  顯示字符串(harib02f)
7  顯示變量值(harib02g)
8  顯示鼠標指針(harib02h)
9  GDT與IDT的初始化(harib02i)

第6天  分割編譯與中斷處理
1  分割源文件(harib03a)
2  整理Makefile(harib03b)
3  整理頭文件(harib03c)
4  意猶未盡
5  初始化PIC(harib03d)
6  中斷處理程序的制作(harib03e)

第7天  FIFO與鼠標控制
1  獲取按鍵編碼(hiarib04a)
2  加快中斷處理(hiarib04b)
3  制作FIFO緩沖區(qū)(hiarib04c)
4  改善FIFO緩沖區(qū)(hiarib04d)
5  整理FIFO緩沖區(qū)(hiarib04e)
6  總算講到鼠標了(harib04f)
7  從鼠標接受數(shù)據(jù)(harib04g)

第8天  鼠標控制與32位模式切換
1  鼠標解讀(1)(harib05a)
2  稍事整理(harib05b)
3  鼠標解讀(2)(harib05c)
4  移動鼠標指針(harib05d)
5  通往32位模式之路

第9天  內(nèi)存管理
1  整理源文件(harib06a)
2  內(nèi)存容量檢查(1)(harib06b)
3  內(nèi)存容量檢查(2)(harib06c)
4  挑戰(zhàn)內(nèi)存管理(harib06d)

第10天  疊加處理
1  內(nèi)存管理(續(xù))(harib07a)
2  疊加處理(harib07b)
3  提高疊加處理速度(1)(harib07c)
4  提高疊加處理速度(2)(harib07d)

第11天  制作窗口
1  鼠標顯示問題(harib08a)
2  實現(xiàn)畫面外的支持(harib08b)
3  shtctl的指定省略(harib08c)
4  顯示窗口(harib08d)
5  小實驗(harib08e)
6  高速計數(shù)器(harib08f)
7  消除閃爍(1)(harib08g)
8  消除閃爍(2)(harib08h)

第12天  定時器(1)
1  使用定時器(harib09a)
2  計量時間(harib09b)
3  超時功能(harib09c)
4  設定多個定時器(harib09d)
5  加快中斷處理(1)(harib09e)
6  加快中斷處理(2)(harib09f)
7  加快中斷處理(3)(harib09g)

第13天  定時器(2)
1  簡化字符串顯示(harib10a)
2  重新調(diào)整FIFO緩沖區(qū)(1)(harib10b)
3  測試性能(harib10c~harib10f)
4  重新調(diào)整FIFO緩沖區(qū)(2)(harib10g)
5  加快中斷處理(4)(harib10h)
6  使用“哨兵”簡化程序(harib10i)

第14天  高分辨率及鍵盤輸入
1  繼續(xù)測試性能(harib11a~harib11c)
2  提高分辨率(1)(harib11d)
3  提高分辨率(2)(harib11e)
4  鍵盤輸入(1)(harib11f)
5  鍵盤輸入(2)(harib11g)
6  追記內(nèi)容(1)(harib11h)
7  追記內(nèi)容(2)(harib11i)

第15天  多任務(1)
1  挑戰(zhàn)任務切換(harib12a)
2  任務切換進階(harib12b)
3  做個簡單的多任務(1)(harib12c)
4  做個簡單的多任務(2)(harib12d)
5  提高運行速度(harib12e)
6  測試運行速度(harib12f)
7  多任務進階(harib12g)

第16天  多任務(2)
1  任務管理自動化(harib13a)
2  讓任務休眠(harib13b)
3  增加窗口數(shù)量(harib13c)
4  設定任務優(yōu)先級(1)(harib13d)
5  設定任務優(yōu)先級(2)(harib13e)

第17天  命令行窗口
1  閑置任務(harib14a)
2  創(chuàng)建命令行窗口(harib14b)
3  切換輸入窗口(harib14c)
4  實現(xiàn)字符輸入(harib14d)
5  符號的輸入(harib14e)
6  大寫字母與小寫字母(harib14f)
7  對各種鎖定鍵的支持(harib14g)

第18天  dir命令
1  控制光標閃爍(1)(harib15a)
2  控制光標閃爍(2)(harib15b)
3  對回車鍵的支持(harib15c)
4  對窗口滾動的支持(harib15d)
5  mem命令(harib15e)
6  cls命令(harib15f)
7  dir命令(harib15g)

第19天  應用程序
1  type命令(harib16a)
2  type命令改良(harib16b)
3  對FAT的支持(harib16c)
4  代碼整理(harib16d)
5  第一個應用程序(harib16e)

第20天  API
1  程序整理(harib17a)
2  顯示單個字符的API(1)(harib17b)
3  顯示單個字符的API(2)(harib17c)
4  結(jié)束應用程序(harib17d)
5  不隨操作系統(tǒng)版本而改變的API(harib17e)
6  為應用程序自由命名(harib17f)
7  當心寄存器(harib17g)
8  用API顯示字符串(harib17h)

第21天  保護操作系統(tǒng)
1  攻克難題--字符串顯示API(harib18a)
2  用C語言編寫應用程序(harib18b)
3  保護操作系統(tǒng)(1)(harib18c)
4  保護操作系統(tǒng)(2)(harib18d)
5  對異常的支持(harib18e)
6  保護操作系統(tǒng)(3)(harib18f)
7  保護操作系統(tǒng)(4)(harib18g)

第22天  用C語言編寫應用程序
1  保護操作系統(tǒng)(5)(harib19a)
2  幫助發(fā)現(xiàn)bug(harib19b)
3  強制結(jié)束應用程序(harib19c)
4  用C語言顯示字符串(1)(harib19d)
5  用C語言顯示字符串(2)(harib19e)
6  顯示窗口(harib19f)
7  在窗口中描繪字符和方塊(harib19g)

第23天  圖形處理相關
1  編寫malloc(harib20a)
2  畫點(harib20b)
3  刷新窗口(harib20c)
4  畫直線(harib20d)
5  關閉窗口(harib20e)
6  鍵盤輸入API(harib20f)
7  用鍵盤輸入來消遣一下(harib20g)
8  強制結(jié)束并關閉窗口(harib20h)

第24天  窗口操作
1  窗口切換(1)(harib21a)
2  窗口切換(2)(harib21b)
3  移動窗口(harib21c)
4  用鼠標關閉窗口(harib21d)
5  將輸入切換到應用程序窗口(harib21e)
6  用鼠標切換輸入窗口(harib21f)
7  定時器API(harib21g)
8  取消定時器(harib21h)

第25天  增加命令行窗口
1  蜂鳴器發(fā)聲(harib22a)
2  增加更多的顏色(1)(harib22b)
3  增加更多的顏色(2)(harib22c)
4  窗口初始位置(harib22d)
5  增加命令行窗口(1)(harib22e)
6  增加命令行窗口(2)(harib22f)
7  增加命令行窗口(3)(harib22g)
8  增加命令行窗口(4)(harib22h)
9  變得更像真正的操作系統(tǒng)(1)(harib22i)
10  變得更像真正的操作系統(tǒng)(2)(harib22j)

第26天  為窗口移動提速
1  提高窗口移動速度(1)(harib23a)
2  提高窗口移動速度(2)(harib23b)
3  提高窗口移動速度(3)(harib23c)
4  提高窗口移動速度(4)(harib23d)
5  啟動時只打開一個命令行窗口(harib23e)
6  增加更多的命令行窗口(harib23f)
7  關閉命令行窗口(1)(harib23g)
8  關閉命令行窗口(2)(harib23h)
9  start命令(harib23i)
10  ncst命令(harib23j)

第27天  LDT與庫
1  先來修復bug(harib24a)
2  應用程序運行時關閉命令行窗口(harib24b)
3  保護應用程序(1)(harib24c)
4  保護應用程序(2)(harib24d)
5  優(yōu)化應用程序的大?。╤arib24e)
6  庫(harib24f)
7  整理make環(huán)境(harib24g)

第28天  文件操作與文字顯示
1  alloca(1)(harib25a)
2  alloca(2)(harib25b)
3  文件操作API(harib25c)
4  命令行API(harib25d)
5  日文文字顯示(1)(harib25e)
6  日文文字顯示(2)(harib25f)
7  日文文字顯示(3)(harib25g)

第29天  壓縮與簡單的應用程序
1  修復bug(harib26a)
2  文件壓縮(harib26b)
3  標準函數(shù)
4  非矩形窗口(harib26c)
5  bball(harib26d)
6  外星人游戲(harib26e)

第30天  高級的應用程序
1  命令行計算器(harib27a)
2  文本閱覽器(harib27b)
3  MML播放器(harib27c)
4  圖片閱覽器(harib27d)
5  IPL的改良(harib27e)
6  光盤啟動(harib27f)

第31天  寫在開發(fā)完成之后
1  繼續(xù)開發(fā)要靠大家的努力
2  關于操作系統(tǒng)的大小
3  操作系統(tǒng)開發(fā)的訣竅
4  分享給他人使用
5  關于光盤中的軟件
6  關于開源的建議
7  后記
8  畢業(yè)典禮
9  附錄

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號