自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

這個(gè)地方的程序員太閑了,寫(xiě)了三個(gè)世界流行的操作系統(tǒng)!

開(kāi)發(fā) 前端
Andreas開(kāi)發(fā)寧?kù)oOS則是為了逃離毒癮,Ville M. Turjanmaa用匯編寫(xiě)MenuetOS,是因?yàn)閰R編性能高。他發(fā)現(xiàn)Linux中那些C/C++寫(xiě)的組件用匯編重寫(xiě)時(shí),性能可以提升10%~40%,于是就開(kāi)始重寫(xiě)了。

世界上有個(gè)地方,這里的程序員似乎特別閑,特別喜歡開(kāi)發(fā)操作系統(tǒng)。

這個(gè)地方就是北歐。

1991年,芬蘭的程序員Linus Torvalds開(kāi)發(fā)了Linux,現(xiàn)在已經(jīng)統(tǒng)治世界。

2018年,瑞典程序員Andreas Kling為了戒除毒癮,完全從頭兒開(kāi)始,開(kāi)發(fā)操作系統(tǒng)。

圖片圖片

在短短的半年時(shí)間內(nèi),單槍匹馬構(gòu)建了普通程序員幾年,甚至十幾年才能搞定的東西:操作系統(tǒng)內(nèi)核、TCP/IP協(xié)議、GUI框架、進(jìn)程管理器、文件瀏覽器、文本編輯器、界面編輯器、貪吃蛇游戲、繪圖工具......

這個(gè)叫做寧?kù)o(SerenityOS)的操作系統(tǒng),從操作系統(tǒng)內(nèi)核到上層應(yīng)用系統(tǒng),全是重寫(xiě)的,太可怕了。

圖片圖片

今天我們要說(shuō)的是另外一個(gè)芬蘭人Ville M. Turjanmaa的驚世之作:MenuetOS。

圖片圖片

和Linux和寧?kù)oOS不同,MenuetOS的最大特點(diǎn)是:全部用匯編寫(xiě)成!

它小得驚人,最小的版本可以放到一個(gè)1.44M的軟盤(pán)當(dāng)中!

它快得驚人,即使是Intel Pentium MMX 200 MHz,啟動(dòng)時(shí)間也僅需5秒。

你可能會(huì)問(wèn):這是不是一個(gè)玩具操作系統(tǒng)???就像大學(xué)生的畢業(yè)設(shè)計(jì)一樣。

其實(shí)判斷一個(gè)操作系統(tǒng)是不是玩具,我覺(jué)得看這幾個(gè)方面就行。

1.有沒(méi)有圖形用戶界面

簡(jiǎn)單的操作系統(tǒng)內(nèi)核現(xiàn)在非常成熟,要想實(shí)現(xiàn)GUI,那工作量嗖嗖就上去了。

2.是否支持網(wǎng)絡(luò)訪問(wèn)

MenuetOS實(shí)現(xiàn)了TCP/IP,也是用匯編寫(xiě)的!你看看它的API:

rax = 53
rbx = 5
rcx = local port
rdx = remote port
rsi = remote ip address ( in internet byte order )
rdi = mode : SOCKET_PASSIVE or SOCKET_ACTIVE  ( defined in stack.inc )
The socket number allocated is returned in rax.

用匯編方式打開(kāi)一個(gè)TCP socket ,太瘋狂了。

MenuetOS也實(shí)現(xiàn)了自己的瀏覽器,雖然還比較簡(jiǎn)單。

圖片圖片

3.能不能跑大型游戲

這是個(gè)重要指標(biāo),能看出它的兼容性和性能。

在MenuetOS上是可以跑QUAKE和DOOM的。

圖片圖片

除此之外,它還實(shí)現(xiàn)了libc,網(wǎng)絡(luò)驅(qū)動(dòng),圖形驅(qū)動(dòng),聲音驅(qū)動(dòng),API全部是匯編。

圖片圖片

用匯編寫(xiě)過(guò)程序的朋友知道,這個(gè)玩意兒實(shí)在是太低級(jí)了。

一個(gè)小小的hello world就需要寫(xiě)一大堆代碼,寫(xiě)出來(lái)的代碼非常難以理解。

圖片圖片

當(dāng)然,匯編是操作系統(tǒng)啟動(dòng)時(shí)不可或缺的部分,但是一旦進(jìn)入內(nèi)核,就可以用C語(yǔ)言來(lái)寫(xiě)其他功能了。

但是MenuetOS的功能全部由匯編編寫(xiě),實(shí)在是不可思議。

Linus寫(xiě)Linux是“Just for Fun”,他自己也沒(méi)想到Linux將來(lái)會(huì)統(tǒng)治世界,能成為一種全新的開(kāi)發(fā)模式。

圖片

Andreas開(kāi)發(fā)寧?kù)oOS則是為了逃離毒癮,Ville M. Turjanmaa用匯編寫(xiě)MenuetOS,是因?yàn)閰R編性能高。

他發(fā)現(xiàn)Linux中那些C/C++寫(xiě)的組件用匯編重寫(xiě)時(shí),性能可以提升10%~40%,于是就開(kāi)始重寫(xiě)了。

在我們看來(lái),這純屬于吃飽了飯沒(méi)事干,996那么累,下班了打打游戲,刷刷短視頻多好。

寫(xiě)什么操作系統(tǒng)嘛!給錢嗎?

有開(kāi)源免費(fèi)的Linux在前,再寫(xiě)個(gè)操作系統(tǒng)有啥用?還用匯編?自己折磨自己?

但是Ville M. Turjanmaa根本不管這些,MenuetOS從2000年開(kāi)始開(kāi)發(fā),打磨了整整15年以后,才發(fā)布1.0版本。

然后1.02、1.05、1.15、1.21...... 直到2024年的1.51版。

在匯編操作系統(tǒng)這條道路上,Ville M. Turjanmaa走了24年,也沒(méi)看到他從中賺到什么錢。

可以說(shuō),沒(méi)有巨大的熱情、興趣,沒(méi)有充足的時(shí)間,絕對(duì)不可能堅(jiān)持到現(xiàn)在。

這種不考慮利益,可以完全憑興趣搞事情的環(huán)境,才是創(chuàng)新能不斷涌現(xiàn)的土壤。

這可能就是北歐程序員能寫(xiě)出Linux、MySQL、Chrome V8、MineCraft、cURL、SSH、QT、Unity的重要原因吧!

責(zé)任編輯:武曉燕 來(lái)源: 碼農(nóng)翻身
相關(guān)推薦

2025-02-13 09:14:45

2023-11-28 09:03:50

架構(gòu)Instagram

2011-12-20 10:41:36

程序員

2020-03-31 08:42:14

程序員操作系統(tǒng) Linux

2015-09-24 09:04:36

程序員

2013-04-10 09:35:22

程序員

2023-09-11 08:59:35

2013-06-14 11:16:14

2021-05-24 10:05:14

程序員技能開(kāi)發(fā)者

2015-08-12 14:39:47

程序員問(wèn)題

2021-07-01 07:43:41

項(xiàng)目程序員代碼

2018-01-26 14:22:31

程序員發(fā)展連接

2015-05-18 09:35:44

操作系統(tǒng)

2024-10-30 09:38:34

2011-06-15 08:39:10

程序員

2009-02-09 16:30:58

Phantom OS操作系統(tǒng)程俄羅斯

2021-05-23 12:00:08

程序員技能開(kāi)發(fā)者

2018-11-09 09:10:19

程序員技能開(kāi)發(fā)者

2018-05-02 12:58:19

2018-06-07 16:20:56

代碼代碼質(zhì)量程序員
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)