幾經考慮過後發現c 的確不適合於寫作業系統

2021-09-05 13:46:30 字數 741 閱讀 6774

2.c++在編寫作業系統時能使用的特性有函式過載,訪問許可權限制,但這對系統編寫的有益貢獻實在太少,而且由於c++編譯器對c++的函式的命名擴充套件使得匯程式設計序無法與之介面,必須通過乙個c語言做個c函式外殼,由匯程式設計序呼叫這個外殼,再由這個外殼呼叫c++函式,不旦麻煩,而且效率實在太低了

3.還有一點用c++很吸引人的就是虛函式.按我原來的打算準備在pyos中實現這樣一種介面模式,比如定義乙個統一的vga控制介面(虛基類),然後,實現多個實體類,比如,乙個虛基類定義了乙個print()純虛函式做為乙個介面,而每乙個學生可以寫乙個自己的實體類以實現vga的控制,核心通過虛基類的print呼叫,則可以動態配置使用不同的學生寫的實體類中實現的print()函式。這大大的提高了系統的實驗性質,每個學生都可以用這個系統進行實驗,這應當是用c++寫os的一大優點。但由於c++語言的限制,使這種願望是乎不可能實現。因為c++的虛函式所依靠的多型性質是實現於類的物件,而非實現於類的,也就是說你需要用

物件指標或引用來使用多型,而在作業系統未完成的時候,你是無法使用c++建立全域性物件的,也就是說你無法得到乙個vga類的物件,因此,你就實現上述的介面特性。(注:由於在os完成記憶體分配之前,無法使用c++的物件,因此,如果要使用類,必須使用static宣告類的成員及函式,但是,c++不允許將乙個函式同時宣告為static及virtual)

4.用c++寫os的核心或許真的不是乙個很好的選擇,也許更實際的是用c及asm完成乙個os的微核心,在用c++寫其餘的介面部份~~~

嗯,也許應當重新改造pyos的結構了~~

IBM新任CEO 不考慮分拆公司 聚焦發力人工智慧

techweb 5 月 6 日訊息,據國外 報道,當地時間周二,ibm首席執行官 ceo 阿爾文德克里什納 arvind krishna 表示,他不打算分拆公司,也不會削減5 的股息。今年 1 程式設計客棧月份,ibm宣布,克里什納將接替羅睿蘭 ginni rometty 擔任新的ceo。上個月,克...

馬斯克發推文稱考慮讓特斯拉退市 股價應聲大漲11

鳳凰網科技訊據彭博社北京時間 8 月 8 道,特斯拉ceo埃隆馬斯克 elon musk 當地時間星期二表示,他在考慮使特斯拉退市 將是有史以來規模最大的退市交易,使公司在快速增長期不會時時被華爾街盯著。馬斯克在twitter上發文稱,在考慮使特斯拉以每股 420 美元的 退市,資金不成問題。按每股...