精華區beta Programming 關於我們 聯絡資訊
※ 引述《gsj.bbs@bbs.nchu.edu.tw (國王的新衣)》之銘言: > 我的認知,Kernel通常會有以下的功能: > Semaphores > Event Flags > Mutual Exclusion Semaphores (to reduce priority inversions) > Message Mailboxes > Message Queues > Task Management (Create, Delete, Change Priority, Suspend/Resume etc.) > Fixed Sized Memory Block management > Time Management 這是對一般Mutlitasking的作業系統來說吧? 實際上,對一個Mutlitasking的OS來說,上面所要求的功能也有點怪怪的。 而且如果照上面這麼說,DOS的Kernel就不是Kernel了嗎? > 這還不包含Device Driver、File System以及TCP/IP的 Protocol 在內 > 你確定64K以內可以作到嗎? 做個web server不一定要用上File system的。 TCP/IP的Stack在8051上面implement的話,一般都會使用簡化過的版本。 Device Driver,如果你想維持kernel的獨立,自然是要用個Device Driver。 不過在8051上面,就乾脆一點把控制device需要的功能,整進kernel去就可以了。 > 在64K上面就寫一個web server,這個我相信 > 只是可以掛的網頁內容,可能就不太豐富了 (隨便一張A圖就差不多64K了) 圖片或是網頁的內容不一定要全部存在記憶體裡。 可以放在其他的裝置上,如硬碟上。有需要時,再去讀取。 > 加上 > ROM裡面必須只有單一的web server 程式,不能有OS > 要不然根本就裝不下 > 去問問你學長是不是這樣? > 如果不是,那可就神奇了 > 這樣的東西實用性不高吧! > 我是有想到說你可以外接HDD, > 那麼你就可以將網頁內容裝到HDD內, > 這樣一來就不會受限於64K了 > 可是這樣一來,又多了HDD的Driver 及File system要加進來 > 就又是程式容量空間不夠的問題 > 在我的認知裡,一顆MCU通常只固定安裝一個程式 嗯....時代進步了.... > 而OS存在的目的,在於提供動態載入AP及多工的操作環境 OS存在的目的不是這個吧? 如果是這個,那麼DOS就該死了.... > 這兩個東西兜在一起,有可能嗎? 以Keil C所提供的RTX51來說Code size大約6-8K,Data Size: < 200 Bytes 在網路上面查到的TCP/IP + HTTP的大約佔15-20K,Data Size: < 2K Bytes FAT32 File System(Read only)大約2K,Data Size: < 4K Bytes. 再加上雜七雜八的code及memory的使用。我想64K的ROM Code是綽綽有餘的。 -- Gary W. Lee URL: http://www.dev.idv.tw/ A web site about C/C++, Tcl, Python, wxWidgets, UNIX/Linux, Windows ..., etc. -- ※ Origin: 元智大學 風之塔 <bbs.yzu.edu.tw> ※ From : asgarthr.sentelic.com ※ X-Info: Re: [閒聊]驅動程式漫談-IX ※ X-Sign: 115PGE6CKrdwKYF5kbBA (05/04/13 14:52:54 )