Hệ điều hành
Nguyễn Thị Lan Hương
Giới thiệu
Các máy tính ban đầu không có hệ điều hành. Người điều hành sẽ tải và chạy chương trình một cách thủ công. Khi chương trình được thiết kế để tải và chạy chương trình khác, nó đã thay thế công việc của con người. Thuật ngữ "hệ điều hành" được dùng gần đây chỉ tới một phần mềm cần thiết để người dùng quản lý hệ thống và chạy các phần mềm ứng dụng khác trên hệ thống. Nó không chỉ có nghĩa là "phần lõi" tương tác trực tiếp với phần cứng mà còn cả các thư viện cần thiết để các chương trình quản lý và điều chỉnh hệ thống. Không có sự phân biệt rõ ràng giữa phần mềm ứng dụng và hệ điều hành. Tuy nhiên, đôi khi vấn đề này cũng được tranh cãi. Thí dụ trường hợp Bộ Tư pháp Mỹ và Microsoft tranh cãi Internet Explorer có phải là một phần của Windows không. Cấp thấp nhất của hệ điều hành là phần lõi (còn gọi là nhân), lớp phần mềm đầu tiên được tải vào hệ thống khi khởi động. Các phần mềm được tải tiếp theo phụ thuộc vào nó sẽ cung cấp các dịch vụ cốt lõi cho hệ thống. Những dịch vụ phổ biến là truy xuất đĩa, quản lý bộ nhớ, định thời, và truy xuất tới thiết bị phần cứng. Có nhiều tranh cãi về những thành phần nào tạo nên phần lõi, như hệ thống tập tin có được đưa vào phần lõi không.
Hệ điều hành
Nguyễn Thị Lan Hương
Hệ điều hành là gì Hệ điều hành là một chương trình chạy trên máy tính, dùng để điều hành, quản lý các thiết bị phần cứng và các tài nguyên phần mềm trên máy tính. Hệ điều hành đóng vai trò trung gian trong việc giao tiếp giữa người sử dụng và phần cứng máy tính, cung cấp một môi trường cho phép người sử dụng phát triển và thực hiện các ứng dụng của họ một cách dễ dàng. Tuy nhiên có nhiều người quan sát hệ điều hành dưới các góc độ khác nhau vì thế tồn tại nhiều định nghĩa về hệ điều hành. Đối với người sử dụng: HĐH là tập hợp các chương trình, phục vụ khai thác hệ thống tính toán một cách dễ dàng, thuận tiện. Người sử dụng khi thực hiện một chương trình nào đó trên MTDT thì chỉ quan tâm đến việc hệ thống có đáp ứng được nhu cầu của họ hay không? Có chương trình cần thực hiện, có đủ bộ nhớ để chạy hay không. Họ không quan tâm đến việc hệ điều hành làm nhằm mục đích gì, có cấu trúc như thế nào. Đối với người làm công tác quản lý: HĐH là một tập các chương trình phục vụ quản lý chặt chẽ và sử dụng tối ưu các tài nguyên của hệ thống tính toán. Đối với cán bộ kỹ thuật: HĐH là hệ thống các chương trình bao trùm lên một máy tính vật lý cụ thể để tạo ra một máy logic với những tài nguyên mới và khả năng mới. Các định nghĩa trên phản ánh vị trí quan sát của người nêu. Họ đứng ở ngoài hệ thống và thể hiện điều họ mong đợi và cũng là điều mà họ nhìn thấy. Đối với cán bộ lập trình hệ thống: HĐH là hệ thống mô hình hóa, mô phỏng các họat động của máy, của người sử dụng và thao tác viên họat động trong các hệ thống đối thoại nhằm tạo môi trường để quản lý chặt chẽ các tài nguyên và tổ chức khai thác chúng một cách thuận tiện và tối ưu. Đối với cán bộ lập trình hệ thống, vị trí của họ là ở bên trong hệ điều hành. Họ quan sát các module, các thành phần của hệ thống, quan sát mối quan hệ giữa chúng.
Hệ điều hành
Nguyễn Thị Lan Hương
Chức năng chính yếu của hệ điều hành
Theo nguyên tắc, hệ điều hành cần thỏa mãn hai chức năng chính yếu sau: Quản lý chia sẻ tài nguyên Tài nguyên của hệ thống (CPU, bộ nhớ, thiết bị ngoại vi, ...) vốn rất giới hạn, nhưng trong các hệ thống đa nhiệm, nhiều người sử dụng có thể đồng thời yêu cầu nhiều tài nguyên. Để thỏa mãn yêu cầu sử dụng chỉ với tài nguyên hữu hạn và nâng cao hiệu quả sử dụng tài nguyên, hệ điều hành cần phải có cơ chế và chiến lược thích hợp để quản lý việc phân phối tài nguyên. Ngoài yêu cầu dùng chung tài nguyên để tiết kiệm chi phí, người sử dụng còn cần phải chia sẻ thông tin (tài nguyên phần mềm) lẫn nhau, khi đó hệ điều hành cần đảm bảo việc truy xuất đến các tài nguyên này là hợp lệ, không xảy ra tranh chấp, mất đồng nhất... Giả lặp một máy tính mở rộng Hệ điều hành làm ẩn đi các chi tiết phần cứng, người sử dụng được cung cấp 1 giao diện đơn giản, dễ hiểu và không phụ thuộc vào thiết bị cụ thể. Thực tế, ta có thể xem Hệ điều hành như là 1 hệ thống bao gồm nhiều máy tính trừu tượng xếp thành nhiều lớp chồng lên nhau, máy tính mức dưới phục vụ cho máy tính mức trên. Lớp trên cùng là giao diện trực quan nhất để chúng ta điều khiển.
Nhiệm vụ của hệ điều hành •Điều khiển và quản lý trực tiếp các phần cứng như bo mạch chủ, bo mạch
đồ họa và bo mạch âm thanh,... •Thực hiện một số thao tác cơ bản trong máy tính như các thao tác đọc,
viết tập tin, quản lý hệ thống tập tin (file system) và các kho dữ liệu. •Cung ứng một hệ thống giao diện sơ khai cho các ứng dụng thường là thông qua một hệ thống thư viện các hàm chuẩn để điều hành các phần cứng mà từ đó các ứng dụng có thể gọi tới. •Cung ứng một hệ thống lệnh cơ bản để điều hành máy. Các lệnh này gọi
là lệnh hệ thống (system command). •Ngoài ra hệ điều hành, trong vài trường hợp, cũng cung cấp các dịch vụ
cơ bản cho các phần mềm ứng dụng thông thường như chương trình duyệt Web, chương trình soạn thảo văn bản....
Hệ điều hành
Nguyễn Thị Lan Hương
Các thành phần của hệ điều hành •Hệ thống quản lý tiến trình (Process management) Một tiến trình có thể được định nghĩa như là một chương trình đang thực thi. Khi thực thi, một tiến trình cần một số tài nguyên nhất định như CPU, bộ nhớ, tập tin và hệ thống xuất nhập (i/o devices). Và khi tiến trình đó hoàn thành, tất cả những tài nguyên được cấp cho nó trước đó sẽ được trả lại cho Hệ Điều Hành. Chúng ta nên chú ý rằng một chương trình (program) bản thân nó không phải là một tiến trình bởi vì một chương trình là một thực thể bị động ví như mọi tập tin được lưu trữ trong ổ cứng, ngược lại một tiến trình là một thực thể đang hoạt động (một chương trình đang hoạt động). Một hệ thống bao gồm rất nhiều tiến trình, trong đó có tiến trình của hệ điều hành, còn lại là tiến trình của chương trình của user, Tất cả những tiến trình này có thể được thực thi đồng thời bằng cách phân chia thời gian CPU giữa chúng (multiplexing), mỗi một tiến trình sẽ được hệ điều hành gán một khoảng thời gian nhất định để thực thi, sau khoảng thời gian đó hệ điều hành sẽ chuyển sang tiến trình khác, như vậy các tiến trình thực tế không làm việc song song nhưng do thời gian hệ điều hành gán một khoảng thời gian rất ngắn nên người dùng có cảm tưởng tất cả tiến trình đều chạy song song, ngoài ra một hệ điều hành còn có cơ chế cung cấp sự ưu tiên cho một tiến trình nhất định nào đó (thời gian gán CPU nhiều hơn, ít hơn tùy theo ưu tiên). Đây là trường hợp của hệ điều hành tiên tiến như Windows, Linux.... Ngoài ra trong những hệ điều hành cổ xưa như MS-DOS, là lọai hệ điều hành đơn nhiệm và phân lô, một tiến trình sẽ được thực thi đến khi hoàn thành, sau đó một tiến trình khác mới được thực thi, không có hệ thống gán thời gian CPU cho tiến trình như ở những hệ điều hành tiên tiến. Hệ điều hành đảm nhiệm những hoạt động sau đối với hệ thống quản lý tiến trình: - Khởi tạo và Xóa cả hai loại tiến trình (process) của user và system - Đình chỉ và tiếp tục tiến trình - Cung cấp cơ chế cho việc đồng bộ tiến trình - Cung cấp cơ chế cho việc truyền đạt thông tin giữa các tiến trình - Cung cấp cơ chế cho việc xử lý sự đình trệ hoàn toàn (deadlock handling)
Hệ điều hành
Nguyễn Thị Lan Hương
•Hệ thống quản lý bộ nhớ (Memory management) Bộ nhớ của CPU bao gồm bộ nhớ trong (RAM), thanh ghi (register), CPU cache, bộ nhớ ngoài v.v...bộ nhớ là một mảng lớn những words hoặc bytes, mỗi word hoặc byte có một địa chỉ riêng của nó. Hệ điều hành sẽ quản lý việc sử dụng của từng lọai bộ nhớ này, quyết định khi nào nên dùng loại bộ nhớ nào, khi nào bộ nhớ nên được giải thoát và di chuyển dữ liệu qua lại giữa các loại bộ nhớ cũng như trong cùng một loại bộ nhớ như thế nào. Bộ nhớ trong là trung tâm của mọi hoạt động của một hệ thống hiện đại, CPU luôn luôn viết và đọc dữ liệu vào bộ nhớ trong, vì vậy bất cứ chương trình nào khi được thực thi trước tiên sẽ được mang vào bộ nhớ trong. Khi chương trình hoàn tất việc thực thi, phần bộ nhớ được gán cho nó sẽ được hệ điều hành giải thoát và sẽ được gán cho những chương trình tiếp theo. Để tăng khả năng tận dụng của CPU, hệ điều hành luôn cố gắng đưa nhiều chương trình vào bộ nhớ trong cùng lúc. Ngoài ra hệ điều hành còn cung cấp khả năng quản lý bộ nhớ ảo, cho phép một chương trình có kích thước lớn hơn bộ nhớ thực có thể chạy được trên một máy có bộ nhớ thực nhỏ (ví dụ một chương trình 5MB có thể chạy được trên máy có bộ nhớ còn thừa 2MB). Hệ điều hành đảm nhận một số chức năng sau đối với hệ thống quản lý bộ nhớ (Memory management): - Theo dõi những phần nào của bộ nhớ đang được sử dụng bởi những chương trình nào, bởi người dùng nào - Quyết định process (tiến trình) nào sẽ được đưa vào bộ nhớ khi bộ nhớ trong trở nên trống - Phân chia, cung cấp và lấy lại khoảng không bộ nhớ khi cần thiết
•Hệ thống quản lý nhập xuất (i/o system management) Một trong những nhiệm vụ của hệ điều hành là quản lý sự hoạt động của hệ thống nhập xuất bằng cách: - Cung cấp lệnh cho thiết bị - Bắt những ngắt (interrupt) từ thiết bị - Quản lý và khắc phục lỗi (error handling) - Hệ thống quản lý bộ nhớ cho thiết bị bao gồm buffering, caching, spooling - Driver cho từng thiết bị, để hệ điều hành có thể thận biết và làm việc với thiết bị
Hệ điều hành
Nguyễn Thị Lan Hương
•Hệ thống quản lý tập tin (file system management) Máy tính lưu trữ thông tin trên vài loại phương tiện lưu trữ vật lý như băng từ(magnetic tape), đĩa từ (magnetic disk), đĩa quang (optical disk) v.v... mỗi loại phương tiện lưu trữ này được điều khiển bởi một lọai thiết bị như ổ cứng, ổ CD ... bao gồm một số đặc tính nhất định như tốc độ, khả năng lưu trữ, tốc độ truyền tải dữ liệu, cách thức truy cập. Để tiện cho việc sử dụng máy tính, hệ điều hành đã giới thiệu một chuẩn thống nhất để biểu thị những thông tin được lưu trữ. Hệ điều hành đã trừu tượng hóa những đặc tính vật lý của những thiết bị lưu trữ để định nghĩa ra đơn vị lưu trữ logic dưới dạng "tập tin" (file) và "đường dẫn" (directory). Những hệ điều hành khác nhau dùng những quy định về việc quản lý tập tin khác nhau. Ví dụ Microsoft Windows dùng "\" để ngăn cách các đường dẫn, tên tập tin và tên đường dẫn không có tính nhạy cảm về chữ hoa hoặc chữ thường, trong khi hệ điều hành Linux dùng "/" để phân biệt các đường dẫn (đường dẫn trong Linux cũng được đối xử như một tập tin), tên tập tin trong linux có sự phân chia chữ hoa, chữ thường. Hệ điều hành cũng tạo ra những chuẩn quản lý tập tin riêng và được lưu trữ trong một bảng gọi là FAT (File Allocation Table), ví dụ hệ điều hành Microsoft Windows dùng FAT12, FAT16, FAT32, NTFS. Microsoft Windows Vista chỉ có thể cài đặt trên NTFS. Nhiều hệ thống Linux lại dùng ext2, ext3, ReiserFS, Reiser4, GFS, GFS2, OCFS, OCFS2, và NILFS, Linux cũng hỗ trợ hoàn toàn XFS , JFS, FAT12/16/32 và NTFS. Hệ điều hành đảm nhiệm những hoạt động sau đối với hệ thống quản lý tập tin: - Tạo và xóa tập tin - Tạo và xóa đường dẫn - Hỗ trợ những thao tác cơ bản trên tập tin và đường dẫn - Ánh xạ (mapping) tập tin lên bộ nhớ phụ - Lưu trữ tập tin vào thiết bị lưu trữ an toàn
Hệ điều hành
Nguyễn Thị Lan Hương
•Hệ thống bảo vệ (Protection System) Vào những ngày đầu, khi chỉ có hệ điều hành một người dùng, người lập trình có khả năng điều khiển toàn bộ hệ điều hành mà không cần có bất kì sự bảo vệ nào. Sau này nhiều hệ điều hành đã bắt đầu chia sẻ tài nguyên hệ thống với các chương trình đang chạy cùng lúc, nhiều chương trình được đưa vào bộ nhớ một cách đồng thời, việc chia sẻ này tăng hiệu suất hoạt động của máy tính nhưng đồng thời lại gây ra nhiều vấn đề ví dụ như nhiều chương trình đang được thực thi đồng thời có khả năng ảnh hưởng lẫn nhau do chia sẻ chung một không gian bộ nhớ; hai hoặc nhiều chương trình đòi hỏi CPU cùng một thời điểm, cùng sử dụng thiết bị xuất nhập, truy cập vào một tập tin vào một thời điểm.... Hậu quả là hệ thống hoạt động không chính xác và nhiều khi dẫn đến hệ thống bị treo, không hoạt động được. Đây là lý do hệ thống bảo vệ được giới thiệu trong hệ điều hành, hệ điều hành luôn có những thuật toán, phương pháp quản lý và tránh cũng như xử lý những xung đột trong hệ thống.
•Hệ thống dịch lệnh (Command Interpreter System) Hệ thống dịch lệnh là một trong những thành phần quan trọng nhất của một hệ điều hành bởi vì nó đóng vai trò trung gian giữa người dùng và hệ điều hành. Một vài hệ thống bao tích hợp hệ thống dịch lệnh trong nhân (kernel) của nó, trong khi một số hệ thống như DOS và UNIX xem hệ thống dịch lệnh như là một chương trình đặc biệt được thực thi khi người dùng truy cập vào lần đầu tiên, những chương trình như thế này thường được gọi là hệ thống dịch lệnh theo dòng (command-line-interpreter) hoặc vỏ (shell). Chức năng chính của nó là lấy dòng lệnh tiếp theo và thực thi dòng lệnh này. Một vài hệ thống dịch lệnh bằng dao diện đồ họa như trong Microsoft Windows, Macintosh, trong khi một số hệ điều hành yêu cầu người dùng nhập lệnh từ bàn phím theo từng dòng lệnh (commandline) như DOS hoặc UNIX.
Hệ điều hành
Nguyễn Thị Lan Hương
•Quản lý mạng (Networking) Hầu hết mọi hệ điều hành đều có khả năng sử dụng nghi thức mạng TCP/IP. Điều này nghĩa là một hệ thống có thể hiện hữu trên một mạng của một hệ thống khác và có khả năng chia sẻ tài nguyên như tập tin, máy in, máy quét v.v... thông qua kết nối dây hoặc kết nối không dây. Nhiều hệ điều hành cũng có thể hỗ trợ nhiều nghi thức mạng như SNA (trên hệ thống IBM). Ngoài ra còn có những nghi thức riêng biệt cho những nhiệm vụ riêng biệt như NFS dành cho truy cập tập tin.
Hệ điều hành
Nguyễn Thị Lan Hương
Dịch vụ cung cấp bởi hệ điều hành
1. Khởi động máy tính (Starting the computer) Phần mềm khởi động được lưu cố định trong ROM (Read Only Memory), Sau khi phần mềm này được thực thi, sự điều khiển sẽ được chuyển sang cho hệ điều hành, hệ điều hành cung cấp dao diện người dùng chỉ định rằng hệ điều hành đã sẵn sàng cho việc chấp nhận lệnh từ người dùng. 2. Dao diện người dùng (User interface) Một chức năng phổ biến nhất của hệ điều hành là cung cấp một môi trường để người dùng làm việc được với máy tính. Nó đóng vai trò trung gian giữa người dùng và máy tính. Hệ điều hành cung cấp một dao diện người dùng, có thể là dao diện lệnh (như trong MS-DOS) hoặc dao diện đồ họa (như trong MS-Windows), hoặc có thể cả hai (như trong Linux). 3. Chạy những chương trình ứng dụng (Running application programs) Khi người dùng muốn chạy những chương trình ứng dụng, hệ điều hành sẽ xác định sự ưu tiên, quyết định những tài nguyên nào có thể dùng được để phân phối cho chương trình những tài nguyên thích hợp trong thời gian thích hợp. 4. Điều khiển nhập xuất (Controlling input and output) Hệ điều hành đóng vai trò như là một người quản lý và có sự điều hành tuyệt đối đối với tất cả tài nguyên trong máy tính. Hệ điều hành lấy những thông tin nhập vào, xử lý chúng và đưa ra những hoạt động tương ứng, hệ điều hành phải điều khiển những thiết bị nhập xuất, phải điều khiển dòng chảy của dữ liệu trong CPU và dữ liệu nhập vào từ bàn phím, chuột v.v... và xuất ra thiết bị ra như màn hình, máy in v.v... 5. Quản lý bộ nhớ (Memory management) Hệ điều hành phải quản lý bộ nhớ chính cũng như cách sử dụng của bộ nhớ phụ như ổ mềm, ổ cứng, đĩa quang v.v...
Hệ điều hành
Nguyễn Thị Lan Hương
6. Quản lý dữ liệu (Data management) Trong tiến trình quản lý tài nguyên, hệ điều hành đồng thời đảm nhiệm việc quản lý việc lưu trữ và thu hồi dữ liệu. Công việc này được hoàn thành bởi việc lưu trữ thông tin về tập tin như vị trí, kích thước v.v...Có những tập tin chứa những thông tin quan trọng và cần được bảo vệ, vì vậy bảo vệ tập tin, ẩn tập tin v.v... cũng được hệ điều hành cung cấp. 7. Cung cấp sự bảo mật cho người dùng và dữ liệu (Providing Security to user applications and data) Hệ điều hành phải đảm bảo dữ liệu và ứng dụng được an toàn. Điều này thông qua sự đăng nhập của người dùng cùng với mật mã, ấn định quyền truy nhập tập tin, thuộc tính ẩn, chỉ đọc... cung cấp những thông báo cảnh cáo và thông báo bảo mật tương ứng. 8. Tính toán tài nguyên sử dụng (Accounting Resource Usage) Hệ điều hành phân chia tài nguyên cho những chương trình theo yêu cầu, vì vậy cần có sự duy trì những ghi chép của những tài nguyên đã được phân chia với mục đích sử dụng sau này. HĐH ghi lại lịch trình sử dụng bộ nhớ vì vậy dung lượng bộ nhớ thừa và bộ nhớ đã được sử dụng có thể được biết dễ dàng. 9. Cung cấp tiện ích và dịch vụ (Providing Utilities and Services) Hệ điều hành cung cấp những dịch vụ để người dùng có thể điều khiển hệ thống, những dịch vụ này bao gồm dịch vụ về tập tin cho phép người dùng quản lý, sao chép, di chuyển, xóa tập tin. Dịch vụ cho phép kiểm tra lỗi bộ nhớ phụ v.v... 10. Truyền thông mạng (Network communication) Nếu máy tính được nối vào một mạng, hệ điều hành phải quản lý những kết nối giữa những người dùng trong mạng đó.
Hệ điều hành
Nguyễn Thị Lan Hương
Phân loại hệ điều hành Chúng ta nên hiểu, sau đây là những loại hệ điều hành khác nhau nhưng không nhất thiết một Hệ điều hành chỉ thừa hưởng duy nhất một tính chất của một loại. Một hệ điều hành hiện đại có thể là một sự kết hợp của nhiều loại, ví dụ Linux là một hệ điều hành hỗ trợ "đa chương trình", "Nhiều người sử dụng", "sử dụng nhiều CPU" v.v... Hệ điều hành đơn nhiệm, đơn chương trình (Batch OS) Phục vụ một chương trình từ lúc bắt đầu cho đến lúc kết thúc. Trong bộ nhớ trong tại một thời điểm chỉ có một chương trình người dùng. Chương trình đó chiếm giữ mọi tài nguyên hệ thống. Để tăng hiệu suất làm việc hệ điều hành sử dụng cách thức Spooling, Tất cả việc vào ra được chuẩn bị trên đĩa cứng, do đó tốc độ của toàn bộ hệ thống tăng lên đáng kể. MS-DOS là một ví dụ của loại hệ điều hành này. Hệ điều hành đa chương trình (Multiprogramming OS) Trong máy tính tại mỗi thời điểm có nhiều chương trình người dùng ở bộ nhớ trong. Các chương trình này đều được phân phối bộ nhớ và CPU để thực hiện, tài nguyên được chia sẻ cho tất cả các chương trình này hay nói cách khác, các chương trình này bình đẳng khi đòi hỏi các tài nguyên. Như vậy, trong chế độ đơn chương trình thì chương trình kết thúc nhanh hơn còn trong chế độ đa chương trình hoàn thiện được nhiều bài toán hơn và hiệu quả sử dụng máy tính cao hơn. Linux là một ví dụ của lọai hệ điều hành này. Hệ điều hành hoạt động theo chế độ phân chia thời gian TSS,Đa nhiệm(Time Shared System, Multitasking) Nhiều chương trình được đưa vào bộ nhớ trong và được chia sẻ CPU. Hệ điều hành phân phối CPU lần lượt cho từng chương trình trong một lượng tử thời gian nhất định. Sau khoảng thời gian lượng tử đó, CPU sẽ được phân phối cho chương trình tiếp theo, cứ như vậy cho đến khi tất cả các chương trình kết thúc. Tuy nhiên sự chuyển tiếp giữa các chương trình diễn ra vô cùng nhanh làm cho người dùng có cảm giác nhiều chương trình đang được chạy cùng một lúc. CPU được phân phối cho các chương trình theo thuật toán này gọi là thuật toán Round Robin. Tuy nhiên ưu tiên (priority) có thể được gán cho một số
Hệ điều hành
Nguyễn Thị Lan Hương
chương trình, điều này quyết định số lượng tử thời gian phân phối cho chương trình nhiều hoặc ít tùy theo tầm quan trọng của nó. Windows 95,98 trở về sau là những ví dụ của lọai hệ điều hành này.
Hệ điều hành thời gian thực (Real Time OS) Hệ điều hành thời gian thực được dùng để điều khiển máy, các thiết bị khoa học và hệ thống công nghiệp. Một RTOS điển hình có rất ít khả năng giao diện cho người sử dụng và không có những ứng dụng thông thường vì hệ thống chỉ là một cái hộp đóng kín . Một nhiệm vụ quan trọng của RTOS là quản lý tài nguyên của máy tính để một quá trình hoạt động có thể diễn ra trong khoảng thời gian chính xác mỗi khi nó xuất hiện. Trong máy phức tạp, có phần chuyển động nhanh thì hệ thống tài nguyên phải luôn luôn sẵn sàng , nó sẽ là thảm hoạ nếu không chuyển động vì một nguyên nhân nào đó hệ thống bị bận. Nhiều người sử dụng (Multi user) - Một hệ điều hành nhiều người sử dụng cho phép nhiều người sử dụng khác nhau dùng tài nguyên của máy tính cùng một lúc. Hệ điều hành phải đảm bảo rằng yêu cầu của những người sử dụng khác nhau được cân bằng, và mỗi chương trình mà họ sử dụng có tài nguyên riêng và đầy đủ để vấn đề của mỗi người sử dụng không ảnh hưởng đến cộng đồng người sử dụng. Hệ điều hành Unix, VMS và Mainframe như MVS là những ví dụ cho hệ điều hành nhiều người sử dụng. Việc phân biệt giữa hệ điều hành nhiều người sử dụng và hệ điều hành một người sử dụng hỗ trợ mạng là rất quan trọng. Window 2000 và Novell Netware có thể hỗ trợ hàng trăm hoặc hàng nghìn người sử dụng mạng nhưng hệ điều hành của chúng không thực sự là hệ điều hành nhiều người sử dụng. Nhà quản trị hệ thống là người sử dụng duy nhất Window2000 hay Netware. Hệ điều hành này phải hỗ trợ các ứng dụng trên mạng và cho phép người sử dụng từ xa đăng nhập mạng và chúng được người quản trị mạng cho phép sử dụng.
Hệ điều hành sử dụng nhiều CPU (Multiprocessing) Trong loại hệ điều hành này, một chương trình được xử lý bởi nhiều CPU khác nhau, máy tính cá nhân thường sử dụng lọai hệ điều hành này Ví dụ, trong các máy tính IBM, tất cả những phép toán học được xử lý bởi bộ xử lý toán học (math coprocessor), tương tự như vậy, hình ảnh và âm thanh cũng được xử lý bởi những bộ vi xử lý tương ứng (GPU - graphic processing unit, v.v...)
Hệ điều hành
Nguyễn Thị Lan Hương
Hệ điều hành đa phân luồng (Multithreading) Loại hệ điều hành này cho phép một chương trình đang thực thi được chia nhỏ ra nhiều đơn vị nhỏ có khả năng thực thi (gọi là thread) riêng biệt khác nhau và những phần nhỏ này được thực thi đồng thời, kết quả làm cho thời gian xử lý công việc hoàn thành nhanh hơn. Windows 95 trở về sau là một ví dụ của loại hệ điều hành này. Với những kĩ thuật hiện đại, những dòng vi xử lý hiện đại liên tục được xuất ra thị trường, từ đó có xuất hiện thêm một số dòng hệ điều hành mới nhằm tận dụng triệt để những kĩ thuật mới này, vì vậy ở một góc độ nào đó ta có thể phân chia hệ điều hành ra vài dòng 16bit, 32bit, 64bit (Windows Server 2003 64 bit, Windows XP 64 bit, Windows Vista 64 bit, một số hệ điều hành LINUX cũng hộ trợ điện toán 64-bit …) Ngoài ra ta còn có thể phân loại hệ điều hành dựa theo một số tiêu chí sau: Dưới góc độ loại máy tính •Hệ điều hành dành cho máy MainFrame
•Hệ điều hành dành cho máy Server •Hệ điều hành dành cho máy nhiều CPU •Hệ điều hành dành cho máy tính cá nhân (PC) •Hệ điều hành dành cho máy PDA (Embedded OS - hệ điều hành nhúng)
•Hệ điều hành dành cho máy chuyên biệt •Hệ điều hành dành cho thẻ chíp (SmartCard) Dưới góc độ số chương trình được sử dụng cùng lúc •Hệ điều hành đơn nhiệm •Hệ điều hành đa nhiệm Dưới góc độ người dùng (truy xuất tài nguyên cùng lúc) •Một người dùng •Nhiều người dùng •Mạng ngang hàng
Hệ điều hành •Mạng có máy chủ: LAN, WAN, ...
Dưới góc độ hình thức xử lý •Hệ thống xử lý theo lô •Hệ thống chia xẻ •Hệ thống song song •Hệ thống phân tán •Hệ thống xử lý thời gian thực
Nguyễn Thị Lan Hương
Hệ điều hành
Nguyễn Thị Lan Hương
Thí dụ hệ điều hành
Sau đây là một số hệ điều hành phổ biển trên thị trường: •AmigaOS •BeOS •Debian •FreeBSD •Linux •Mac OS và Mac OS X •MS-DOS và Windows •OS/2 •Palm OS •Solaris •Ubuntu •UNIX •Windows Mobile
Hệ điều hành
Nguyễn Thị Lan Hương
Vài nét sơ lược về một số hệ điều hành nổi tiếng và thường gặp Các hệ điều hành được sử dụng ngày nay trên các máy tính đa chức năng (như máy tính cá nhân) chủ yếu gồm hai chủng loại: hệ điều hành họ Unix và hệ điều hành họ Microsoft Windows. Các máy tính mẹ (Mainframe computer) và các hệ thống nhúng dùng nhiều loại hệ điều hành khác nhau, không phải là Unix hay Windows, nhưng cũng tương tự như Unix hay Windows.
MS-DOS MS-DOS (Microsoft Disk Operating System) là hệ điều hành của hãng phần mềm Microsoft. Đây là một hệ điều hành có giao diện dòng lệnh (commandline interface) được thiết kế cho các máy tính họ PC (Personal Computer). MS-DOS đã từng rất phổ biến trong suốt thập niên 1980, và đầu thập niên 1990, cho đến khi Windows 95 ra đời. Phiên bản DOS đầu tiên ra đời vào tháng 8 năm 1981, với tên chính thức là PC DOS 1.0. Tên gọi MS-DOS chỉ đựoc biết đến kể từ tháng 5 năm 1982 (MS-DOS 1.25). Sau đó, Microsoft lần lượt cho ra đời các phiên bản tiếp theo của MS-DOS song song cùng với PC-DOS. MS-DOS 5.0 ra đời vào tháng 6 năm 1991 bao gồm nhiều tính năng mới như quản lý bộ nhớ (MEMMAKER.EXE), trình soạn thảo văn bản (MS-DOS Editor), ngôn ngữ lập trình QBASIC đã trở nên phổ biển một thời trước khi MS-DOS 6.22 ra đời vào tháng 6 năm 1994. MS-DOS 6.22 cũng là phiên bản DOS cuối cùng được chạy như một hệ điều hành độc lập (standalone version). Sau khi Windows 95 ra đời vào năm 1995, các phiên bản MS-DOS tiếp theo đều được phát hành đi kèm với Windows, chẳng hạn như MS-DOS 7.0 (8/1995) là nền để cho Windows 95 khởi động, và MS-DOS 8.0 đi kèm với Windows ME. Đây cũng là phiên bản cuối cùng của hệ điều hành này.
Hệ điều hành
Nguyễn Thị Lan Hương
MS-DOS là hệ điều hành đơn nhiệm. Tại mỗi thời điểm chỉ thực hiện một thao tác duy nhất. Nói một cách khác, MS-DOS chỉ cho phép chạy một ứng dụng duy nhất tại mỗi thời điểm. Điều này khác hẳn với Windows, vốn là một hệ điều hành đa nhiệm (multi-tasking) - người dùng có thể thi hành nhiều ứng dụng cùng một lúc. Mặc dù vậy, về sau người ta đã thiết kế một số ứng dụng chạy thường trú (TSR, Terminate and Stay Resident) cho MS-DOS. Các ứng dụng này có thể chạy trên nền của các ứng dụng khác, khiến người sử dụng có thể thực hiện nhiều thao tác cùng lúc. Ở Việt Nam, phần mềm chạy thường trú trên MS-DOS rất phổ biến là một chương trình hỗ trợ gõ tiếng Việt, VietRes.
Một số môi trường làm việc đa nhiệm (multi-tasking environment) như Deskmate hay Desqview đã được thiết kế để chạy trên DOS. Những phiên bản Windows đầu tiên cũng đều phải khởi động từ dấu nhắc DOS. Tuy nhiên, ngày nay, MS-DOS đã trở nên ít phổ biến hơn. Nó chỉ còn tồn tại trong các phiên bản Windows sau này (2000, XP) dưới dạng một ứng dụng cho phép người dùng kích hoạt chế độ dòng lệnh (command prompt), và thường chỉ được dùng để thực hiện những tác vụ liên quan mật thiết đến hệ thống mà giao diện đồ họa của Windows không làm được.
Giao diện màn hình MS-DOS
Hệ điều hành
Nguyễn Thị Lan Hương
Unix Unix hay UNIX là một hệ điều hành máy tính viết vào những năm 1960 và 1970 do một số nhân viên của công ty AT&T Bell Labs bao gồm Ken Thompson, Dennis Ritchie và Douglas McIlroy. Ngày nay hệ điều hành Unix được phân ra thành nhiều nhánh khác nhau, nhánh của AT&T, nhánh của một số nhà phân phối thương mại và nhánh của những tổ chức phi lợi nhuận. Unix có thể chạy trên nhiều loại máy tính khác nhau, từ những máy tính cá nhân cho đến các máy chủ dịch vụ. Nó là một hệ điều hành đa nhiệm (có thể cùng lúc thực hiện nhiều nhiệm vụ) hỗ trợ một cách lý tưởng đối với các ứng dụng nhiều người dùng. Unix được viết bằng ngôn ngữ lập trình C, một ngôn ngữ rất mạnh và mềm dẻo. Unix hỗ trợ các ứng dụng mạng và hỗ trợ nhiều môi trường lập trình khác nhau. Với hàng trăm lệnh và một số lượng rất lớn các tùy chọn, Unix thực sự là một khó khăn đối với người mới bắt đầu. Với sự phát triển của các shell Unix hệ điều hành này đã trở nên phổ dụng hơn trong lĩnh vực điện toán. Vì Bell Laboratories bị cấm không cho phép tiếp thị Unix vì lệnh chống độc quyền đối với AT & T nên Unix đã được cung cấp miễn phí cho các trường đại học trên toàn Bắc Mỹ từ năm 1976. Năm 1979 Đại học California tại Berkeley đã xây dựng một phiên bản của Unix dùng cho các máy tính VAX. Sau khi đã được ưa thích trong các lĩnh vực công nghệ, AT & T đã dành được quyền tiếp thị đối với Unix và đã cho ra đời System V vào năm 1983. Cho đên nay Unix vẫn được sử dụng rất rộng rãi trong thị trường dành cho máy chủ. Đã có nhiều phiên bản phát triển khác nhau, trong đó có Linux. Unix là một trong những hệ điều hành 64 bit đầu tiên. Hiện nay Unix được sử dụng bởi nhiều công ty tập đoàn lớn trên thế giới vì mức độ bảo mật của nó tương đối cao.
Hệ điều hành
Nguyễn Thị Lan Hương
LINUX
Linux là tên gọi của một hệ điều hành máy tính và cũng là tên hạt nhân của hệ điều hành. Nó có lẽ là một ví dụ nổi tiếng nhất của phần mềm tự do và của việc phát triển mã nguồn mở. Phiên bản Linux đầu tiên do Linus Torvalds viết vào năm 1991, lúc ông còn là một sinh viên của Đại học Helsinki tại Phần Lan. Ông làm việc một cách hăng say trong vòng 3 năm liên tục và cho ra đời phiên bản Linux 1.0 vào năm 1994. Bộ phận chủ yếu này được phát triển và tung ra trên thị trường dưới bản quyền GNU General Public License. Do đó mà bất cứ ai cũng có thể tải và xem mã nguồn của Linux. Một cách chính xác, thuật ngữ "Linux" được sử dụng để chỉ Nhân Linux, nhưng tên này được sử dụng một cách rộng rãi để miêu tả tổng thể một hệ điều hành giống Unix (còn được biết đến dưới tên GNU/Linux) được tạo ra bởi việc đóng gói nhân Linux cùng với các thư viện và công cụ GNU, cũng như là các bản phân phối Linux. Thực tế thì đó là tập hợp một số lượng lớn các phần mềm như máy chủ web, các ngôn ngữ lập trình, các hệ quản trị cơ sở dữ liệu, các môi trường làm việc desktop như GNOME và KDE, và các ứng thích hợp cho công việc văn phòng như OpenOffice. Khởi đầu, Linux được phát triển cho dòng vi xử lý 386, hiện tại hệ điều hành này hỗ trợ một số lượng lớn các kiến trúc vi xử lý, và được sử dụng trong
Hệ điều hành
Nguyễn Thị Lan Hương
nhiều ứng dụng khác nhau từ máy tính cá nhân cho tới các siêu máy tính và các thiết bị nhúng như là các máy điện thoại di động. Ban đầu, Linux được phát triển và sử dụng bởi những người say mê. Tuy nhiên, hiện nay Linux đã có được sự hỗ trợ bởi các công ty lớn như IBM và Hewlett-Packard, đồng thời nó cũng bắt kịp được các phiên bản Unix độc quyền và thậm chí là một thách thức đối với sự thống trị của Microsoft Windows trong một số lĩnh vực. Sở dĩ Linux đạt được những thành công một cách nhanh chóng là nhờ vào các đặc tính nổi bật so với các hệ thống khác: chi phí phần cứng thấp, tốc độ cao (khi so sánh với các phiên bản Unix độc quyền) và khả năng bảo mật tốt, độ tin cậy cao (khi so sánh với Windows) cũng như là các đặc điểm về giá thành rẻ, không bị phụ thuộc vào nhà cung cấp. Một đặc tính nổi trội của nó là được phát triển bởi một mô hình phát triển phần mềm nguồn mở hiệu quả. Tuy nhiên, hiện tại số lượng phần cứng được hỗ trợ bởi Linux vẫn còn rất khiêm tốn so với Windows vì các trình điều khiển thiết bị tương thích với Windows nhiều hơn là Linux. Nhưng trong tương lai số lượng phần cứng được hỗ trợ cho Linux sẽ tăng lên. Các bản phân phối Linux Linux hiện nay có nhiều bản phân phối khác nhau, một phần là bởi vì tính chất nguồn mở của nó. Sau đây là một số bản phân phối chủ yếu: •Debian GNU/Linux •Red Hat •Fedora Core •SuSE •Ubuntu •Mandrake/Mandriva
•Gentoo •Slackware •Hacao
Hệ điều hành
Nguyễn Thị Lan Hương
(Giao diện màn hình KDE của LINUX)
Hệ điều hành
Nguyễn Thị Lan Hương
Hệ điều hành họ Windows
Microsoft Windows là tên của các dòng phần mềm hệ điều hành độc quyền của hãng MicroSoft. Lần đầu tiên Microsoft giới thiệu một môi trường điều hành mang tên Windows (cửa sổ) là vào tháng 11 năm 1985 với những tín năng thêm vào MS-DOS giao diện hình tượng (Graphical User Interfaces, GUI) - đang được sự quan tâm cao vào thời điểm này đồng thời để cạnh tranh với hãng Apple Computers. •Windows khởi đầu được phát triển cho những máy tính tương thích với
IBM (dựa vào kiến trúc x86 của Intel), và ngày nay hầu hết mọi phiên bản của Windows đều được tạo ra cho kiến trúc này (tuy nhiên Windows NT đã được viết như là một hệ thống xuyên cấu trúc cho bộ xử lý Intel và MIPS, và sau này đã xuất hiện trên các cấu trúc PowerPC và DEC Alpha. Sự phổ biến của Windows đã khiến bộ xử lý của Intel trở nên phổ biến hơn và ngược lại. Thật vậy, thuật ngữ Wintel đã được sử dụng để miêu tả những máy tính cá nhân đang chạy một phiên bản của Windows. •Từ đó đến nay Microsofts Windows dần dần chiếm ưu thế trong thị trường
máy tính cá nhân trên tòan thế giới với số lượng được cài đặt khoảng 90% vào năm 2004. Windows là phần mềm nguồn đóng có bản quyền do công ty Microsoft giữ và kiểm soát việc phân phối. Vì lý do này, Microsoft đang có một vị trí độc quyền trong lĩnh vực máy tính cá nhân. Tất cả các phiên bản hệ điều hành gần đây của Windows đều dựa trên sự phát triển từ phiên bản đầu tiên.
Hệ điều hành
Nguyễn Thị Lan Hương
Miêu tả về hệ điều hành Windows Một hệ điều hành đa nhiệm (multi tasking) có thể xử lý nhiều chương trình cùng một lúc. Gồm các biểu tượng (icon). Mỗi biểu tượng đại diện cho một đối tượng (object) như thư mục hồ sơ, thư mục nghe nhạc ... Một trình tổng hợp của những trình ứng dụng; như trình thảo văn bản, trình đồ họa và các ứng dụng hữu ích như lịch, đồng hồ, máy tính, bản tính, phần mềm lướt mạng, soạn thảo văn bản, trò chơi. Window hỗ trợ chức năng Cài - Xài Liền (Plug & Play) Những phần cứng (hardware) mới cài vào máy có thể chạy liền do máy tự động tìm trình điều khiển (driver) của phần cứng và cài đặt cấu hình cùng cách thức hoạt động của phần cứng. Kéo - Nhả (Drag & Drop) Bất cứ đối tượng của cửa sổ điều có thể dùng chuột để chọn và di chuyển đến một nơi khác dễ dàng. Các hệ thống tập tin •FAT12, FAT16: Với HĐH MS-DOS, hệ thống tập tin FAT (File Allocation
Table 16 bit), (FAT16 – để phân biệt với FAT32) được công bố vào năm 1981 đưa ra một cách thức mới về việc tổ chức và quản lý tập tin trên đĩa cứng, đĩa mềm. •Tuy nhiên, khi dung lượng đĩa cứng ngày càng tăng nhanh, FAT16 đã bộc
lộ nhiều hạn chế. Với không gian địa chỉ 16 bit, FAT16 chỉ hỗ trợ đến 65.536 liên cung (cluster) trên một partition, gây ra sự lãng phí dung lượng đáng kể (đến 50% dung lượng đối với những ổ đĩa cứng trên 2 GB). •FAT32: được giới thiệu trong phiên bản Windows 95 Service Pack 2 (OSR
2), được xem là phiên bản mở rộng của FAT16. Do sử dụng không gian địa chỉ 32 bit nên FAT32 hỗ trợ nhiều cluster trên một partition hơn, do vậy không gian đĩa cứng được tận dụng nhiều hơn. Ngoài ra với khả năng hỗ trợ kích thước của phân vùng từ 2 GB lên 2 TB và chiều dài tối đa của tên tập tin được mở rộng đến 255 ký tự đã làm cho FAT16 nhanh chóng bị lãng quên. Tuy nhiên, nhược điểm của FAT32 là tính bảo mật và khả năng chịu lỗi (fault tolerance) không cao. •NTFS (New Technology File System): được giới thiệu cùng với phiên bản
Windows NT 3.1 (phiên bản này cũng hỗ trợ FAT32). Với không gian địa chỉ 64 bit, khả năng thay đổi kích thước của cluster độc lập với dung lượng đĩa cứng, NTFS hầu như đã loại trừ được những hạn chế về số cluster, kích thước tối đa của tập tin trên một phân vùng đĩa cứng.
Hệ điều hành
Nguyễn Thị Lan Hương
Phiên bản Các phiên bản của Windows là tên gọi chung cho các thế hệ của sản phẩm phần mềm Windows và có thể được chia thành các thể loại sau: •Môi trường làm việc 16 bit. Dùng trong những máy vi tính cá nhân
(personal computer). •Các phiên bản đầu tiên của Windows chỉ là giao diện đồ họa hay desktop, phần lớn vì chúng dùng hệ điều hành MS-DOS ở lớp dưới cho các dịch vụ hệ thống tập tin và các tiến trình hệ thống. •Sau đó, các phiên bản Windows 16 bit đã có dạng tập tin có thể
chạy được và tự cung cấp chương trình điều khiển thiết bị (device driver) (cho bo mạch đồ họa, máy in, chuột, bàn phím và âm thanh). •Khác với DOS, môi trường của Windows cho phép mọi người dùng
thi hành nhiều chương trình đồ họa cùng một lúc. Hơn nữa, chúng đã thực thi một phối hợp bộ nhớ ảo theo đoạn (segment) trong phần mềm cho phép GUI thi hành các chương trình lớn hơn bộ nhớ: các đoạn mã nguồn và nguồn lực được đem vào và bị loại bỏ khi không còn giá trị nữa hay khi số lượng còn lại trong bộ nhớ bị thấp và các đoạn dữ liệu được đưa vào bộ nhớ khi một chương trình nào đó trả quyền điều khiển cho bộ xử lý. Các hệ điều hành này gồm có Windows 1.0, (1985), Windows 2.0 (1987) và Windows/286 (gần giống Windows 2.0). •Môi trường làm việc 16/32 bit. Dùng trong các máy vi tính hệ Intel
Pentium 386 - 486 - 586. •Windows/386 ra mắt hạt nhân hoạt động trong chế độ bảo vệ và một trình theo dõi máy ảo. Trong một phiên làm việc của Windows, nó cung cấp các it provided a device virtualization cho bộ điều khiển đĩa, bo mạch đồ họa, bàn phím, chuột, bộ định thời và bộ điều khiển ngắt. Kết quả rõ nhất mà người sử dụng nhìn thấy là họ có thể làm việc tạm thời với nhiều môi trường MS-DOS trong các cửa sổ riêng (các ứng dụng đồ họa yêu cầu cửa sổ phải được chuyển về chế độ toàn màn hình). •Các ứng dụng của Windows vẫn thuộc loại "đa nhiệm cộng tác" trong môi trường chế độ thực. Windows 3.0 (1990) và Windows 3.1 (1992) đã hoàn thiện thiết kế này, đặc biệt là tính năng bộ nhớ ảo và trình điều khiển thiết bị ảo (VxDs) cho phép họ chia sẻ các thiết bị dùng chung (như đĩa cứng, đĩa mềm...) giữa các cửa sổ DOS.
Hệ điều hành
Nguyễn Thị Lan Hương
•Quan trọng nhất là các ứng dụng Windows có thể chạy trong chế
độ bảo vệ 16-bit (16-bit protected mode) (trong khi Windows đang chạy trong chế độ chuẩn hay chế độ 386 nâng cao), cho phép người sử dụng truy cập đến một vài megabyte bộ nhớ mà không phải tham gia vào quá trình quản lý bộ nhớ ảo. Các chương trình này vẫn chạy trong cùng một không gian địa chỉ, trong đó bộ nhớ đã được phân đoạn để chia thành các mức bảo vệ riêng, và vẫn hoạt động "đa nhiệm cộng tác". •Trong phiên bản Windows 3.0, Microsoft đã chuyển các tác vụ quan trọng từ C sang assembly, làm cho phiên bản này chạy nhanh hơn và ít tốn bộ nhớ hơn các phiên bản trước đó. •Hệ điều hành 16/32 bit. Bằng việc công bố khả năng truy cập file 32-bit
trong Windows for Workgroups 3.11, Windows cuối cùng đã chấm dứt phụ thuộc vào DOS trong việc quản lý hồ sơ (file). Ngoài ra, Windows 95 cũng đưa ra hệ thống "Tên file dài", do vậy hệ thống tên file 8.3 của DOS chỉ còn vai trò trong đoạn mã khởi động nạp hệ điều hành. •Đặc điểm mang tính cách mạng nhất trong phiên bản này là khả
năng chạy các chương trình giao diện đồ họa 32-bit đồng thời, trong khi các chương trình này lại chia thành các phân tuyến (thread) chạy song song với nhau. •Microsoft đã đưa ra 3 phiên bản của Windows 95 (phiên bản đầu tiên năm 1995, các phiên bản sửa lỗi được đưa ra năm 1996 và 1997 chỉ được bán cho nhà sản xuất máy tính, được bổ sung thêm một vài tính năng mới như hỗ trợ FAT32). •Hệ điều hành tiếp theo của Microsoft là Windows 98; có 2 phiên bản (bản đầu tiên năm 1998, và bản thứ hai là "Windows 98 Second Edition", năm 1999). Trong năm 2000, Microsoft đưa ra Windows Me, với mục tiêu cố gắng thu hẹp khoảng cách giữa Windows 98 SE và Windows NT, bao gồm một vài tính năng mới như System Restore, cho phép người sử dụng đưa máy tính của mình trở lại trạng thái trước đó. Dù vậy, đó vẫn không phải là một tính năng được chấp nhận rộng rãi vì đã có nhiều người sử dụng gặp phải vấn đề. ME được coi là sự thay thế tạm thời trong việc hợp nhất hai dòng sản phẩm này. Microsoft đã đợi một khoảng thời gian ngắn để Windows Millennium trở nên phổ biến trước khi công bố phiên bản Windows tiếp theo - Windows XP.
•Hệ điều hành 32 bit ban đầu được thiết kế và quảng bá là các hệ thống
Hệ điều hành
Nguyễn Thị Lan Hương
có độ tin cậy cao và đặc biệt là không thừa kế từ DOS. •Phiên bản đầu tiên được đưa ra là Windows NT 3.1 vào năm 1993, được đánh số "3.1" để chỉ thị ngang hàng với Windows 3.1 và hơn 1 cấp so với hệ điều hành OS/2 2.1, hệ điều hành của IBM do Microsoft đồng phát triển và là đối thủ chính của dòng Windows NT tại thời điểm đó. •Phiên bản tiếp theo là Windows NT 3.5 (1994), NT 3.51 (1995), và cuối cùng NT 4.0 (1996) đã có giao diện của Windows 95. •Sau đó Microsoft bắt đầu chuyển sang việc hợp nhất hai dòng hệ điều hành dành cho cá nhân và cho doanh nghiệp. Thử nghiệm đầu tiên, Windows 2000, đã thất bại, và được phân phối là một phiên bản dành cho doanh nghiệp. Phiên bản Windows 2000 cho cá nhân, tên mã là "Windows Neptune" bị hủy bỏ và Microsoft đã thay thế bằng Windows ME. Mặc dù vậy, "Neptune" vẫn được tích hợp vào dự án mới, "Whistler", để sau đó trở thành Windows XP. •Sau đó, hệ điều hành mới, Windows Server 2003, đã mở rộng dòng sản phẩm cho doanh nghiệp này. Cuối cùng, hệ điều hành sắp được ra mắt Windows Vista sẽ hoàn thiện các tính năng còn thiếu của các sản phẩm trên. Với Windows CE, Microsoft cũng đã ngắm tới thị trường di động và các thiết bị cầm tay, cũng là một hệ điều hành 32bit. •Hệ điều hành 64 bit, một loại hệ điều hành mới nhất, được thiết kế cho
kiến trúc AMD64 của AMD, IA-64 của Intel, và EM64T (Intel® Extended Memory 64 Technology). •Dòng sản phẩm Windows 64-bit bao gồm "Windows XP Itanium", "Windows Professional x64 Edition" và "Windows Server 2003". "Windows XP Professional" và "Windows Server 2003 x64 Edition" được ra mắt vào 25 tháng 4 năm 2005. Windows XP Itanium đã được đưa ra trước đó, năm 2002. •Một số dấu hiệu cho thấy Windows Vista, được coi là sự kế vị của Windows XP, sẽ có cả hai phiên bản 32-bit và 64-bit. •Windows CE cho các hệ thống trong thiết bị, như trong các sản phẩm dân
dụng (lưu ý: CE là một hệ điều hành khác với DOS và Windows NT/2000/XP, và Microsoft đã công bố mã nguồn) •Windows Mobile cho điện thoại thông minh và PDA (một phiên bản của
Windows CE) •Portable Media Center cho các máy Portable Media Player •Windows XP cho máy tính cá nhân và máy tính xách tay •Windows XP Starter Edition, cho những người sử dụng máy tính mới ở các nước đang phát triển
Hệ điều hành
Nguyễn Thị Lan Hương
•Windows XP Home Edition, cho máy tính tại nhà •Windows XP Home Edition N, như trên, nhưng không có Windows Media Player theo quyết định của EU •Windows XP Professional Edition, cho doanh nghiệp và những người dùng giỏi •Windows XP Professional Edition N, như trên, nhưng không có Windows Media Player theo quyết định của EU •Windows XP Professional x64 Edition, cho các máy tính có bộ xử lý 64-bit (dựa trên Windows Server 2003) •Windows XP Tablet PC Edition, cho máy tính xách tay, có bút viết và màn hình cảm ứng •Windows XP Media Center Edition cho máy để bàn và máy xách tay, tập trung vào chức năng giải trí đa phương tiện •Windows Server 2003 cho máy chủ •Small Business Server cho máy chủ đầu tiên (2 bộ xử lý) •Web Edition cho chủ web cơ bản (2 bộ xử lý) •Standard Edition cho các chương trình phục vụ nhỏ không cần tụ nhóm (4 bộ xử lý) •Enterprise Edition cho các chương trình phục vụ lớn hơn, cho phép
tụ nhóm (clustering) (8 bộ xử lý) •Datacenter Edition cho máy chủ mainframe (128 bộ xử lý) •Storage Server cho các thiết bị lưu trữ được kết nối mạng •Windows XP Embedded cho các hệ thống thiết bị nhúng •Windows Vista (tên mã là Longhorn) mới phát hành. Các phiên bản cũ •Dựa vào DOS •1985, Tháng 11 - Windows 1.0 •1987, 9 tháng 12 - Windows 2.0 •1990, 22 tháng 5 - Windows 3.0 •1992, Tháng 8 - Windows 3.1 •1992, Tháng 10 - Windows for Workgroups 3.1 •1993, Tháng 11 - Windows for Workgroups 3.11 •1995, 24 tháng 8 - Windows 95 (Số hiệu phiên bản: 4.00.950)
Hệ điều hành
Nguyễn Thị Lan Hương
•1998, 25 tháng 6 - Windows 98 (Số hiệu phiên bản: 4.1.1998) •1999, 5 tháng 5 - Windows 98 Second Edition (Số hiệu phiên bản: 4.1.2222) •2000, 19 tháng 6 - Windows Me (Số hiệu phiên bản; 4.9.3000) •Dựa vào hạt nhân NT •1993, Tháng 8 - Windows NT 3.1 •1994, Tháng 9 - Windows NT 3.5 •1995, Tháng 6 - Windows NT 3.51 (Số hiệu phiên bản: NT 3.5.1057) •1996, 29 tháng 7 - Windows NT 4.0 - phiên bản cuối cùng chạy
được trên cấu trúc RISC như DEC Alpha, MIPS và PowerPC. Các phiên bản sau tập trung vào các cấu trúc dựa vào x86 - hầu hết để làm máy chủ - bộ xử lý IA-64. (Phiên bản số: NT 4.0.1381) •2000 17 tháng 2 - Windows 2000 (Số hiệu phiên bản: NT 5.0.2195) Các phiên bản đã hủy •1996, 3 tháng 5 - Windows Nashville (windows 96) (Sau này trở thành 95B.) •1997-1998 - Cairo (một "hệ điều hành hướng đối tượng thực sự"), định ra mắt sau Windows NT; tương đối giống với DesktopX nhưng ở cấp độ thấp hơn và sau này trở thành Windows NT 4. •1999, tháng 12- Windows Neptune được ra mắt cho các người thử nghiệm tuy nhiên cuối cùng vẫn không được công bố, phiên bản này đáng lẽ ra là phiên bản Windows 2000 cho người dùng tại nhà. Các phiên bản trong tương lai •2007 - Windows Server 2007 (Phiên bản Longhorn dành cho máy chủ),
được đặt tên theo năm phát hành •2011 - Windows với tên mã "Blackcomb". •Windows Eiger đang trong giai đoạn đầu của quá trình phát triển, được thiết kế dành cho các dòng máy tính cũ.
Hệ điều hành
Nguyễn Thị Lan Hương
Giao diện màn hình MS-Windows Vista Ultimate
Hệ điều hành
Nguyễn Thị Lan Hương
MAC and MAC OS
Mac OS (viết tắt của Macintosh Operating System) là hệ điều hành có giao diện cửa sổ và được phát triển bởi công ty Apple Computer cho các máy tính Apple Macintosh. Phiên bản đầu tiên ra đời năm 1984. Những version đầu tiên của Mac OS chỉ tương thích với những dòng máy Motorola 68000 của Macintosh, những version sau này dần tương thích với kiểu kiến trúc PowerPC (PPC). Gần đây nhất Mac OS X đã tương thích với kiến trúc máy intel x86 Mac OS có thể được chia ra làm hai họ hệ điều hành: Mac OS cổ điển (Classic Mac OS) (1984-2001 đến Mac OS 9) và Mac OS X Phiên bản •Mac OS 6 •Mac OS 7 •Mac OS 8 •Mac OS 9 •Mac OS X Classic Mac OS Đặc điểm của Mac OS classic là loại bỏ hoàn toàn dao diện dòng lệnh (command line), đó là một HĐH đồ họa hoàn toàn. với đặc điểm rất dễ dùng. Đồng thời nó cũng còn hạn chế ở tính đa nhiệm của hệ điều hành, và rất hạn chế ở hệ thống quản lý bộ nhớ, không có hệ thống bảo vệ bộ nhớ, đồng thời rất dễ xung đột giữa các HĐH khác khi cung cấp các chức năng như mạng (networking), nó cũng chỉ hỗ trợ một số thiết bị nhất định. Tóm lại việc giải quyết những vấn đề xung đột, tìm lỗi trong Classic Mac OS là
Hệ điều hành
Nguyễn Thị Lan Hương
một công việc vô cùng tốn thời gian Mac OS dùng hai hệ thống file Macintosh File System (MFS) (flat file system), sau này được thay thế bằng Hierachical File System (HFS) (theo kiểu hệ thống cây), cả hai hệ thống file đều được hỗ trợ. Mac OS X Mac OS X (Phiên âm quốc tế: /mæk.oʊ.ɛs.tɛn/) là một dòng hệ điều hành đồ hoạ, độc quyền, được phát triển và phân phối bởi công ty Apple, bản mới nhất được cài đặt sẵn trên các máy tính Macintosh. Mac OS X là thế hệ kế tiếp của Mac OS, hệ điều hành ban đầu của Apple từ năm 1984. Không như Mac OS, Mac OS X là một hệ điều hành kiểu Unix được xây dựng trên công nghệ được phát triển tại NeXT trong nửa đầu những năm 1980 và cho đến khi Apple mua công ty này vào đầu năm 1997. Mac OS X mang hệ thống quản lý bộ nhớ theo kiểu Unix và hỗ trợ đầy đủ tính đa nhiệm. Nó dựa trên sự bổ sung của nhân Mach và BSD của UNIX, và hợp nhất thành NeXTSTEP, hệ thống lập trình hướng đối tượng được phát triển bởi NeXT. Hệ thống quản lý bộ nhớ mới của Mac OS X mang lại khả năng chạy nhiều chương trình cùng một lúc và chính thức loại bỏ khả năng một chương trình sẽ làm ảnh hưởng một chương trình khác. Đây cũng là một thế hệ điều hành thứ hai của Macintosh mà dao diện dòng lệnh đã được hỗ trợ khi người dùng kích hoạt "terminal emulator". Tuy nhiên, bởi vì những tính năng mới đòi hỏi những tài nguyên hệ thống cao hơn, vì vậy Mac OS X chỉ hỗ trợ nhũng thế hệ vi xử lý mới. Công nghệ trong Mac OS: •
ColorSync: ColorSync là công nghệ cho phép làm cho màu sắc giữa màn hình và máy in có cảm giác gần nhất.
•
Finder: Finder là dao diện để truy cập hệ thống tập tin và chạy chương trình.
•
MacRoman: MacRoman là dạng ký tự mã hóa dùng trong hệ thống Macintosh Classic. Mac OS X dùng chuẩn Unicode (UTF-8 và UTF-16) tuy nhiên MacRoman vẫn được hỗ trợ.
•
PlainTalk: PlainTalk là công nghệ tổng hợp và nhận dạng tiếng nói cung cấp bởi Mac OS để điều khiển máy tính.
•
QuickDraw: QuickDraw là một mô hình đầu tiên cung cấp tính năng WYSIWYG (what you see is what you get), mặc dù đã lỗi thời trong Mac OS X (thay thế bởi Quartz) tuy nhiên vẫn còn hoạt động trong Mac OS X 10.4. Trong tương lai có thể QuickDraw sẽ bị loại bỏ.
•
QuickTime: QuickTime Cung cấp khả năng chỉnh sửa và nghe âm thanh một cách trung thực. Định dạng của QuickTime và công nghệ
Hệ điều hành
Nguyễn Thị Lan Hương
streaming đã được phát huy trong vài chuẩn MPEG 4 liên quan đến định dạng của những đĩa giải trí DVD. •
TrueType: TrueType là một công nghệ rất thành công trong việc định dạng font chữ, và cũng được sử dụng trong Microsoft Windows, và sau này đã được tích hợp vào chuẩn font chữ OpenType.
Giao diện màn hình MAC OS 9
Hệ điều hành
Nguyễn Thị Lan Hương
Giao diện màn hình MAC OS X
Hệ điều hành
Nguyễn Thị Lan Hương
Mục lục • Giới thiệu • Hệ điều hành là gì •
Chức năng chính yếu của hệ điều hành
• Các thành phần của hệ điều hành • Dịch vụ cung cấp bởi hệ điều hành • Phân loại hệ điều hành • Thí dụ hệ điều hành • Vài nét sơ lược về một số hệ điều hành nổi tiếng và thường gặp o MS-DOS o Unix o LINUX o Hệ điều hành họ Windows o MAC and MAC OS