在Linux下編程和在Windows下編程的區別

Linux和Windows是兩種操作系統,從用戶羣來說Linux是一個以開發者爲中心的操作系統,而windows是以消費者爲中心的操作系統,這也是兩個操作系統作爲根本的區別。

在Linux與Windows下編程的區別,可以總結爲以下幾點:

1.Linux可以看到源代碼,windows不行。

這一點直接導致的結果就是在特殊應用的場合可以自行剪裁和定製所需的內核模塊,這對於高級系統內核管理優化和驅動程序的開發相當有利,另外也因爲代碼可見,不用擔心惡意功能或者後門,對於軍政企的使用比較有利。另外在系統出現嚴重問題的時候,可以自行修改代碼或者接個幾k的patch就能編譯然後使用,而windows你得等微軟的補丁。

2、Linux命令行功能強大,可以做任何事情,windows也有命令行,但是屬於附屬品。

命令行是Linux的根本,甚至你對某些命令不滿意,你也可以自己修改或者編個自己的命令出來。命令行的好處是可重複。想要知道命令行的具體是什麼你可以訪問老男孩教育。如果你想要告訴別人一件事怎麼做,一個命令行發過去就可以,想要再做一遍之前做過的一件事,調出歷史命令記錄重新執行一下就行。很多要定時做的事情寫成腳本設個crontab定時,就完事兒。另外這樣也可以保證你用一樣的命令行,做的是一樣的事情。

3、開放源碼和高度可定製

開放源碼的初衷,不是爲了自由而是爲了定製。AT&T UNIX從來就是有版權的,但是源代碼仍然可用,這是爲了讓用戶能夠根據需要,去修改它。Linux社區所讚賞的軟件和系統,多半遵循同樣的規則——它應該能夠適應不同用戶的不同環境,能夠輕易的改變自己的行爲,能夠輕鬆的與不同環境整合。與其假設別人和你的需求一致,不如給予它們定製系統的自由。

4、去中心化

分散的軟件開發,也註定了系統的接口和形式不統一——因爲大家都喜歡發明輪子。而每個人的輪子或多或少更適合自己和社區,而非所有人,而在Linux的環境下又沒有人能強迫所有人用自己的輪子(除了Kernel開發者,但其實很多distro對kernel也有patch),所以與其制定一種實踐,Linux更多的讓用戶去選擇生活的方式。
你會看到Linux生態環境中有大量的distro,不同的distro有不同的init方式,不同的軟件包管理器和安裝策略;每個人習慣使用不同的VCS,不同的shell,不同的編輯器,都就是更多的選擇的哲學的體現。

5、Linux是基於網絡的,誕生於網絡。

遠程連接上SSH,你就可以輕鬆操控遠在千里之外的Linux服務器,只要有相應的權限,幾乎和坐在物理機面前沒有區別,哪怕網速很糟糕,實際只是一些加密的字符在傳送,需要的帶寬很小。

6、Linux區分大小寫,windows在dos界面命令下不區分大小寫.

linux所有內容均以文件形式保存包括硬件,用戶,而windows文件和硬件沒什麼關係,兩個之間沒有關聯.

7、 windows用擴展名區分文件如.exe代表執行文件,.txt代表文本文件,而linux無擴展名的概念,當然爲了管理員區分方便會有部分擴展名如.gz , .bz2 ,.tar.bz2代表壓縮包,.html ,.php代表網頁文件,這些純粹是給管理員看的便於區分,但是linux本身是沒有擴展名的,linux是以權限區分文件的,文件權限總共有十位(可用ls -l查看每個文件的權限),例如-rw-r–r–,第一位代表文件的權限位,linux下有七種文件類型:
-代表普通文件
d代表目錄文件
l代表鏈接文件
b代表塊設備文件
s代表套接口文件
p代表管道文件
c代表字符設備文件
後面每三位分別代表所有者,所屬組和其他人的權限。


轉自:https://blog.csdn.net/lmseo5hy/article/details/79279424
https://blog.csdn.net/syyyy712/article/details/79454378

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章