400 likes | 563 Views
UNIX 作業系統簡介. 鄧姚文 joseph.deng@gmail.com. 什麼是作業系統?. 作業系統的功能 管理電腦系統運作 提供使用者與電腦資源之間的界面 作業系統的三個主要部份 Kernel :管理電腦系統運作 Shell :提供使用者與電腦資源之間的界面 File System :管理資訊. UNIX 的由來. 背景 : 1965 年,電腦侏羅紀時代 AT&T Bell Lab 加入 Multics 計畫 發起者 GE Company, MIT 目標 讓很多人可以同時使用電腦 提供充沛的計算與儲存功能 讓使用者可以互相分享資料
E N D
UNIX 作業系統簡介 鄧姚文 joseph.deng@gmail.com
什麼是作業系統? • 作業系統的功能 • 管理電腦系統運作 • 提供使用者與電腦資源之間的界面 • 作業系統的三個主要部份 • Kernel:管理電腦系統運作 • Shell:提供使用者與電腦資源之間的界面 • File System:管理資訊
UNIX 的由來 • 背景: 1965年,電腦侏羅紀時代 • AT&T Bell Lab 加入 Multics 計畫 • 發起者 • GE Company, MIT • 目標 • 讓很多人可以同時使用電腦 • 提供充沛的計算與儲存功能 • 讓使用者可以互相分享資料 • 結果 • 1969初版,在GE 645電腦上執行 • 系統無法達成預定目標,Bell Lab 退出 • 在 MIT 的堅持下,Multics 最後還是做出來了,至今還有同好會
UNIX 的由來(續) • 人物: Ken Thompson 與 Dennis Ritchie • Computing Science Research Center, AT&T Bell Lab • 曾經參與 Multics • 希望能夠有一個好用的互動式計算環境(Interactive Computing) • Space Travel 太空歷險遊戲 • Fortran version on GECOS Honeywell 635 • 太空船太難駕駛,不好玩;expensive to run • PDP-7:good graphic display, cheap executing power • Cross-assembly on GECOS, paper tape to PDP-7
UNIX 的由來(續) • Unix 的出現 • T&R 為 DEC PDP-7 撰寫 file system, process subsystem, and utility programs • 命名者:Brian Kernighan • Unix 第一次派上用場 • 為 Bell Lab 專利部門發展文書處理系統 • 1971 年 DEC PDP-11 • 16KB RAM for system, 8KB RAM for program, 512KB disk space, 64KB per file
UNIX 的由來(續) • Thompson 打算在 PDP-11 電腦的 Unix 系統上開發 Fortran Compiler • 結果發展出 B 語言(interpreter) • Ritchie 根據 B 語言發展出 C 語言 • 1973年 Unix 以 C 重寫,在 Bell Lab 內裝設 25 套,成立 Unix System Group • AT&T 不能販賣 Unix(1956 Consent Decree),將 Unix 提供給各大學作為教學用途,使用人口大增
UNIX 的由來(續) 1974, T&R 在 Communications of the ACM 上刊登論文描述 Unix 1977, 500 Unix sites; Interactive Systems Corporation 販賣 Unix 加值服務(系統安裝、辦公室自動化); Unix 被移植到 DEC PDP 以外的電腦上(Interdata 8/32) 各家廠商自行增強 Unix 的功能,發展出許多互不相容的 Unix 版本
UNIX 的由來(續) • 1977~1982, AT&T 整合各種 Unix 版本發表標準版本,人稱 Unix System III • 1983, AT&T Unix System V • 1978, UC Berkeley 發表 BSD 版 Unix • 1980, Novell 買下 AT&T 的 Unix System Lab (USL) • 目前版本 • Unix System V Release 4.2(SVR4.2) • 4.4 BSD
各種版本的 UNIX • UnixWare • USL -> Novell -> SCO • XENIX • Microsoft+SCO • SunOS • Sun Microsystems • SunOS 4.4 以前是 BSD 版 • 之後改稱 Solaris 是 SVR4 版 • AIX • IBM • HP-UX • HP • OSF/1 • DEC -> Compaq -> HP • Irix • SGI • BSD • FreeBSD, OpenBSD, NetBSD • Linux
什麼是 Linux ? • Linux 是一套作業系統 • Linux 是一種 Unix • 符合 POSIX (Portable Operating System Interface)標準 • Multiuser • Multitasking • Virtual Memory • TCP/IP Networking • Linux 是一種開放原始碼的自由軟體
什麼是 開放原始碼? • Open Source • 程式碼隨著應用程式一起散佈出去 • 軟體本身不賣錢 • GPL:General Public License • 你可以送人或販賣拷貝,但你必須包含原始程式碼,或是讓程式碼可由你送出或販賣執行檔相同的方式取得。 • 如果你散佈任何的修改,你必須散佈這些修改的程式碼。
什麼是 自由軟體? 由「理查.史托曼(Richard Stallman」所提出 軟體是由前人的經驗而發展出,而這些資產應該是開放的、可同享的 創立了自由軟體基金會 從維護、服務、教育訓練中得到商業利益
軟體的自由 可任意使用的權利 可自由散佈的權利 可修改該軟體以符合自己用途的權利 散佈修改後軟體的權利
GNU 計畫 1984年以發展自由軟體版的UNIX為目的而成立的計畫 1991年時Linux出現,使GNU開始以Linux為主軸 通用公共授權GPL Linux的核心、C/C++的編譯器 gcc、圖形軟體GIMP、開機管理程式GRUB等都是GNU的主要重量級軟體
GPL Richard Stallman於1989年合併當時的自由軟體授權而撰寫的GNU GPL條款 在1991年修改與新增條款為GPL v2 GPL要求軟體在重新散佈或修改時,必需提供原始程式碼 修改後的軟體也要同樣以GPL授權 2007年,GPL v2經過最近的一次昇級,成為新的GNU GPL v3
Apache 軟體基金會 ASF是支持自由軟體的一個非營利組織 Apache 網頁伺服器 與GPL的其中一個不同處是允許「再授權」 當軟體使用Apache授權時,重新散佈或修改程式碼後,不一定要提供原始程式碼 經修改後的軟體可以改採其他非Apache的授權
Linux 的由來 • 1991年十月,Linus Torvalds(芬蘭赫爾辛基大學),23歲。在 comp.os.minix 發表文章: • “Hello everybody out there using minix ! I'm doing a (free) operation system (just a hobby, won't be big and professional like gnu) for 386(486) AT clones.” • Linux Kernel 0.02 原始碼 • 這個 0.02 版的 Linux 核心程式公諸於世後,Internet 上的許多高手相繼地投注在 Linux 的相關開發,Linux 成為非常受人歡迎的一個多人多工、免費、穩定、效率高的作業系統,可以在包括 i386、SPARC、Alpha、MIPS、PowerPC等等眾多不同電腦系統平台上執行,蔚為風潮
關於 MINIX • MINIX • 教學用的迷你 Unix • Andrew S. Tanenbaum 與 Albert S. Woodhull • “Operating Systems: Design and Implementation, 2/e,” Prentice-Hall
Linux 的版本 • Distributions 發行版本 • Linux 的愛用者組織或加值服務商將 Linux kernel 與各種 GNU GPL 工具整合起來,形成一套完整的 Linux 作業系統 • 發行方式 • FTP • Floppy Disks • CDROM, DVD
Linux 的版本(續) • Slackware • 歷史最悠久,精簡,適合老手 • Walnut Creek CDROM, http://www.cdrom.com/, http://www.slackware.com
Linux 的版本(續) • RedHat Linux (http://www.redhat.com) • 市場佔有率最高,最早注意安裝上的便利與使用的簡單性 • RPM(RedHat Package Management):應用程式的安裝管理,已經成為業界標準 • Fedora (http://fedoraproject.org) 為 Redhat 的尖兵 • 以 Red Hat Enterprise Linux (RHEL) Source Code 重新包裝而成的版本 • CentOS, Oracle Unbreakable Linux, Scientific Linux
RedHat Support Lifecycle • Every major version of Red Hat Enterprise Linux is maintained and supported for 7 years • CentOS 在 RHEL 更新版推出後隨即更新版本 • Fedora 的 support 只有 9~13 個月 • 持續獲得支援的方法:不斷地升級版本 • Fedora 10, Fedora 11, Fedora 12, Fedora 13,…
Linux 的版本(續) • SUSE(http://www.novell.com/linux/) • 在歐洲最流行,德國 S.U.S.E., Inc. • Novell 於 2003 年 11 月併購 S.U.S.E., Inc. • openSUSE (http://www.opensuse.org/) 為 SUSE Enterprise Linux 的公眾版
Linux 的版本(續) • Debian (http://www.debian.org/) • GNU 計畫發展出來的 Distribution • 系統架構規劃最為嚴謹的,具有Linux軟體最多,但安裝上較為不易
Linux 的版本(續) • Ubuntu Linux (http://www.ubuntu.com) • Based on Debian GNU/Linux, 採用最新的套件 • Canonical Ltd, 南非企業家 Mark Shuttleworth • 版本每年更新兩次,以推出的年月作為版號 • 預設採用 GNOME 介面 X Window • Kubuntu:採 KDE 介面 • Xubuntu: Xfce desktop environments • Edubuntu: 適合學校環境的版本 • Gobuntu: 不是 free software 不用
Ubuntu Linux 版本(續) • LTS: long term support, 3 years support for the desktop version and 5 years for the server version. • Ubuntu releases new versions every 6 months, and supports those releases for 18 months with daily security fixes and patches to critical bugs. • 每年四月與十月各推出一個版本
Linux 的優點 • 免費! • 絕大部分的 Linux 都可以免費取得,免費獲得更新套件,免費升級新版 • 發展快速,新軟體源源不絕 • 容易上手(相較於 Solaris 和 FreeBSD) • 穩定,適合用來架設網路伺服器 • 優異的多工作業效能,適合科學計算、伺服器 • 跨平台:Linux 可以在各種 CPU 上執行 • X86, AMD64, PowerPC, SPARC, ARM, SH,…
Linux 的優點(續) • 不需要常常重開機(相較於 MS Windows) • 啟動/關閉各種網路服務,不影響系統中其他部分的作業 • 軟體移植性高 • 公開所有的程式碼和設定檔,沒有隱藏起來的API,不用 registry(相較於 MS Windows) • 絕大部分的設定檔都是純文字檔
Linux 的缺點 • 缺乏技術支援 • 硬體驅動程式較缺乏 • 商用應用程式較少 • 雖然已經有 Open Office和 KOffice但是便利性還是輸給 MS Office • 使用者的技術要求較高 • 使用 Linux 要有 Hacker 的精神!
Linux 的用途 • 研究教學 • 作業系統實習 • 計算、分析、撰寫論文 • 商業應用 • NASA: 天文相片影像處理 • Digital Domain: 鐵達尼號電影特效 • 網路應用 • 網站架設:WWW, FTP, NEWS, Gopher • 網路伺服器:DNS, E-mail, Firewall, Router, Internet Access, SAMBA
Linux 的用途(續) • 嵌入式系統 • 諾基亞、摩托羅拉、三星都已經推出採用 Linux 為作業系統的智慧手機 • Google 的Android手機平台也基於Linux作業系統
Linux上的軟體-套件 基於Linux核心的套件目前有數千種 圖形介面的X-Window 音樂播放的Amarok、XMMS 圖檔處理GIMP MSN的即時聊天aMSN、Pidgin 辦公室軟體OpenOffice
圖形介面 X-Window GNOME KDE
Linux 未來的展望 由於 Open Source 與 GPL 精神的影響,軟體開發的成本將會變低,群策群力的力量,發展的速度變得更快,軟體也變得更好。對講求 time to market 及 total solution 的廠商而言,在桌上型電腦系統、伺服器、及嵌入式系統(Embedded Systems)市場,免費好用的 Linux 是很好的選擇。
國際認證 • RHCE • Red Hat 為企業級Linux產品設計的一套專業認證 • LPIC • 由 Linux 專業學會(LPI, Linux Professional Institute) 舉辦的一項開放型證照考試 • NCLP • Novell Linux認證專家
RHCE Red Hat Certified Engineer 需通過RH302考試才能取得認證 以實機操作方式 規定時間內,解決並排除實機故障 難度較高也較能證明通過認證者的實作能力
LPIC • 通用型Linux認證,不限定特定發行版本 • Level 1 • 需通過101與102兩個測驗 • Linux的專業知識與能力 • Level 2 • 需通過Level 1認證後才能參加 • 201與202兩項考試 • Level 3 • 代表測試者擁有企業級Linux系統專案能力 • 為複雜的企業環境提供整合性的專業Linux功能
NCLP 2005年評選為全球十大熱門專業認證之一 SuSE Linux系統管理 伺服器架構設計與建置的專業能力 管理兩部在同一區網內的主機 實機測驗較能驗證受測者的實作能力