首頁>Club>

僅從技術角度看,不考慮使用者量及市場佔有率等外界因素。Linux指的是使用原生核心或少量修改核心的系統,不包含衍生版如android,嵌入式等~

9
回覆列表
  • 1 # 仗劍御長風

    就理論題,僅僅從設計原理和技術方面說,我認為應該是Linux。先說設計,Windows當初設計出來的目標,用微軟的理念來講就是讓當時美國的中年家庭婦女也能流暢的操作電腦,所以他的設計思路是面向大眾使用者多些。今天大家也看到了windows的確也很成功,但是你見過在非x86架構以外的計算機上執行的windows嗎?不一定沒有,但肯定很少。Linux的設計原理或者說設計原則遵循 UNIX 的思路,甚至於很多命令都是相容的,所以Linux在設計的時候優先考慮的是如何讓計算機高效可靠的執行。這兩種思路不能說誰對是錯,但僅從技術考量,我認為Linux更優秀。從技術上來講,Windows閉源,很優秀,技術先進。Linux開源,也很優秀,技術也很先進。Windows系統是桌面作業系統的王者,但是在非桌面領域,Linux在技術上不僅僅是如同Windows一樣優秀且擁有Windows無法比擬的優勢。幾乎只要是計算機,你就能找到一個可以執行在上面的Linux,無論什麼架構。開源給了Linux強大生命力,而這強大的生命力,正是其不斷吸收的先進技術驅動的。最後扯點題外話,蘋果公司的 MAC OS 和 Linux 一樣都是類 UNIX 系統,也就是說他們遵循同樣的程式設計哲學,只是技術實現的側重點不同。

  • 2 # polymorphours

    單從設計和原理上比較,windows作業系統絕對完勝,沒什麼可比較的。先說說windows系統。

    Windows作業系統自成一套體系,基於NT技術的Windows系統並沒有沿用POSIX的系統呼叫標準,而是自己搞了一套,這一套系統呼叫裡面涵蓋了檔案,程序,執行緒,網路,LPC,訊息,圖形操作等等功能,其實看看系統呼叫也能明白為什麼windows作業系統圖形操作更加的流暢,是因為很多操作被封裝成了系統呼叫,很多操作直接在作業系統核心來完成,這是linux系統無法比擬的。在io管理這塊,windows核心使用了自己設計的一套io管理器,io管理器採用分層設計,其方方面面貫穿於Windows核心,這部分個人覺得設計的非常優秀。

    在相容性方面windows可以說不愧是商用作業系統的典範,windows系統上跑的無論是應用程式還是驅動程式,大部分都可以向下相容(NT以前的系統不考慮,畢竟架構差的太多),就單拿驅動程式來說,一個裝置驅動可以橫跨好幾個系統來執行,並且對於開發人員而言,並不需要特別關注開放的API介面的變化,只需要按照介面堆程式碼就好了。

    在穩定性方面,從NT開始windows系統的穩定性已經有了質得飛越了,例如從NT開始核心層和應用層使用CPU的特權機制進行了完全的分離,在核心異常處理方面,也有儘可能多的程式碼來嘗試恢復異常,而不是直接來個panic,有人可能會覺得windows作業系統上病毒很多,造成穩定性不好,其實病毒多這個問題是由多方面造成的,例如他可以說是全球使用最多的系統,系統使用的多,研究的人就多,並且windows系統早期為了方便使用者使用,預設建立的使用者就是administrators組,這給了病毒很大的活動空間,從vista之後,windows系統引入了UAC,就是那個你在進行一些特權操作時彈出來的那個確認框,它的出現對使用者的安全性得到了增加,將一些危險的特權操作進行了分離(雖然依然可以被繞過,但有總比沒有強)

    上面從簡單的從3個方面誇了一下windows,下面在看看linux的一些表現

    首先linux與其說它是作業系統,不如說他僅僅只是個核心,因為linux系統可是說也僅僅是實現了一個核心,因為linux的系統呼叫層是按照POSIX規範來實現的,所以只要應用層滿足此規範的軟體都可以在這個核心上執行,看看gnu上龐大的軟體列表,就能明白linux上為什麼會有那麼多豐富的軟體。linux作為開源作業系統的典範,可以說他的出現是一個奇蹟,在系統設計方面,他沿用了unix中一切皆檔案的概念,使得對於開發人員而言在上面開發軟體要比windows更加的輕鬆,在檔案系統上參考了unix系統中vfs,使得Linux可以快速的相容多種檔案系統,在支援的外設方面,因為開源社群的推動,使得linux可以說在這方面絕對可以和Windows媲美。linux核心獨有的proc檔案系統覺得是一個很有特色的東西,包括後來的sysfs,都將一切皆檔案概念發揮的淋漓盡致,proc將系統核心變數通過檔案系統匯出給使用者,使使用者能夠更加方便的獲取作業系統核心相關資訊。

    其次開源社群的力量是相當可怕的,這裡只談技術不談開源社群,繼續說Linux,Linux核心自帶的開源性和可裁剪性,使得他在嵌入式系統上快速的生根發芽。在相容性方面,Linux系統無論在核心還是應用層,都擋不住對他的各種吐槽,核心隨意修改的核心API、各種系統結構,應用層對各種glibc版本的依賴,就連lkm都需要關聯特定的核心版本和gcc,不過也正是因為這些原因linux更加的適合在嵌入式系統和伺服器系統上執行,畢竟這些系統環境相對比較簡單,至少不需要考慮是否需要向下相容。

    在穩定性方面,Linux天生就是用了CPU保護機制來分離應用層和核心層的程式碼,從0.1版本開始就是這樣,核心在錯誤處理方面相對比較簡單粗暴,linux並沒有使用大量程式碼去嘗試恢復一個錯誤,而使一個kernel panic終結一切,這個和設計理念相關,我不去評價熟優孰劣。在安全性方面個人認為在沒有配置selinux或者apparmor的系統上,使用root使用者來操作這和Windows並沒有差別,詳細關於安全性的內容不在這裡詳述,關於安全性方面的問題至少可以再寫一篇問答。

  • 3 # 抱撲若拙

    理論上Windows應該更先進,屬於第一代微核心,但實際上微軟沒能保持微核心架構,開發的龐大人員數目最終仍然形成了巨核心。相反,linux開發採用了,linus溫和沙皇方式,導致實際上開發規模不可能包含ui這些重型lib+formwork構件,雖然UI效能不佳,但在嵌入式和伺服器這些ui不重要的領域逐漸被接受,形成相當規模。而隨著cpu效能增加,ui部分逐步加入linux程式中,形成linux相對windows更小的“巨核心”,所以儘管linus不承認“微核心”有意義,卻確實造成了linux核心比windows小的事實。

    正因為linux的核心與ui的明確界限,安卓才能在linux的基礎上,大幅度改進ui表現,形成可與ios競爭(ios是微核心第二2.5代mach第二版)。

    linux另一個厲害的地方是堅持c而拒絕c++,這是一個非常正確的決定。是的linux對c++實現的微核心的macos和windows都有效能優勢,而c++的複雜性也進一步拉高系統程式設計門檻,使得macos和windows程式設計師的能力很難達到系統級程式設計對c++使用的要求,從而問題增多。這點上不得不說,喬布斯在應用mach核心後的next step上,果斷轉向object c是及其明智的,object c沒有擴大面向物件的難度的輕量化面向物件的c補丁使next step具備了非常優秀的ui開發體驗,next step後來成功變身為mac os x和ios 。但也正是object c的剛剛夠的語言形式,使其擴充套件函式正規化及其困難,除錯並行程式困難等問題,使得蘋果轉向swift語言。

    linux也因堅持c,在規模膨脹後,面臨程式碼臃腫問題,很多linux開發者建議轉向c++,也就出現了linus打罵c++的一幕。

    所以,從目前現實看,windows明顯落後linux,其根本原因是自己對微核心理念的不堅持,和對c++過早應用。

    如果windows向蘋果一樣堅守微核心,在工具上保守些使用object c也許在00年代的智慧手機os競爭中就靈活得多了。

  • 4 # tanglengshan

    Windows nt版開始和linux同代核心理論系統,但Linux所需資源較低,對記憶體限制少充份用更大記憶體,成本和效能都有優勢,後者先進一些,Windows有更細執行緒。

    90年代末linux開始流行,是否適合多媒體通訊裝置,當時需要更多技術投入,當時有不少商業嵌入式作業系統,windows也有 ce,後來安卓突破瓶頸,手機在內大多數嵌入式系統佔據優勢,桌面也漸漸興起,微軟windiws10都支援。伺服器端linux 開始地位就比較穩。

  • 5 # 花飄水流兮1

    扯淡的問題,明明都特麼一個等級的,也就是產品定位問題,然後引發裝逼(include me)扯經。市場說明一切,win完勝,一個三寨Unix因為所謂開源,可以裝逼,搞得不少人奉為神品。開源對大多數程式設計師估計半毛錢關係沒得——你寫系統和驅動,裁剪系統(當然win系統級裁剪更方便)嗎,你頂多是應用而已。我旁邊就是個裝逼的程式設計師,說windows難用,Linux我也沒見他用得多麼優秀,有本事吹,試試只在模式3下幹活試試!

    Linux只是大公司的成本而已,只是一些板級裝置的成本而已,如果可以選擇更低端的人,而相比一個win版權費,那就不叫成本了。無論怎樣win的佔有率是很恐怖的,你們可以看到工控機,ATM,航天指揮中心的鏡頭,軍事指揮的鏡頭(XP為什麼還活著、winForm為什麼死灰復燃)…蘋果的Unix是閉源的,跪嘛,裝逼的東西都不是批評的主要物件。server那為什麼不是等級高的Solaris,最高等級的就不說了,美軍管制產品,開源的有多少人玩,有多少敢玩(到生產環境)?Linux那麼牛逼,還沒Android的時候怎麼不見人用智慧手機——不好用嘛,跟程式碼好不好有多大關係?那會兒程式設計師也沒見幾個買了Linux智慧手機的,倒是偶爾有winmobile的,但那麼牛逼的wp最終又被Linux改來的Android和iOS乾死了,iOS第一個版本程式碼又是多麼垃圾,但是引領了一個時代,塞班也亡了。

    總而言之,產品是對人的,而且分人群定位,瞎盲從是作孽,工具是人類進步的基石也是標誌。很明顯我們不用去討論DOS,因為它只是歷史了,現在也只是一個視窗小工具或偶爾少數場景用途(如ghost、boot一類)。提高效率的工具都是好工具。

  • 6 # 老碼農周琛

    技術架構上,有幾個比較糾結的問題:

    1、微核心巨集核心的爭議,Windows號稱微核心,剝離驅動層,據稱更穩定,宣稱Linux巨集核心不如其穩定,但微核心效能不如巨集核心,理論上這種局面是有可能的。但實際上這種局面沒有形成——微核心驅動層剝離依然是驅動有問題搞死整個系統,巨集核心驅動內建也會搞死系統但是往往開發更精心反而問題少,順帶巨集核心還得了效能的便宜。

    2、Windows雖然號稱微核心但GUI隨作業系統內建,在網路服務角色角度看是空耗資源增加複雜度降低效能和可靠性的做法,Linux可以完全不帶GUI跑安心。

    3、架構所致導致Windows的顯示卡整合能力好過Linux,玩遊戲Linux就一邊去吧,但是跑遊戲用的大場景渲染還得靠Linux叢集(遊戲廠商要用的,釋出之前準備渲染素材用的)。

    4、異構CPU的相容能力、時間片排程模型,導致了Windows在嵌入式、實時作業系統兩個領域表現遠遠不如Linux。

    5、POSIX相容性方面,Windows做的要差,導致大量的軟體Windows不相容(尤其以開源軟體為盛。當然也有大量軟體只能執行在Windows下,各有所長吧,不能怪這些軟體相容性不好,眼界和市場決定了他們跟Windows走,如同網路服務方面Windows的弱勢也有此類原因)。

    從軟體生態來看,網路伺服器的角度,Linux無疑是更勝一籌的——微軟雲自身也開始了大量向Linux遷移,另外幾大雲服務廠商AWS、阿里雲等的產品也是以Linux為主體作業系統建立,對微軟的產品也僅僅是相容而已。另外,諸如網際網路企業盛行的Docker之類的網際網路產品伺服器運維神器,這麼多年了也沒有原生的Windows版本(這一點Windows和Mac一個待遇,現在有了虛擬機器下的版本,效能差的一逼,封閉系統的必然待遇),Apache、PHP、Mysql機者的效能和穩定性也是在Linux下要強於Windows。太多的網路伺服器軟體,都是先有Linux版本,之後很久可能會出Windows相容版本。

    桌面和遊戲生態,Linux就完全是渣渣了,這個不用解釋。

    移動端和嵌入式方面,Linux又扳回一城,Android就是一種Linux作業系統。

  • 7 # 飛57709646

    題主問的是從設計和原理角度。

    從原理角度,二者分不出高低,從技術原理的角度二者是相通的,就像地球上的飛行器都是基於空氣動力學原理,雖然效能有好壞,但原理都一樣,除非有一天有了反引力飛行器,才能說應用了更先進的原理。

    從設計角度二者就有很大的區別了。linux核心可根據需求裁剪,小巧靈活,從服武器到嵌入式都有應用。linux本身不帶UI,需要UI的時候,UI是作為一個獨立軟體或程序執行與核心之上,但其桌面體驗較差。這種設計方式就註定了linux適合定製化的應用,不適合作為一款普及大眾的通用系統。而windows則是將UI寫進核心,缺點是UI崩潰了,核心也就崩潰了,相信每個人都經歷過windows藍屏。優點是介面響應極為流暢,體驗好。如果拋開UI,Windows的核心功能也很強大,在伺服器市場也佔有一席之地。由於windows是閉源的,並且無法把UI從核心中裁剪掉,在嵌入式領域應用不廣。儘管有WinCE嵌入式系統,但也不成氣候。的如果要從設計角度對二者分個高低,我認為還是Windows更先進,因為它各項指標更均衡,兼顧了普通使用者,商業使用者,開發者等不同客戶群。無論從核心效能還是使用者體驗都做到了一定水準。

  • 8 # 肉肉蠻多多

    windows和linux面向的使用者群和情景是不一樣的!window面向泛使用者,大眾服務,用於娛樂,多媒體及日常的資訊化工作。而Linux面向的是更底層的技術性質的使用者,追求的是高效,簡潔,節能,工程化。就好比拿跑車和公共汽車比誰更先進是一個意思!從科學技術角度來看,你絕不能看不上Linux,正因為它是開源的,才大大促進了系統軟體及硬體技術的進步和標準化發展,它也是大部分新新系統的基礎核心。

    從pc使用者數量來說,window遠超Linux;但從硬體裝機量來說,Linux又反過來遠超Windows!因為我們周邊所有的智慧裝置,大的手機、冰箱、機床,小到樹莓、語音識別音箱基本都用的Linux!

  • 9 # wutee

    我目前使用的是win10加linux

    好用!

    正常是linux好用!不過linux早期配飾很費時。

  • 10 # 彼方之光

    在圖形效能,硬體相容性和美觀度上,win勝。

    在軟體執行效率上,linux勝。

    孰優孰劣,看需求而定,不能一概而論。

  • 中秋節和大豐收的關聯?
  • 有沒有比死刑更可怕的懲罰?