{eval=Array;=+count(Array);}

国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

問答專欄Q & A COLUMN

仿頭條之問:為什么當年Linus不用c#去寫Linux系統?是這樣嗎?

ZackZack 回答0 收藏1
收藏問題

10條回答

Yujiaao

Yujiaao

回答于2022-06-28 11:34

這個問題問得過于外行,超出預料之外。不用C#的原因,是因為C#是基于.NET框架的語言體系,是微軟搞出來的一套開發語言。它是面向應用層的,建立在.NET框架上;而.NET又基于操作系統之上。所以,如果用它來寫操作系統,無異于在一個操作系統上安裝.NET框架后再寫一個操作系統,這個邏輯根本就行不通!能寫操作系統的一定是支持交叉編譯工具鏈的語言或者匯編,但凡需要框架支持的高級語言都沒戲。所以不要再問這種幼稚的問題了。

評論0 贊同0
  •  加載中...
Zachary

Zachary

回答于2022-06-28 11:34

哈哈,你這仿的有點那個意思了,我也來一個:

據說蘋果的系統就是基于Linux開發的,為什么Linus沒有做出Linux手機呢?

補充:發現一堆回答的人,只有我一個認真看題了,哈哈。

評論0 贊同0
  •  加載中...
linkin

linkin

回答于2022-06-28 11:34

寫內核,不會用任何自動的內存管理機制。連C++都不行,更不用說有GC的語言。

評論0 贊同0
  •  加載中...
Meathill

Meathill

回答于2022-06-28 11:34

linus連c++都看不上,何況c井,linux的可移植性很大程度來自于c,c#這方面差距不是一般的大。另外從性能角度來說c#更是差了十萬八千里。用rust寫個操作系統也好過c#

評論0 贊同0
  •  加載中...
wthee

wthee

回答于2022-06-28 11:34

因為當時沒有c#,c#也不適合,就這么簡單。

你這個問題就像在問,“為什么劉邦沒有請諸葛亮出山”一樣。

評論0 贊同0
  •  加載中...
legendmohe

legendmohe

回答于2022-06-28 11:34

1.Linux發布時間早于c#

Linux發布時間:

c#發布時間

可以看到.Linux都有九年歷史之后c#才誕生.

2.Linux上開源社區的.c#是微軟開發的.兩個范圍的東西.

3.Linux采用c語言的原因最主要的是c語言執行效率高.

而c#是微軟公司開發的,對效率沒有太大追求的語言.

評論0 贊同0
  •  加載中...
dreamtecher

dreamtecher

回答于2022-06-28 11:34

windows vista部分代碼是c#寫的卡的一批,我覺得你這問題還不夠有深度,你應該問問linux,為啥不用微軟的畫板畫個系統出來。。。。干嘛苦哈哈的寫那痛苦的c。

評論0 贊同0
  •  加載中...
habren

habren

回答于2022-06-28 11:34

用C#開發和java開發在此例子中沒啥區別。

用C#開發的成品,必須帶.net平臺。啥叫.net平臺?你可以認為是java虛擬機。

.net平臺解析C#編譯完的成品:byte-code。你可以理解為軟件做的的指令集,.net把它翻譯成硬件指令,然后程序才能跑。

在還沒有任何操作系統的情況下,也就沒有.net,你C#所依賴的運行環境都沒有,怎么去開發操作系統?

所以操作系統必須是編譯結果為硬件指令級別的程序,例如匯編和C。

評論0 贊同0
  •  加載中...
chinafgj

chinafgj

回答于2022-06-28 11:34

所有有GC的需要都無法勝任編寫操作系統的任務。

且不說實時操作系統,就通用操作系統來說都是很吃力的。沒有那個內核能接受周期性的停止所有操作,進行內存回收的機制。最簡單的,內核需要處理硬件中斷,而在硬件中斷的處理方法中是不能停止的,更無法接受內存變動。

評論0 贊同0
  •  加載中...
MageekChiu

MageekChiu

回答于2022-06-28 11:34

這個方面,郭德綱是最專業的。他覺得是因為同行微軟不允許這么做,擔心wibdows被搶了生意,所以,才不用c#的,畢竟c#也是微軟的。

評論0 贊同0
  •  加載中...

最新活動

您已邀請0人回答 查看邀請

我的邀請列表

  • 擅長該話題
  • 回答過該話題
  • 我關注的人
向幫助了您的網友說句感謝的話吧!
付費偷看金額在0.1-10元之間
<