什么是計算機?
計算機(computer)俗稱電腦,是一種用于高速計算的電子計算機器,可以進行數值計算,又可以進行邏輯計算,還具有存儲記憶功能。是能夠按照程序運行,自動、高速處理海量數據的現代化智能電子設備。
它由硬件系統和軟件系統組成,沒有安裝任何軟件的計算機被稱為裸機。硬件系統由運算器,控制器,存儲器,輸入設備,輸出設備幾部分組成;軟件系統則分為系統軟件和應用軟件。計算機按照規模又可分為巨型計算機、大型計算機、小型計算機、微型計算機。
世界上第一臺計算機
ENIAC(埃尼阿克),是電子數值積分計算機(The Electronic Numberical Intergrator and Computer)的縮寫,它是世界上第一臺計算機,于1946年2月15日在美國賓夕法尼亞大學誕生并投入使用,是美國伯丁武器試驗場為了滿足計算彈道需要而研制成的。它使用了17468個真空電子管,耗電174千瓦,占地170平方米,重達30噸,每秒鐘可進行5000次加法運算。
ENIAC誕生后,數學家馮?諾依曼提出了重大的改進理論,主要有兩點:其一是電子計算機應該以二進制為運算基礎,其二是電子計算機應采用存儲程序方式工作,并且進一步明確指出了整個計算機的結構應由五個部分組成:運算器、控制器、存儲器、輸入裝置和輸出裝置。馮?諾依曼的這些理論的提出,解決了計算機的運算自動化的問題和速度配合問題,對后來計算機的發展起到了決定性的作用。直至今天,絕大部分的計算機還是采用馮?諾依曼方式工作。
服務器
服務器(Server)指一個管理資源并為用戶提供服務的計算機,通常分為文件服務器、數據庫服務器和應用程序服務器。運行以上軟件的計算機或計算機系統也被稱為服務器。相對于普通PC來說,服務器在穩定性、安全性、性能等方面都要求更高,因此CPU、芯片組、內存、磁盤系統、網絡等硬件和普通PC有所不同。
服務器按應用功能可分為:Web服務器、數據庫服務器、郵件服務器、文件服務器、中間件應用服務器、日志服務器、監控服務器,程序版本控制服務器、虛擬
機服務器、打印服務器、域控制服務器、多媒體服務器、通訊服務器、ERP服務器等。
按外形分類:塔式服務器、機架式服務器、刀片式服務器
塔式服務器
機架式服務器
刀片式服務器
服務器硬件組成:
CPU:Central Processing Unit的縮寫,即中央處理器。由控制器和運算器構成,是整個計算機系統中最重要的部分。
服務器按照CPU體系架構來區分,主要分為兩類:
非x86服務器:使用RISC(精簡指令集)或EPIC(并行指令代碼) 處理器,并且主要采用UNIX和其它專用操作系統的服務器,指令系統相對簡單,它只要求硬件執行很有限且最常用的那部分指令。這種服務器價格昂貴,體系封閉,但是穩定性好,性能強,主要用在金融、電信等大型企業的核心系統。x86服務器:又稱CISC(復雜指令集)架構服務器,即通常所講的PC服務器,它是基于PC機體系結構,使用Intel或其它兼容x86指令集的處理器芯片的服務器。這種服務器價格相對便宜、兼容性好但穩定性較差、安全性不算太高。
按CPU個數來分:
4核及4核以上服務器(企業級服務器)
2核服務器(部門級服務器)
1核服務器(入門級服務器)
主板:主板mainboard、系統板systemboard或母板(motherboard)它安裝在機箱內,是計算機最基本的也是最重要的部件之一。主板一般為矩形電路板,上面安裝了組成計算機的主要電路系統,一般有BIOS芯片、I/O控制芯片、鍵盤和面板控制開關接口、指示燈插接件、擴充插槽、主板及插卡的直流電源
供電接插件等元件。
內存:內存是介于CPU 和外部存儲之間,是CPU 對外部存儲中程序與數據進行高速運算時存放程序指令、數據和中間結果的臨時場所,它的物理實質就是一組具備數據輸入輸出和數據存儲功能的高速集成電路。 內存是CPU能直接尋址的存儲空間,由半導體器件制成。內存的特點是存取速度快。計算機中所有程序的運行都是在內存中進行的,因此內存的性能對計算機的影響非常大。
容量即該內存的存儲容量,單位一般為MB或GB。
硬盤:由存儲介質(Media)—盤片、讀寫頭(Read Write Head)—磁頭、馬達( Spindle Motor & Voice Coil Motor )組成。
硬盤基本參數:
容量:是硬盤最主要的參數。單位有MB、GB、TB。
轉速:轉速是指硬盤盤片每分鐘轉動的圈數,單位為rpm?,F在硬盤的轉速已經達到10000rpm,15000rpm。
傳輸速率:硬盤的數據傳輸率是指硬盤讀寫數據的速度,單位為兆字節每秒(MB/s)
緩存:硬盤緩存的目的是為了解決系統前后級讀寫速度不匹配的問題,以提高硬盤的讀寫速度.
目前主流的硬盤接口為SATA何SAS接口,因此硬盤按接口類型可分為SATA硬盤和SAS硬盤。
陣列卡(Raid卡):用來實現RAID的建立和重建,檢測和修復多位錯誤,錯誤磁盤自動檢測等功能。RAID芯片使CPU的資源得以釋放。
電源:支持服務器的電力負載;支持冗余,防止電源故障;故障預警和防止; 故障之前的預防性維護;保證服務器持續運行。
顯卡:服務器都在主板上集成了顯卡,但是顯存容量不高,一般為16M或32M。
網卡:服務器都在主板上集成了網卡,傳輸速率為1Gbps,即千兆網卡,特殊應用需要高端網卡,如光纖網卡,Infiniband網卡等,傳輸速率能達到10Gbps、20Gbps,即萬兆網卡。
熱插拔技術:又稱熱交換技術(HotSwap),允許在不關機的狀態下更換故障熱插拔設備。常見的熱插拔設備:硬盤,電源,PCI設備,風扇等。熱插拔硬盤技術與RAID技術配合起來,可以使服務器在不關機的狀態下恢復故障硬盤上的數據,同時并不影響網絡用戶對數據的使用。
機柜:服務器放置的地方。
存儲網絡:
DAS—–直接連接存儲(Direct Attached Storage)
NAS—–網絡連接存儲(Network Attached Storage)
SAN—–存儲區域網絡(Storage Area Networks
操作系統
操作系統簡稱OS(Operating System)是計算機系統中的一個系統軟件,是一些程序模塊的集合——它們能以盡量有效、合理的方式組織和管理計算機的軟硬件資源,合理的組織計算機的工作流程,控制程序的執行并向用戶提供各種服務功能,使得用戶能夠靈活、方便、有效的使用計算機,使整個計算機系統能高效、順暢的運行。
UNIX
UNIX操作系統(尤尼斯),是一個強大的多用戶、多任務操作系統,支持多種處理器架構,按照操作系統的分類,屬于分時操作系統,最早由KenThompson、Dennis Ritchie和Douglas McIlroy于1969年在AT&T的貝爾實驗室開發。目前它的商標權由國際開放標準組織所擁有,只有符合單一UNIX規范的UNIX系統才能使用UNIX這個名稱,否則只能稱為類UNIX(UNIX-like)。
UNIX的哲學思想:
編寫的程序只做一件事,且把這件事做好;
編寫的程序要能一起工作;
編寫的程序以一個統一接口來處理字符流。
1965前后 Multics
Multics是1964年由貝爾實驗室、麻省理工學院及美國通用電氣公司所共同參與研發的,是一套安裝在大型主機上多人多任務的操作系統。Multics其目的是想要讓大型主機可以達成提供300個以上的終端機連線使用,后來因計劃進度落后,資金短缺,宣告失敗。
1969 Unix雛形
1969年,因MULTICS計劃的工作進度過于緩慢,最后終究遭裁撤的命運,貝爾實驗室退出此計劃。當時,Ken Thompson撰寫一個稱為”星際旅行”(Space Travel)的游戲程序。Multics 計劃停止后,由貝爾實驗室的兩位軟件工程師 Thompson 與 Ritchie 以C語言為基礎而發展出UNIX。
1973 Unix
Unix 成熟期?!肮艿馈保粋€可以在兩個程序中共享信息的機制問世,這項技術影響了操作系統幾十年。這個技術被加入到了Unix中。同年,Unix被用C語言重寫,正式命名為Unix 并可移植性開放。
1977 BSD(Berkeley Software Distribution)
BSD (Berkeley Software Distribution,伯克利軟件套件)是Unix的衍生系統,1970年代由加州大學伯克利分校開創。BSD用來代表由此派生出的各種套件集合。
BSD常被當作工作站級別的Unix系統,這得歸功于BSD License非常地寬松,許多1980年代成立的計算機公司,不少都從BSD中獲益,比較著名的例子如DEC的Ultrix,以及Sun公司的SunOS。1990年代,BSD很大程度上被System V4.x版以及OSF/1系統所取代,但其開源版本被采用,促進了因特網的開發。
1979 System V架構 版權聲明
因為AT&T由于商業的考慮,以及在當時現實環境下的思考,于是想將UNIX的版權收回去。因此,AT&T在1979年發行的第七版UNIX中,特別提到了”不可對學生提供源碼”的嚴格限制。同時,也造成UNIX業界之間的緊張氣氛,并且也引發了很多的商業糾紛。
目前被稱為純種的UNIX指的就是System V以及BSD這兩套。
1984年 Minix操作系統
關于1979年的版權聲明中,影響最大的當然就是學校里教導UNIX內核源碼相關學問的教授了。想一想,如果沒有內核源碼,那么如何教導學生認識UNIX呢?這問題對于AndrewTanenbaum(譚寧邦)教授來說,實在是很傷腦筋的。不過,學校的課程還是得繼續,那怎么辦?
既然1979年的UNIX第七版可以在Intel的x86架構上面進行移植,那么是否意味著可以將UNIX改寫并移植到x86上面了呢?在這個想法上,譚寧邦教授于是自己動手寫了Minix這個UNIX Like的內核程序!在編寫的過程中,為了避免版權糾紛,譚寧邦完全不看UNIX內核源碼!并且強調他的Minix必須能夠與UNIX兼容才行!譚寧邦在1984年開始編寫內核程序,到了1986年終于完成,并于次年出版Minix相關書籍,同時與新聞組(BBS及News)相結合。
之所以稱為Minix的原因,是因為他是個Mini的UNIX系統。
(荷蘭阿姆斯特丹自由大學計算機科學系Andrew S. Tanenbaum譚寧邦)
1984年:1984年,Richard Stallman(史托曼)開始GNU項目,這個項目的目的是創建一個自由、開放的UNIX操作系統(Free UNIX)。
創建開源的UNIX實用工具版本
創建通用公共許可證(GPL)
開源軟件許可實施原則https://www.gnu.org/
產品:GCC、Emacs、Bash Shell、GLIBC;
倡導“自由軟件”;
GNU的軟件缺乏一個開放的平臺運行,只能在Unix上運行;
自由軟件指用戶可以對軟件做任何修改,甚至再發行,但是始終要掛著GPL的版權;
自由軟件是可以賣的,但是不能只賣軟件,而是賣服務、手冊等;
1991年:芬蘭大學生Linus Torvalds
到了1991年,芬蘭的赫爾辛基大學的Linus Torvalds在BBS上面貼了一則消息,宣稱他以bash, gcc等工具寫了一個小小的內核程序,這個內核程序可以在Intel的386機器上面運行,讓很多人很感興趣,從此開始了Linux不平凡的旅程!
bash GCC等小工具寫了一個小的內核程序下載:www.kernel.org
Linux
1991 年的10 月5 日,林納斯·托瓦茲在comp.os.minix 新聞組上發布消息,正式向外宣布Linux 內核系統的誕生(Free minix-like kernel sources for 386-AT)。
Linux操作系統:
Linux內核+ GNU工具=完整的類UNIX
操作系統
如:CentOS,Ubuntu,Android
Linux發行版
slackware:SUSE Linux Enterprise Server (SLES)
opensuse桌面
debian: ubuntu,mint
redhat: rhel: redhat enterprise linux
每18個月發行一個新版本
CentOS:兼容rhel的格式
中標麒麟:中標軟件
fedora:每6個月發行一個新版本
ArchLinux:輕量簡潔
Gentoo:極致性能,不提供傳統意義的安裝程序
LFS: Linux From scratch 自制Linux
Android: kernel+busybox(工具集)+java虛擬機
Linux分支參考網站:http://futurist.se/gldt/
開源open source
開源: Open Source ,是指將軟件和源代碼提供給所有人
自由分發軟件和源代碼
能夠修改和創建衍生作品
軟件分類:商業、共享、自由 free
開源協議
世界上的開源許可證,大概有上百種
GPLv2, GPLv3, LGPL(lesser) :copyleft,WordPress
Apache: apache
BSD: bsd
Mozilla
Apache
MIT
Linux哲學思想
一切都是一個文件(包括硬件)
小型,單一用途的程序
鏈接程序,共同完成復雜的任務
避免令人困惑的用戶界面
配置數據存儲在文本中
Linux的文件系統
普通文件(regular file):就是一般存取的文件,由ls -al顯示出來的屬性中,第一個屬性為 [-],例如 [-rwxrwxrwx]。另外,依照文件的內容,又大致可以分為:
1、純文本文件(ASCII):這是Unix系統中最多的一種文件類型,之所以稱為純文本文件,是因為內容可以直接讀到的數據,例如數字、字母等等。設 置文件幾乎都屬于這種文件類型。舉例來說,使用命令“cat ~/.bashrc”就可以看到該文件的內容(cat是將文件內容讀出來)。
2、二進制文件(binary):系統其實僅認識且可以執行二進制文件(binary file)。Linux中的可執行文件(腳本,文本方式的批處理文件不算)就是這種格式的。舉例來說,命令cat就是一個二進制文件。
3、數據格式的文件(data):有些程序在運行過程中,會讀取某些特定格式的文件,那些特定格式的文件可以稱為數據文件(data file)。舉例來說,Linux在用戶登入時,都會將登錄數據記錄在 /var/log/wtmp文件內,該文件是一個數據文件,它能通過last命令讀出來。但使用cat時,會讀出亂碼。因為它是屬于一種特殊格式的文件。
目錄文件(directory):就是目錄,第一個屬性為 [d],例如 [drwxrwxrwx]。
連接文件(link):類似Windows下面的快捷方式。第一個屬性為 [l],例如 [lrwxrwxrwx]。
設備與設備文件(device):與系統外設及存儲等相關的一些文件,通常都集中在 /dev目錄。通常又分為兩種:
塊設備文件:就是存儲數據以供系統存取的接口設備,簡單而言就是硬盤。例如一號硬盤的代碼是 /dev/hda1等文件。第一個屬性為 。
字符設備文件:即串行端口的接口設備,例如鍵盤、鼠標等等。第一個屬性為 [c]。
套接字(sockets):這類文件通常用在網絡數據連接??梢詥右粋€程序來監聽客戶端的要求,客戶端就可以通過套接字來進行數據通信。第一個屬性為 [s],最常在 /var/run目錄中看到這種文件類型。
管道(FIFO,pipe):FIFO也是一種特殊的文件類型,它主要的目的是,解決多個程序同時存取一個文件所造成的錯誤。FIFO是first-in-first-out(先進先出)的縮寫。
文件結構
/:根目錄,所有的目錄、文件、設備都在/之下,/就是Linux文件系統的組織者,也是最上級的領導者。
/bin:bin 就是二進制(binary)英文縮寫。在一般的系統當中,都可以在這個目錄下找到linux常用的命令。系統所需要的那些命令位于此目錄。
/boot:Linux的內核及引導系統程序所需要的文件目錄,比如 vmlinuz initrd.img 文件都位于這個目錄中。在一般情況下,GRUB或LILO系統引導管理器也位于這個目錄。
/cdrom:這個目錄在剛剛安裝系統的時候是空的??梢詫⒐怛屛募到y掛在這個目錄下。例如:mount /dev/cdrom /cdrom
/dev:dev 是設備(device)的英文縮寫。這個目錄對所有的用戶都十分重要。因為在這個目錄中包含了所有linux系統中使用的外部設備。但是這里并不是放的外部設備的驅動程序。這一點和常用的windows,dos操作系統不一樣。它實際上是一個訪問這些外部設備的端口??梢苑浅7奖愕厝ピL問這些外部設備,和訪問一個文件,一個目錄沒有任何區別。
/etc:etc這個目錄是linux系統中最重要的目錄之一。在這個目錄下存放了系統管理時要用到的各種配置文件和子目錄。要用到的網絡配置文件,文件系統,x系統配置文件,設備配置信息,設置用戶信息等都在這個目錄下。
/home:如果建立一個用戶,用戶名是”xx”,那么在/home目錄下就有一個對應的/home/xx路徑,用來存放用戶的主目錄。
/lib:lib是庫(library)英文縮寫。這個目錄是用來存放系統動態連接共享庫的。幾乎所有的應用程序都會用到這個目錄下的共享庫。因此,千萬不要輕易對這個目錄進行什么操作,一旦發生問題,系統就不能工作了。
/lost+found:在ext2或ext3文件系統中,當系統意外崩潰或機器意外關機,而產生一些文件碎片放在這里。當系統啟動的過程中fsck工具會檢查這里,并修復已經損壞的文件系統。有時系統發生問題,有很多的文件被移到這個目錄中,可能會用手工的方式來修復,或移到文件到原來的位置上。
/mnt:這個目錄一般是用于存放掛載儲存設備的掛載目錄的,比如有cdrom等目錄??梢詤⒖?etc/fstab的定義。
/media:有些linux的發行版使用這個目錄來掛載那些usb接口的移動硬盤(包括U盤)、CD/DVD驅動器等等。
/opt:這里主要存放那些可選的程序。
/proc:可以在這個目錄下獲取系統信息。這些信息是在內存中,由系統自己產生的。
/root:Linux超級權限用戶root的家目錄。
/sbin:這個目錄是用來存放系統管理員的系統管理程序。大多是涉及系統管理的命令的存放,是超級權限用戶root的可執行命令存放地,普通用戶無權限執行這個目錄下的命令,這個目錄和/usr/sbin; /usr/X11R6/sbin或/usr/local/sbin目錄是相似的,凡是目錄sbin中包含的都是root權限才能執行的。
/selinux :對SElinux的一些配置文件目錄,SElinux可以讓linux更加安全。
/srv 服務啟動后,所需訪問的數據目錄,舉個例子來說,www服務啟動讀取的網頁數據就可以放在/srv/www中
/tmp:臨時文件目錄,用來存放不同程序執行時產生的臨時文件。有時用戶運行程序的時候,會產生臨時文件。/tmp就用來存放臨時文件的。/var/tmp目錄和這個目錄相似。
/usr
這是linux系統中占用硬盤空間最大的目錄。用戶的很多應用程序和文件都存放在這個目錄下。在這個目錄下,可以找到那些不適合放在/bin或/etc目錄下的額外的工具
/usr/local:這里主要存放那些手動安裝的軟件,即不是通過“新立得”或apt-get安裝的軟件。它和/usr目錄具有相類似的目錄結構。讓軟件包管理器來管理/usr目錄,而把自定義的腳本(scripts)放到/usr/local目錄下面、。
/usr/share :系統共用的東西存放地,比如 /usr/share/fonts 是字體目錄,/usr/share/doc和/usr/share/man幫助文件。
/var:這個目錄的內容是經常變動的,看名字就知道,可以理解為vary的縮寫,/var下有/var/log 這是用來存放系統日志的目錄。/var/ www目錄是定義Apache服務器站點存放目錄;/var/lib 用來存放一些庫文件,比如MySQL的,以及MySQL數據庫的的存放地。
原創文章,作者:木,如若轉載,請注明出處:http://www.www58058.com/71678
內容寫的非常詳細,挺不錯的,如果能把排版優化一下,再適當的插入幾張圖片就再好不過了?。?!