Linux是一套無償使用和自由傳播的類Unix操做系統,是一個基於POSIX和Unix的多用戶、多任務、支持多線程和多CPU的操做系統。
它能運行主要的Unix工具軟件、應用程序和網絡協議。它支持32位和64位硬件。Linux繼承了Unix以網絡爲核心的設計思想,是一個性能穩定的多用戶網絡操做系統。
linux普遍用於網站服務器。linux
世界超級計算機500強。程序員
Linux在嵌入式領域應用。web
UNIX操做系統,是一個強大的多用戶、多任務操做系統,支持多種處理器架構,按照操做系統的分類,屬於分時操做系統,最先由Ken Thompson、Dennis Ritchie和Douglas McIlroy於1969年在AT&T的貝爾實驗室開發。當前它的商標權由國際開放標準組織所擁有,只有符合單一UNIX規範的UNIX系統才能使用UNIX這個名稱,不然只能稱爲類UNIX(UNIX-like)。
Unix的前身爲1964年開始的Multics,貝爾實驗室 (Bell Labs)1965年時,加入一項由通用電氣(General Electric)和麻省理工學院(MIT)合做 的計劃;該計劃要建立一套多用戶、多任務、多層次(multi-user、multi-processor、multi-level)的MULTICS操做系統。貝爾實驗室參與了這個操做系統的研發,但由於開發速度太慢,1969年貝爾實驗室決定退出這個計劃。貝爾實驗室的工程師,肯·湯普遜和丹尼斯·裏奇,在此時自行開發了Unix。
後來AT&T意識到了Unix的商業價值,再也不將Unix源碼受權給學術機構,並對以前的Unix及其變種聲明瞭著做權權利。BSD在Unix的歷史發展中具備至關大的影響力,被不少商業廠家採用,成爲不少商用Unix的基礎。其不斷增大的影響力終於引發了AT&T的關注,因而開始了一場持久的著做權官司,這場官司一直打到AT&T將本身的Unix系統實驗室賣掉,新接手的Novell採起了一種比較開明的作法,容許柏克萊分校自由發佈本身的Unix變種,可是前提是必須未來自於AT&T的代碼徹底刪除,因而誕生了4.4 BSD Lite版,因爲這個版本不存在法律問題,4.4 BSD Lite成爲了現代柏克萊軟件包的基礎版本。儘管後來,非商業版的Unix系統又通過了不少演變,但其中有很多最終都是建立在BSD版本上(Linux、Minix等系統除外)。因此從這個角度上,4.4 BSD 又是全部自由版本Unix的基礎,它們和System V及Linux等共同構成Unix操做系統這片璀璨的星空。
此後的10年,Unix在學術機構和大型企業中獲得了普遍的應用,當時的UNIX擁有者AT&T公司以低廉甚至免費的許可將Unix源碼受權給學術機構作研究或教學之用,許多機構在此源碼基礎上加以擴展和改進,造成了所謂的「Unix變種」,這些變種反過來也促進了Unix的發展,其中最著名的變種之一是由加州大學柏克萊分校開發的伯克利軟件套件(BSD)產品。
BSD使用主版本加次版本的方法標識,如4.二、4.3BSD,在原始版本的基礎上還有派生版本,這些版本一般有本身的名字,如4.3BSD-Net/1,4.3BSD-Net/2等。BSD在發展中也逐漸派生出3個主要的分支:FreeBSD、OpenBSD和NetBSD。
此後的幾十年中,Unix仍在不斷變化,其著做權全部者不斷變動,受權者的數量也在增長。Unix的著做權曾經爲AT&T全部,以後Novell擁有獲取了Unix,再以後Novell又將著做權出售給了聖克魯茲做業,但不包括知識產權和專利權(這一事實雙方尚存在爭議)。有不少大公司在獲取了Unix的受權以後,開發了本身的Unix產品,好比IBM的AIX、HP的HP-UX、SCO的Openserver、SUN的Solaris(被Oracle收購)和SGI的IRIX。
Unix由於其安全可靠,高效強大的特色在服務器領域獲得了普遍的應用。直到GNU/Linux流行開始前,Unix也是科學計算、大型機、超級計算機等所用操做系統的主流。如今其仍然被應用於一些對穩定性要求極高的數據中心之上。redis
1991年,林納斯·託瓦茲在赫爾辛基大學上學時,對操做系統很好奇他對MINIX只容許在教育上使用很不滿(在當時MINIX不容許被用做任何商業使用),因而他便開始寫他本身的操做系統,這就是後來的Linux內核。林納斯·託瓦茲開始在MINIX上開發Linux內核,爲MINIX寫的軟件也能夠在Linux內核上使用。後來使用GNU軟件代替MINIX的軟件,由於使用從GNU系統來的源代碼能夠自由使用,這對Linux的發展有益。使用GNU GPL協議的源代碼能夠被其餘項目所使用,只要這些項目使用一樣的協議發佈。爲了讓Linux能夠在商業上使用,林納斯·託瓦茲決定更改他原來的協議(這個協議會限制商業使用),以GNU GPL協議來代替。以後許多開發者致力融合GNU元素到Linux中,作出一個有完整功能的、自由的操做系統。數據庫
基於Linux的系統是一個模塊化的類Unix操做系統。Linux操做系統的大部分設計思想來源於20世紀70年代到80年代的Unix操做系統所建立的基本設計思想。Linux系統使用宏內核,由Linux內核負責處理進程控制、網絡,以及外圍設備和文件系統的訪問。在系統運行的時候,設備驅動程序要麼與內核直接集成,要麼以加載模塊形式添加。
Linux具備設備獨立性,它內核具備高度適應能力,從而給系統提供了更高級的功能。GNU用戶界面組件是大多數Linux操做系統的重要組成部分,提供經常使用的C函數庫,Shell,還有許多常見的Unix實用工具,能夠完成許多基本的操做系統任務。大多數Linux系統使用的圖形用戶界面建立在X窗口系統之上,由X窗口(XWindow)系統經過軟件工具及架構協議來建立操做系統所用的圖形用戶界面。
已安裝Linux操做系統包含的一些組件:
啓動程序:例如GRUB或LILO。該程序在計算機開機啓動的時候運行,並將Linux內核加載到內存中。
init程序:init是由Linux內核建立的第一個進程,稱爲根進程,全部的系統進程都是它的子進程,即全部的進程都是經過init啓動。init啓動的進程如系統服務和登陸提示(圖形或終端模式的選擇)。
軟件庫包含代碼:能夠經過運行的進程在Linux系統上使用ELF格式來執行文件,負責管理庫使用的動態連接器是「ld-linux.so」。Linux系統上最經常使用的軟件庫是GNU C庫。
用戶界面程序:如命令行Shell或窗口環境。windows
內核版 www.kernel.org安全
Linux發行版(列舉的都是比較主流的。)服務器
開源軟件(英語:open source software,縮寫:OSS)又稱開放源代碼軟件,是一種源代碼能夠任意獲取的計算機軟件,這種軟件的著做權持有人在軟件協議的規定之下保留一部分權利並容許用戶學習、修改以及以任何目的向任何人分發該軟件。開源協議一般符合開放源代碼的定義的要求。一些開源軟件被髮布到公有領域。開源軟件常被公開和合做地開發。開源軟件是開放源代碼開發的最多見的例子,也常常與用戶生成內容作比較[1]。 開源軟件的英文「open-source software」一詞出自自由軟件的營銷活動中。開源軟件同時也是一種軟件散佈模式。通常的軟件僅可獲取已通過編譯的二進制可執行檔,一般只有軟件的做者或著做權全部者等擁有程序的源代碼。
有些軟件的做者只將源代碼公開,卻不符合「開放源代碼」的定義及條件,由於做者可能設置公開源代碼的條件限制,諸如限制可閱讀源代碼的對象、限制派生產品等,此稱之爲公開源代碼的免費軟件(Freeware,例如知名的網絡論壇軟件Discuz!),所以公開源代碼的軟件並不必定可稱之爲開放源代碼軟件。
• Apache: web服務器
• Nginx: web服務器
• MySQL: 數據庫(SQLserver , Oracle)
• PHP: 腳本語言
• Samba: Linux和windows之間的內網文件服務器
• MongoDB: NoSQL數據庫 redis
• Python: 腳本語言
• Ruby: 腳本語言
• Sphinx: 中文分詞網絡
★ 使用的自由 絕大多數開源軟件免費
★ 研究的自由 能夠得到軟件源代碼
★ 散佈及改良的自由 能夠自由傳播、改良甚至銷售。多線程