Giới thiệu các họ hệ điều hành LINUX/UNIX PDF

Summary

Tài liệu này đưa ra một cái nhìn tổng quan về lịch sử phát triển của các hệ điều hành LINUX/UNIX, bao gồm kiến trúc, cách tương tác người dùng, hệ thống file, và các phiên bản khác nhau. Nó cũng đề cập đến các mốc thời gian quan trọng và các sự kiện trong quá trình phát triển của các hệ điều hành này.

Full Transcript

CHƯƠNG 5. GIỚI THIỆU CÁC HỌ HỆ ĐIỀU HÀNH LINUX/UNIX Chương này giới thiệu lịch sử phát triển của hệ điều hành lâu đời nhất, Unix, và sự ra đời của Linux cũng như các biến thể của nó. Chương này cũng giới thiệu kiến trúc và các bộ phận căn bản của hệ điều hành bao gồm cách thức tương t...

CHƯƠNG 5. GIỚI THIỆU CÁC HỌ HỆ ĐIỀU HÀNH LINUX/UNIX Chương này giới thiệu lịch sử phát triển của hệ điều hành lâu đời nhất, Unix, và sự ra đời của Linux cũng như các biến thể của nó. Chương này cũng giới thiệu kiến trúc và các bộ phận căn bản của hệ điều hành bao gồm cách thức tương tác với người dùng, hệ thống file và các phiên bản của hệ điều hành. 5.1 Lịch sử phát triển Unix là họ hệ điều hành máy tính hỗ trợ đa nhiệm và đa người dùng phát triển từ phiên bản Unix của AT&T từ những năm 1970. Một số đặc tính quan trọng của UNIX vẫn còn được tiếp tục duy trì đến ngày nay: ▪ Mỗi một chương trình chỉ làm một nhiệm vụ thật tốt ▪ Đầu ra của mỗi chương trình có thể là đầu vào cho chương trình khác ▪ Viết các nhân nhỏ nhất có thể được Hệ điều hành UNIX nhanh chóng phổ biến bên trong công ty AT&T và được sử dụng trong các máy tính cỡ nhỏ. Việc công ty AT&T cấp phép sử dụng UNIX dẫn đến dự ra đời các biến thể thương mại cũng như sử dụng trong môi trường học thuật. Các mốc thời gian quan trọng của các phiên bản được thể hiện trong Hình 5-1 dưới đây. Trung tâm Berkeley của Trường Đại học Tổng hợp California phát triển biến thể Unix gọi là BSD (Berkeley Software Distribution) đóng vai trò nền tảng quan trọng cho việc phát triển các biến thể sử dụng trong môi trường học thuật. Trong khi đó công ty AT&T tiếp tục phát triển UNIX dưới tên gọi System III và sau này là System V. Hệ điều hành UNIX sử dụng thiết kế mô-đun với các phần mềm chức năng được xây dựng đơn giản và rõ ràng do vậy Unix dễ dàng phát triển và mở rộng. Một điểm quan trọng của UNIX là được viết bằng ngôn ngữ lập trình C nên dễ dàng chuyển đổi nền tảng hay phần cứng khác nhau. Người dùng chỉ cần thực hiện việc biên dịch là phần mềm là có thể sử dụng được trên hệ thống mới. UNIX được sử dụng trên nhiều hệ thống/nền tảng khác nhau như máy chủ, máy trạm và thiết bị di động. Hình 5-1. Mốc thời gian của các phiên bản UNIX và LINUX Vào năm 1984 Richard Stallman khởi xướng Hội Phần mềm miễn phí FSF (Free Software Foundation) và khởi động dự án GNU để tạo ra phiên bản miễn phí của hệ điều hành UNIX. Mục tiêu của FSF là cho phép các phần mềm có thể được phân phối, sử dụng, đọc và sửa chữa mà không phải trả bất kỳ chi phí nào. FSF đã sử dụng thành công khối lượng khổng lồ các phần mềm quan trọng như trình biên dịch gcc, phần mềm soạn thảo Emacs... Linux là hệ điều hành mã nguồn mở cho PC được phát triển vào năm 1991 bởi Linus Torvalds. Nhân Linux mở cho mọi người có thể sửa đổi, cải tiến tính năng và có thể được tích hợp với các phần mềm FSF khác. Chính vì vậy Linux trở nên phổ biến và dễ dàng sửa đổi. Trong cộng đồng LINUX, các tổ chức khác nhau sử dụng các cách kết hợp các thành phần phần mềm khác nhau để tạo ra các phiên bản khác nhau vì vậy các phiên bản này còn được gọi là các bản phân phối (distribution) như RedHat, Slackware, Debian và Mandrake. 5.2 Kiến trúc của hệ điều hành Về cơ bản kiến trúc của hệ điều hành LINUX/UNIX bao gồm các bộ phận chính như sau: ▪ Nhân: là phần cốt lõi của hệ điều hành chịu trách nhiệm tương tác trực tiếp với phần cứng và đảm bảo cho hầu hết các hoạt động của hệ thống. Phần nhân chứa các chương trình quản lý bộ nhớ, CPU, quản lý file và các trình điều khiển thiết bị. Hình 5-2. Kiến trúc cơ bản LINUX/UNIX ▪ Vỏ : Giao tiếp với phần nhân và nhận câu lệnh từ người dùng. Có thể coi vỏ là chương trình thông dịch đặc biệt dùng để thực thi các câu lệnh của hệ điều hành như gọi các chương trình. Một số dạng vỏ như: o sh (Bourne shell): vỏ nguyên thủy của UNIX o bash (Bourne again shell): vỏ mặc định của LINUX o csh (C shell): rất giống với ngôn ngữ C dùng phổ biến trên dòng BSD. ▪ Giao diện đồ họa: được chạy ở mức ứng dụng và phát triển dựa trên hệ thống “X Window”. Các giao diện quản lý giao diện đồ họa phổ biến như CDE (Common Desktop Environment), KDE (K Desktop Environment) hay GNOME. Các giao diện quản lý cho phép người dùng tương tác một cách với hệ thống thông qua các thiết bị giao tiếp như chuột, bàn phím, âm thanh. ▪ Dịch vụ hệ thống: cung cấp các chương trình chạy ở chế độ nền hay câu lệnh hệ thống trợ giúp người dùng như dịch vụ truy nhập từ xa, quản trị máy tính ▪ Ứng dụng người dùng: là các chương trình chạy theo yêu cầu của người dùng như trình biên dịch gcc, bộ ứng dụng văn phòng Star office. LINUX được phát triển như là một hệ thống miễn phí thay thế cho hệ thống thương mại của UNIX. LINUX hoạt động được trên nhiều phần cứng khác nhau trong khi hầu hết các phiên bản UNIX chỉ hoạt động trên một hạ tầng phần cứng duy nhất. Do lịch sử phát triển, LINUX và UNIX có nền tảng chung song cũng rất khác nhau. Rất nhiều công cụ, tiện ích tiêu chuẩn trong LINUX thực sự được phát triển từ các sản phẩm tương tự trong UNIX. 5.3 Giao diện của Linux/Unix Người dùng làm việc với LINUX/UNIX thông qua giao diện dòng lệnh (Command Line Interface - CLI) hoặc giao diện đồ họa. Giao diện CLI được cung cấp thông qua lớp vỏ với khả năng tùy biến và tự động hóa thực thi các câu lệnh (lập trình) thuận tiện. Với những công việc đơn giản như chạy chương trình hay quản lý file thì giao diện đồ họa đơn giản và thuận tiện hơn với người dùng mới. Song giao diện đồ họa yêu cầu phần cứng cao hơn và chạy chậm hơn so với giao diện dòng lệnh. 5.3.1 Vỏ Vỏ được kích hoạt thông qua chương trình đặc biệt gọi là đầu cuối (terminal). Thông thường, người dùng có thể cài đặt vỏ ngầm định từ hồ sơ đăng nhập hay kích hoạt vỏ từ dấu nhắc của chương trình đầu cuối như lệnh sh cho vỏ nguyên thủy của UNIX hay lệnh bash cho “Bourne shell”. Về cơ bản, các vỏ cung cấp các chức năng tương tự nhau dù cú pháp có thể khác đôi chút. Hiện nay, 2 loại vỏ dùng phổ biến hơn cả là tsch và bash. Một số câu lệnh tiêu biểu có thể sử dụng với giao diện dòng lệnh: − ls: liệt kê thư mục − mkdir tạo thư mục − cp: chép file − rm: xóa file − mv: chuyển file − vi: trình soạn thảo − cd: chuyển thư mục − man: trợ giúp − paswd: đổi mật khẩu − mount: cài đặt ổ đĩa vào cây thư mục − unmount: gỡ cài đặt ổ đĩa khỏi cây thư mục − top: liệt kê các chương trình đang chạy − init 3: chế độ khởi động Khi nhập câu lệnh qua giao diện dòng lệnh, người dùng có thể sử dụng các ký tự đặc biệt như chuyển hướng vào/ra với dữ liệu của chương trình như “>, kq.txt. 5.3.2 Giao diện đồ họa Hệ thống “X Window” cung cấp các chức năng đồ họa cơ sở cho các hệ thống LINUX/UNIX hiện đại. X Window được xây dựng dựa trên kiến trúc chủ/khách và có thể hoạt động trên nhiều nền tảng khác nhau. Việc cung cấp giao diện đồ họa cho phép người dùng tương tác với hệ thống cần có các chương trình quản lý giao diện. Các giao diện đồ họa có thể được cài đặt sau khi người dùng cài đặt thành công hệ điều hành. Người dùng có thể lựa chọn các giao diện đồ họa tiêu biểu cho LINUX/UNIX như sau: X Windows Hệ thống giao diện đồ họa X Windows được Viện Công nghệ Massachusetts phát minh ra vào những năm 1980. Mục đích của hệ thống này là để đảm bảo tính độc lập hoàn toàn với các thiết bị và giao tiếp mạng. Hệ thống được thiết kế để dễ dàng chuyển đổi sang các kiểu thiết bị phần cứng mới và đề cho các chương trình hoạt động ở máy tính này có thể hiển thị kết quả ở máy khác. Đặc điểm thứ hai này rất hữu dụng cho phép máy tính cấu hình yếu hơn có thể tận dụng năng lực của máy tính mạnh và đắt tiền hơn. X Windows trở thành chuẩn không chính thức cho UNIX. Chương trình chủ X Server kiểm soát các dịch vụ của X Windows bao gồm cả các thiết bị phần cứng như bàn phím, chuột, thiết bị hiển thị... và dịch vụ phần mềm như phông chữ, màu sắc. Các chương trình truy nhập đến các chức năng hiển thị gọi là chương trình khách. Các chương trình quản lý giao diện làm nhiệm vụ thay đổi kích cỡ cửa sổ, hiện thị các chương trình hay ẩn các biểu tượng của người dùng... Khi khởi động X Windows, người dùng có thể lựa chọn chương trình quản lý giao diện mà mình cài đặt. Unity Unity là môi trường làm việc đồ họa của phiên bản Ubuntu do công ty Canonical phát triển. Unity hoạt động trên nền GNOME và dùng hầu hết các ứng dụng và công cụ của GNOME. Khá nhiều chức năng giao diện của Unity giống với Windows 7 như thanh nhiệm vụ, giao tiếp dùng phím tắt hay chuột. Hình 5-3. Màn hình làm việc Unity GNOME Đây là môi trường làm việc phổ biến nhất với đặc trưng đơn giản và khá gọn nhẹ. GNOME được Miguel de Icaza và Federico Mena xây dựng từ năm 1997. GNOME được chọn làm môi trường làm việc mặc định cho người dùng của Ubuntu, Fedora và Debian. Phiên bản GNOME 3 được thiết kế mới hoàn toàn và hướng tới các thiết bị hỗ trợ giao tiếp chạm. Hình 5-4. Màn hình làm việc GNOME KDE KDE thường phức tạp hơn so với GNOME do cung cấp nhiều tùy chọn cấu hình và tính năng hơn. Cách bố trí các phần tử giao diện của KDE trông khá giống môi trường làm việc của Microsoft Windows. KDE phù hợp với người dùng muốn có nhiều lựa chọn để cấu hình máy tính làm việc của theo yêu cầu mình. Hình 5-5. Màn hình làm việc KDE 5.4 Hệ thống file của Linux/Unix Hệ thống file cung cấp phương tiện tổ chức dữ liệu trên các thiết bị lưu trữ và giúp che dấu các chi tiết vật lý như cung (sector) hay liên cung (cluster) với người dùng. Hệ thống file của LINUX/UNIX có cấu trúc dạng cây. Gốc của cây cũng đồng thời gọi là gốc hệ thống file được phân biệt bằng ký tự “/”. Phía dưới gốc là các file và thư mục như trong hình dưới đây. Ý nghĩa của các thư mục tiêu biểu như sau: ▪ /: thư mục gốc ▪ /dev: thư mục lưu các file mô tả thiết bị sử dụng trong hệ thống ▪ /etc: lưu file cấu hình của hệ thống ▪ /home: thư mục của người dùng ▪ /sbin: các chương trình quản trị hệ thống ▪ /tmp: nháp dùng để lưu các file tạm thời ▪ /usr: chương trình người dùng ▪ /var: chứa các file nhật ký hoạt động của hệ thống và các chương trình người dùng. Hình 5-6. Cây thư mục LINUX/UNIX Các hệ thống file phổ biến được LINUX/UNIX hỗ trợ như sau: ▪ Hệ thống file mở rộng (Extended File System). Phiên bản ext2 là hệ thống file cổ nhất và vẫn được sử dụng của LINUX. Đây là hệ thống file đơn giản có khả năng chống lại việc phân mảnh hệ thống file tuy nhiên có tốc độ truy nhập chậm. Các phiên bản ext3 và ext4 ra đời giải quyết các điểm yếu của phiên bản nguyên thủy và cung cấp các tính năng cao cấp hơn như khả năng chịu lỗi, mở rộng kích cỡ file lưu trữ. ▪ Hệ thống FAT là hệ thống file đơn giản song không có khả năng chịu lỗi và dễ bị phân mảnh. Hệ thống file này nay vẫn được sử dụng cho các thiết bị lưu trữ ngoài như thẻ nhớ hay thẻ nhớ USB. ▪ Hệ thống file xfs hướng tới các doanh nghiệp hay công ty lớn, hiệu năng cao, có khả năng chịu lỗi tốt thông qua cơ chế nhật ký (log). xfs là hệ thống file 64 bit có khả năng quản lý dung lượng lưu trữ tới 106TB. Để sử dụng được các hệ thống file trên các thiết bị lưu trữ người dùng phải thực hiện thao tác “gắn” (mount) hệ thống file đó vào trong một thư mục của hệ điều hành. Thao tác này có thể được lập trình tự động khi máy tính khởi động hoặc khi người dùng đăng nhập vào hệ thống. 5.5 Các phiên bản chính của Linux/Unix Unix là một trong những dòng hệ điều hành lâu đời với nhiều tính năng quan trọng như đa người dùng, chia sẻ tài nguyên và các tính năng này có ảnh hưởng mạnh mẽ đến các dòng hệ điều hành hiện thời. Với mục tiêu ban đầu tạo ra hệ điều hành có môi trường làm việc làm việc tương tự UNIX, ngày nay các hệ điều hành dựa trên Linux đã thay thế hầu hết các phiên bản thương mại UNIX. Cùng với sự phát triển mạnh mẽ của mã nguồn mở, các phiên bản Linux đã thu hút không chỉ giới học thuật hay người dùng cuối mà rất nhiều công ty lớn đã cung cấp các giải pháp hệ thống khác nhau dựa trên nền Linux. Dưới đây trình bày tóm tắt các phiên bản cơ bản của hai dòng hệ điều hành UNIX và Linux. 5.5.1 Các phiên bản Unix System V là phiên bản thương mại quan trọng trong những năm 1980 do công ty AT&T phát triển. Phiên bản UNIX này làm cơ sở cho nhiều phiên bản thương mại do các công ty lớn phát triển và đưa ra thị trường như HP, IBM. Các phiên bản thương mại đáng kể gồm có: AIX do công ty IBM phát triển từ năm 1990, Sun Solaris do công ty SUN Microsystems, HP-UX do Hewlett Packard từ 1990... Sự phát triển mạnh mẽ của máy tính cá nhân PC khiến cho việc chạy UNIX và các phần mềm truyền thống trên PC trở nên dễ dàng và thuận tiện hơn. Việc phát triển của các sản phẩm và cộng đồng sử dụng mã nguồn mở làm cho thị phần của UNIX thu nhỏ so với LINUX. Đến nay, các phiên bản UNIX vẫn còn được sử dụng trong các hệ thống chuyên biệt. Phiên bản BSD được phát triển bởi Trung tâm Nghiên cứu hệ thống máy tính của Trường Tổng hợp California. Đây là phiên bản có nhiều ảnh hưởng trong giới học thuật. Phiên bản nguyên thủy vẫn chứa các đoạn mã nguồn riêng của AT&T và được công ty này cấp phép. Kể từ bản 4.4, BSD không còn chịu các hạn chế bản quyền và cấp mã nguồn tới mọi người dùng. 5.5.2 Các phiên bản Linux LINUX là hệ điều hành cung cấp máy tính lập trình UNIX phong phú và miễn phí theo Giấy phép GNU công cộng. Hệ điều hành này được phát triển vào năm 1991 do Linus Tovalds và được tiếp tục bởi cộng đồng và nhiều nhà sản xuất. Sau đây là các phiên bản tiêu biểu. Debian do Ian Murdock phát triển vào năm 1993. Đây là một trong những phiên bản LINUX phổ biến nhất do tính tin cậy và có bộ quản lý phần mềm mạnh. Phiên bản này được cung cấp từ địa chỉ http://www.debian.org/. Các biến thể từ phiên bản này bao gồm: ▪ Ubuntu, www.ubuntu.com, được hỗ trợ từ công ty Canonical Ltd. ▪ Knoppix, http://www.knoppix.org/, cho phép chạy từ đĩa quang phù hợp với việc phục hồi hệ thống. ▪ Linspire, www.linspire.com, phù hợp với người dùng phổ thông quen thuộc với moi trường Microsoft Windows. Redhat do công ty Redhat, www.redhat.com, hỗ trợ và phát triển, hướng tới nhóm người dùng công ty và xí nghiệp. Phiên bản miễn phí của RedHat có tên là Fedora cũng do công ty duy trì và phát triển. Một biến thể khác là Mandrake cung cấp giao diện thân thiện và dễ dùng, hỗ trợ thiết bị phần cứng tốt www.mandriva.com. sLackWare, có địa chỉ tại www.slackware.com, là phiên bản Linux hướng tới giao diện dòng lệnh, khó sử dụng với người dùng mới. SuSE có địa chỉ tại www.opensuse.org. Phiên bản này cung cấp giao diện người dùng thân thiện và cấu hình phần cứng qua giao diện đồ họa 5.6 Câu hỏi ôn tập cuối chương 1. Trình bày khái niệm và các đặc điểm của Unix? 2. Trình bày các mốc phát triển quan trọng của các phiên bản họ Unix? 3. Trình bày kiến trúc cơ bản của hệ điều hành Linux/Unix? 4. Trình bày về giao diện của hệ điều hành Linux/Unix? 5. Đặc điểm hệ thống file của hệ điều hành Linux/Unix? 6. Các phiên bản chính của hệ điều hành Linux/Unix?

Use Quizgecko on...
Browser
Browser