0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

微軟把Linux看作危險(xiǎn)的異類

Linux閱碼場 ? 來源:f ? 2019-04-12 16:44 ? 次閱讀

這是一個(gè)美妙而且瘋狂的時(shí)代,瞬息萬變,一切皆有可能。

曾經(jīng)一度,微軟把Linux看作危險(xiǎn)的異類,想將其扼殺在搖籃之中。而如今,搖身一變,化敵為友,微軟是LINUXFoundation的鉑金級別會員。

根據(jù)LinuxFoundation的官方文檔,鉑金會員是LinuxFoundation最高級別的會員,每年的年費(fèi)為50萬美金。(https://www.linuxfoundation.org/bylaws/)

Platinum    US$ 500,000Gold    US$ 100,000Silver    US$ 20,000 (employee size greater than 5,000)    US$ 15,000 (employee size between 500 and 4,999)    US$ 10,000 (employee size between 100 and 499)    US$ 5,000 (employee size <100)

鉑金級別的會員可以在LinuxFoundation的Board中有一個(gè)席位,制定決策時(shí)有話語權(quán)。

撇開技術(shù)外的不談,從技術(shù)角度看,Windows10引入的WSL(WindowsSubsystemforLinux)非常值得關(guān)注和思考。

簡單來說,WSL就是讓W(xué)indows用戶可以在Windows上使用Linux,運(yùn)行原生的二進(jìn)制程序,不需要重新編譯。

對于從來沒有使用過WSL的格友,強(qiáng)烈推薦你試一下WSL,如果你使用的是Windows10,那么“把大象裝進(jìn)冰箱”只需要三步:

  1. 以管理員身份啟動一個(gè)PowerShell窗口,執(zhí)行Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

  2. 重啟

  3. 打開Windows Store(以前一直覺得沒用的東西,終于有用了),搜索WSL,選擇你喜歡的Linux發(fā)行版本安裝

安裝速度很快,比在虛擬機(jī)里安裝要快很多,比如,選擇Ubuntu的話,連下載帶安裝只要幾分鐘就好了。

接下來就可以享受Linux的短平快了,安裝gcc,gdb,......喜歡什么裝什么,就是一兩條命令的問題。

從名字來看,WSL是為Linux而設(shè)計(jì)的子系統(tǒng)(WindowsSubsystemforLinux)。但是如果深刻分析,冷靜思考,WSL用的并不是Linux內(nèi)核,而是Linux應(yīng)用。

進(jìn)一步說,WSL是讓Linux應(yīng)用可以運(yùn)行在經(jīng)典的NT內(nèi)核之上,不需要重新編譯,實(shí)現(xiàn)二進(jìn)制兼容。

有了WSL后,NT內(nèi)核上便可以肩并肩的運(yùn)行Windows程序和Linux程序,二者可以訪問相同的文件系統(tǒng),可以通信,可以寫作,可以做的事情很多很多......

比如,下面的任務(wù)管理器截圖里便包含了Ubuntu的top進(jìn)程。

微軟把Linux看作危險(xiǎn)的異類

有人可能說,Linux應(yīng)用怎么能跑在NT內(nèi)核上呢?這的確不是一件簡單的事,但是微軟花錢、花時(shí)間做到了。

簡單來說,啟用WSL后,Windows會以驅(qū)動的形式加載一個(gè)名為LxCore的模塊:

SystemRootsystem32driversLXCORE.SYS

某種意義上說,它就是微軟版本的Linux內(nèi)核。

還是舉個(gè)例子來幫助大家快速加深理解吧。

我們曾經(jīng)介紹過Linux內(nèi)核中的SYSC_reboot函數(shù),它是rebootAPI對應(yīng)的系統(tǒng)服務(wù)。更有趣的是,這個(gè)函數(shù)里面雕刻著Linus大神的生日和三個(gè)愛女的生日

在LxCore中,也可以看到這一組神秘的數(shù)字,反匯編名為LxpSyscall_REBOOT的函數(shù),便可以看到。

完整的反匯編結(jié)果有點(diǎn)長,上面截圖是最關(guān)鍵的部分,可以看到有四條比較指令,第一條是比較cmd是不是代表reboot的“FEELDEAD”。第二條便是比較Magic1是不是Linus大神本人的生日1969/12/28。后面三個(gè)比較的目標(biāo)分別是三個(gè)女兒的生日,不多說了。

如此看來,Linus的家庭故事也被雕刻在了Windows操作系統(tǒng)之中,這或許是當(dāng)初Linus編寫這段代碼時(shí)也沒有預(yù)料到的。

下面是調(diào)用LxpSyscall_REBOOT函數(shù)的情景:

截圖中從#05棧幀起的下半部分對應(yīng)的應(yīng)用程序的棧,目前WinDBG還不能回溯出其中的函數(shù)名字,但是已經(jīng)在計(jì)劃內(nèi)了,在LXCORE模塊塊中已經(jīng)準(zhǔn)備了一個(gè)名為PicoWalkUserStack的函數(shù)。

說到這里,大家應(yīng)該堅(jiān)信,WSL中并沒有使用真正的Linux內(nèi)核,而是克隆了一份。于是問題來了,嚴(yán)格說,狹義的Linux就是指Linux內(nèi)核,Linux上的各種應(yīng)用很多都來自GNU或者其它源頭。

從軟件生態(tài)和產(chǎn)業(yè)的角度思考,內(nèi)核本身并不創(chuàng)造價(jià)值,應(yīng)用程序才是用戶真正需要和體現(xiàn)價(jià)值的。如此說來,WSL是讓值錢的Linux應(yīng)用程序可以跑在Windows上,為Linux應(yīng)用提供了一個(gè)新的運(yùn)行環(huán)境。從這個(gè)角度來說,WSL與Linux內(nèi)核無疑是相互競爭的關(guān)系。于是乎,Linux與微軟的關(guān)系又變得非常微妙了,可能是并肩前進(jìn),互利雙贏,也可能是貌合神離,與狼共舞?奇妙的世界,一切皆有可能。


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 微軟
    +關(guān)注

    關(guān)注

    4

    文章

    6554

    瀏覽量

    103896
  • 內(nèi)核
    +關(guān)注

    關(guān)注

    3

    文章

    1360

    瀏覽量

    40185
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11207

    瀏覽量

    208721

原文標(biāo)題:雕刻在NT內(nèi)核中的LINUS故事

文章出處:【微信號:LinuxDev,微信公眾號:Linux閱碼場】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    英特爾Clear Linux上架微軟Azure Marketplace

    Clear Linux是專門針對英特爾架構(gòu)而設(shè)計(jì)、基于Linux的操作系統(tǒng),微軟宣布該系統(tǒng)已經(jīng)在公司的Azure Marketplace上架,可廣泛應(yīng)用于各種云實(shí)例中。英特爾的Clear Li
    發(fā)表于 01-19 14:36 ?1110次閱讀

    微軟發(fā)布面向物聯(lián)網(wǎng)的Linux內(nèi)核和發(fā)行版

    微軟發(fā)布自己定制的 Linux 內(nèi)核和發(fā)行版,面向物聯(lián)網(wǎng)
    發(fā)表于 06-04 09:29

    微軟發(fā)布 Azure Linux 正式版

    在內(nèi)部使用 Azure Linux 兩年,并從 2022 年 10 月開始公開預(yù)覽后,微軟本周終于正式提供其 Azure Linux。Azure Linux 是 Azure Kuber
    發(fā)表于 05-28 08:34

    基于異類傳感器的戰(zhàn)場運(yùn)動目標(biāo)識別算法

    利用異類傳感器的互補(bǔ)特性, 提出了一種新的運(yùn)動目標(biāo)識別算法: 選取目標(biāo)速度、第1 主頻、第2 主頻作為識別的有效特征; 運(yùn)用模糊推理得到目標(biāo)分類信息的基本概率分配函數(shù); D2S
    發(fā)表于 07-09 13:40 ?11次下載

    首次針對WSL的微軟Linux會議將于明年3月10日舉行

    微軟宣布了Linux用戶夢寐以求的東西,這就是針對WSL(Linux Windows子系統(tǒng))的第一次微軟Linux大會。WSL是由
    的頭像 發(fā)表于 09-17 13:10 ?1062次閱讀

    微軟宣布加入一個(gè)為保護(hù)Linux免于訴訟而設(shè)立的開源專利組織

    事實(shí)上,Azure客戶廣泛使用Linux微軟也在Windows之外,向Linux提供SQL Server。此次加入OIN后,可以消除一大部分吐槽微軟
    的頭像 發(fā)表于 10-15 14:48 ?3556次閱讀

    微軟構(gòu)建內(nèi)部定制Linux內(nèi)核 顯著提高Windows中微軟Linux子系統(tǒng)的性能

    微軟Build 2019開發(fā)者大會的第一天,微軟透露了其已經(jīng)構(gòu)建了一個(gè)內(nèi)部定制的Linux內(nèi)核,它將作為Windows 10的一部分包括在內(nèi)。
    的頭像 發(fā)表于 05-08 15:43 ?3367次閱讀

    微軟宣布Linux提供Microsoft Edge預(yù)覽版

    微軟今天宣布為Linux提供Microsoft Edge預(yù)覽版。隨著該版本的發(fā)布,微軟Edge瀏覽器現(xiàn)在可以用于所有主要的桌面和移動平臺。如果你正在運(yùn)行Ubuntu、Debian、Fedora
    的頭像 發(fā)表于 10-21 15:43 ?1671次閱讀

    Hayden Barnes:微軟不會將Windows遷移到Linux

    轉(zhuǎn)自:開源中國 Canonical 桌面團(tuán)隊(duì)成員Hayden Barnes發(fā)表個(gè)人觀點(diǎn)稱,他認(rèn)為微軟不會將 Windows 遷移到 Linux。 近段時(shí)間以來,微軟積極融合 Linux
    的頭像 發(fā)表于 10-23 11:56 ?1982次閱讀
    Hayden Barnes:<b class='flag-5'>微軟</b>不會將Windows遷移到<b class='flag-5'>Linux</b>

    微軟發(fā)布Edge瀏覽器Linux

    原創(chuàng):Linux愛好者(id:LinuxHub) 早在 2019 年 6 月,微軟Edge 開發(fā)團(tuán)隊(duì)就釋放出會開發(fā) Linux 版 Edge 瀏覽器的消息。 一直等啊等啊等,終于等到了。 Edge
    的頭像 發(fā)表于 10-29 11:03 ?2588次閱讀

    危險(xiǎn)Linux命令清單

    有人無數(shù)次問我這個(gè)問題,我一直避免回答,因?yàn)闆]有一個(gè)明確的危險(xiǎn)Linux 命令清單。
    的頭像 發(fā)表于 09-26 09:16 ?1075次閱讀

    分享一些流行危險(xiǎn)Linux命令

    Linux你擁有的工具使你能夠控制和修改操作系統(tǒng)的每一個(gè)方面。但如果你不熟悉這些命令和工具,你可以很容易地你的系統(tǒng)摧毀。
    的頭像 發(fā)表于 12-14 17:26 ?1029次閱讀

    打臉了!微軟發(fā)布自己的Linux!

    至于為何微軟會選擇在自家服務(wù)中使用Linux系統(tǒng)呢?答案很簡單,Linux系統(tǒng)在執(zhí)行特定任務(wù)時(shí)擁有比Windows更好的穩(wěn)定性。2019年時(shí)就有媒體報(bào)道,微軟Azure上的
    的頭像 發(fā)表于 06-08 15:24 ?634次閱讀
    打臉了!<b class='flag-5'>微軟</b>發(fā)布自己的<b class='flag-5'>Linux</b>!

    微軟竟然發(fā)布了自己的Linux

    微軟 Azure Linux 首席項(xiàng)目經(jīng)理 Jim Perrin 表示,微軟啟動 CBL-Mariner 是因?yàn)樗枰粋€(gè)內(nèi)部 Linux 發(fā)行版和一個(gè)一致的平臺來支持工程師在 Azu
    的頭像 發(fā)表于 09-08 17:10 ?946次閱讀
    <b class='flag-5'>微軟</b>竟然發(fā)布了自己的<b class='flag-5'>Linux</b>

    為什么BJT放大電路交流通路中的電流源或恒流源看作斷路?

    為什么BJT放大電路交流通路中的電流源或恒流源看作斷路 在BJT放大電路中,將交流通路中的電流源或恒流源看作斷路是為了簡化分析和計(jì)算過程。這種簡化方法被稱為小信號模型,可以讓工程師更快
    的頭像 發(fā)表于 09-13 11:23 ?1387次閱讀