<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          是噱頭嗎,竟用中文擼了個(gè)操作系統(tǒng)!

          共 2935字,需瀏覽 6分鐘

           ·

          2022-04-12 00:38

          整理 | 鄭麗媛 、出品 | CSDN(ID:CSDNnews)

          對(duì)許多不擅長英語的編程萌新來說,乍一看代碼中各類英文關(guān)鍵字 、變量名、函數(shù)名等,難免十分頭大,甚至還會(huì)對(duì)自己能否學(xué)好編程提出質(zhì)疑。

          如此心境下,他們腦海中往往會(huì)冒出一種想法:“要是可以用中文編程就好了。”

          你還別說,最近真有人落實(shí)了這個(gè)想法:一位湖南長沙的軟件工程師 Jason.shao 用中文編寫了一個(gè)操作系統(tǒng),并自信道:“火龍操作系統(tǒng)是全宇宙首個(gè)采用中文編寫的操作系統(tǒng)”

          自創(chuàng)了甲、乙、丙語言

          既然要開發(fā)操作系統(tǒng),編程語言必不可少——為了更好地“砍柴”,Jason.shao 自然要先“磨刀”,為此他創(chuàng)建了三種編程語言,取名還透著一分隨性:

          • 甲語言:一門對(duì)機(jī)器碼助記語言,讓人更容易理解的語言,發(fā)明目的是為了開發(fā)操作系統(tǒng)。
          • 乙語言:一門對(duì)甲語言進(jìn)行結(jié)構(gòu)化過程化的語言,發(fā)明目的是為了提高開發(fā)效率。
          • 丙語言:一門面向?qū)ο蟮母呒?jí)語言,可以理解為把任何東西看做是一個(gè)對(duì)象,這個(gè)對(duì)象應(yīng)該有什么樣的屬性,面向?qū)ο笳Z言更容易用計(jì)算機(jī)去描繪這個(gè)世界。

          “刀”磨好了之后,Jason.shao 便開始設(shè)計(jì)其“全宇宙首個(gè)采用中文編寫的操作系統(tǒng)”。

          據(jù)項(xiàng)目介紹,火龍操作系統(tǒng)使用其自創(chuàng)的甲語言和乙語言開發(fā),支持 64 位多核多任務(wù)圖形化、分頁式內(nèi)存管理,還擁有 Windows 11 界面風(fēng)格,支持 x86_64、ARMv8(僅 QEMU 測試)架構(gòu)。

          與此同時(shí),火龍操作系統(tǒng)具備一系列基礎(chǔ)功能,甚至還在向區(qū)塊鏈、元宇宙方向進(jìn)發(fā)(第14、15條):

          1.中文顯示。

          2.圖片顯示。

          3.文本閱讀。

          4.支持32位真色彩,最高2560*1080分辨率。

          5.實(shí)現(xiàn)300個(gè)常用win api,支持部分exe程序。

          6.全新文件系統(tǒng)。

          7.支持USB。

          8.支持sb16、ac97、es1370、es1371、hda等聲卡。

          9.支持Ne2000、PCnet、intel 82545EM、intel 82574L、intel 82579LM等網(wǎng)卡。

          10.支持物理機(jī)Tiger Lake核顯,Vmeare svga Ⅱ虛擬顯卡。

          11.紅白機(jī)游戲。

          12.自舉編譯。

          13.斯坦福兔子。

          14.區(qū)塊鏈元宇宙(正在進(jìn)行中)。

          15.元宇宙之鏡像世界(正在進(jìn)行中)。

          光說無用,Jason.shao 還在項(xiàng)目介紹中特地展示了幾張火龍操作系統(tǒng)的運(yùn)行截圖:

          從運(yùn)行效果來看,火龍操作系統(tǒng)的整體表現(xiàn)可圈可點(diǎn),那么接下來需要驗(yàn)證的就是它是否真的由中文編寫。

          隨便點(diǎn)開一個(gè)系統(tǒng)中的內(nèi)存管理源代碼:

          有點(diǎn)不信邪?那就再打開一個(gè)圖層管理代碼:

          由此可以看出,火龍操作系統(tǒng)的源碼“畫風(fēng)”顯然區(qū)別于往常見到的其他代碼,滿屏中文也印證了其“用中文編寫”的特點(diǎn)。

          “抄襲”風(fēng)波?

          然而,就在我們驚嘆于 Jason.shao 真的可以用中文編寫操作系統(tǒng)的時(shí)候,項(xiàng)目評(píng)論中 @dragon-os 的一條留言卻激起了巨大討論:

          這個(gè)就是日本人川合秀實(shí)《30 天自制操作系統(tǒng)》里的“紙娃娃操作系統(tǒng)”,所謂的“甲語言”其實(shí)就是 asm 匯編語言,使用了拙劣的文本替換方式,把諸如 mov 這樣的指令用蹩腳的“移送”來替換,就是換了個(gè)名稱罷了。“乙語言”就是 c 語言。那個(gè) z_tools 目錄就是《30 天自制操作系統(tǒng)》源碼光盤里的文件夾,太明顯了。

          《30 天自制操作系統(tǒng)》是什么?簡單來說這是一本從計(jì)算機(jī)構(gòu)造、匯編語言、C 語言等角度全面解說如何自制操作系統(tǒng)的書籍,旨在幫助開發(fā)者從零編寫所有代碼、30 天即可創(chuàng)建出一個(gè)具有窗口系統(tǒng)的 32 位多任務(wù)操作系統(tǒng)。

          而據(jù) @dragon-os 分析,火龍操作系統(tǒng)其實(shí)就是這本書里的“紙娃娃操作系統(tǒng)”,甚至項(xiàng)目中的“z_tools 目錄”也是《30 天自制操作系統(tǒng)》源碼光盤里的文件夾,盜用痕跡“太明顯”。

          面對(duì)負(fù)面質(zhì)疑,項(xiàng)目作者 Jason.shao 直接在評(píng)論區(qū)回復(fù)道:

          “請(qǐng)你仔細(xì)閱讀 30 天自制操作系統(tǒng)的開源協(xié)議再來吐槽,作者明確說明了代碼可以隨意修改,修改后的代碼也不必開源,拿來商用都是可以的,關(guān)于本項(xiàng)目之后的代碼都不在開源!”

          不僅如此,Jason.shao 也早在“參考文獻(xiàn)”中,明確指出項(xiàng)目有引用這本書籍:

          盡管 Jason.shao 已將事件起因解釋清楚,但仍有部分開發(fā)者認(rèn)為這種行為須注明來源

          @akemimadoka:“請(qǐng)注明基于《30天自制操作系統(tǒng)》的源碼開發(fā)。”

          @longware:“這種非 100% 自研,建議作者加個(gè)標(biāo)注。”

          不過也有很多人肯定 Jason.shao 勇于嘗試的精神

          @安靜書生:“不可否認(rèn),短期內(nèi)沒有任何意義,但是如果作者堅(jiān)持下去了,有更多人參與進(jìn)來,可能會(huì)引起革命性的變化,支持作者。”

          @pcd:“思路還是挺好。甲語言直接用編譯器批量替換成機(jī)器碼,乙語言用編譯器轉(zhuǎn)換成 C 語言然后用編譯,丙語言直接使用 C# 批量替換編譯。最妙的是這玩意兒竟然真的跑起來了!”

          @久永:“無論成敗如何,為行動(dòng)者點(diǎn)贊,為開拓者喝彩!”

          中文編程是否必要?

          在眾多評(píng)論中,還有一種中立的聲音:“首先點(diǎn)贊, 但還是不明白用中文的意義何在”。

          如文章開頭所說,很多會(huì)產(chǎn)生“想用中文編程”這一想法的人中,最大的原因就是:英語不好。

          那么不擅長英語是否真的會(huì)影響編程學(xué)習(xí),中文編程必要嗎?對(duì)于這個(gè)問題,答案可能因人而異。

          • 支持中文編程

          這一觀點(diǎn)可結(jié)合“@qwas982 曾請(qǐng)求 C# 團(tuán)隊(duì)開發(fā)特制的中文版”這一事件,當(dāng)時(shí)其對(duì)于中文編程的呼吁引起了諸多人關(guān)注。

          針對(duì)“編程中沒有多少英文相關(guān)的語法更費(fèi)力的是背景知識(shí)學(xué)習(xí)”這一觀點(diǎn),身為多年程序員的@吳烜曾反對(duì)道:“編程仍然有英文語法相關(guān)性,需要學(xué)習(xí)背景知識(shí)不意味著不需要進(jìn)一步降低學(xué)習(xí)編程語言的門檻。”

          美籍華裔程序員 Brian 也曾發(fā)出感慨:“對(duì)我來說,英文的資源簡直就是理所應(yīng)當(dāng),以至于我根本難以想象如果代碼或文檔用別的語言寫會(huì)是什么模樣。如果不會(huì)英文的話,人們就會(huì)很容易埋沒在那些起步更早、作出更大貢獻(xiàn)的程序員的陰影之中。”

          • 中文編程不必要

          同時(shí),也有部分開發(fā)者認(rèn)為,想要中文編程的人大多是“編程門外漢”:以為自己之所以學(xué)不好編程,是因?yàn)椴贿m應(yīng)英語。

          但實(shí)際上,換成“漢語”他們也還是不適應(yīng)。因?yàn)樗麄儾贿m應(yīng)的不是英語,而是結(jié)構(gòu)化思考和表達(dá)。中文編程看似會(huì)降低入門門檻,但不論中文還是英文,復(fù)雜的編程思維并不會(huì)變。

          那么,對(duì)于以上觀點(diǎn),你有什么看法呢?

          參考鏈接:

          • https://www.zhihu.com/question/21203610/answer/17615559
          • https://so.csdn.net/so/search?q=%E8%8B%B1%E8%AF%AD%E4%B8%8D%E5%A5%BD%E8%83%BD%E5%AD%A6%E7%BC%96%E7%A8%8B&t=&u=

          你好,我是公子龍,畢業(yè)于中科院,前大型計(jì)算機(jī)競賽冠軍,現(xiàn)大廠工程師,拿過九家大廠的 offer 。


          北漂七年,從小白到計(jì)算機(jī)競賽冠軍,讀研時(shí)通過實(shí)習(xí)和比賽收入 50 萬,點(diǎn)擊藍(lán)字查看我的編程之路


          同時(shí),我也是 b 站 up 主:公子龍龍龍,日常分享高質(zhì)量資料,輸出面試、工作經(jīng)驗(yàn),歡迎圍觀。


          瀏覽 59
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  操逼在线观看 | 欧美 日韩 国产在线观看 | 2024国产精品自拍 | 青青草在线播放 | 人人摸人人看人人 |