mở đầu - Đối với người dạy: Sử dụng phương pháp giảng giảng dạy tích cực (diễn giảng, vấn đáp, dạy học theo vấn đề; - Đối với người học: Chủ động đọc trước giáo trình trước buổi học *Điều kiện thực hiện bài học - Phòng học chuyên môn hóa/nhà xưởng: Phòng học chuyên môn - Trang thiết bị máy móc: Máy chiếu và các thiết bị dạy học khác - Học liệu, dụng cụ, nguyên vật liệu: Chương trình mô đun, giáo trình, tài liệu tham khảo, giáo án, phim ảnh, và các tài liệu liên quan. - Các điều kiện khác: Không có Kiểm tra và đánh giá bài học - Nội dung: Kiến thức: Kiểm tra và đánh giá tất cả nội dung đã nêu trong mục tiêu kiến thức Kỹ năng: Đánh giá tất cả nội dung đã nêu trong mục tiêu kĩ năng. Năng lực tự chủ và trách nhiệm: Trong quá trình học tập, người học cần: + Nghiên cứu bài trước khi đến lớp + Chuẩn bị đầy đủ tài liệu học tập. + Tham gia đầy đủ thời lượng mô đun.
+ Nghiêm túc trong quá trình học tập. - Phương pháp: Điểm kiểm tra thường xuyên: không có Kiểm tra định kỳ lý thuyết: không có Kiểm tra định kỳ thực hành: không có *Nội dung chính: 1. Định nghĩa Hệ điều hành Hệ điều hành (operating systems) là chương trình đóng vai trò trung gian giữa người sử dụng và phần cứng của máy tính. Hệ điều hành che dấu sự phức tạp, đa dạng của phần cứng, giúp việc sử dụng máy tính trở nên đơn giản, hiệu quả.
14 Nhiệm vụ của hệ điều hành là quản lý tài nguyên của máy tính, thực thi các chương trình ứng dụng, hỗ trợ các chức năng mạng, vv … Hệ điều hành là một hệ thống các chương trình hoạt động giữa người sử dụng (user) và phần cứng của máy tính. Mục tiêu của hệ điều hành là cung cấp một môi trường để người sử dụng có thể thi hành các chương trình. Nó làm cho máy tính dễ sử dụng hơn, thuận lợi hơn và hiệu quả hơn. Phần cứng bao gồm bộ xử lý (CPU), bộ nhớ, các thiết bị nhập xuất, đây là những tài nguyên của máy tính.
Chương trình ứng dụng như các chương trình dịch, hệ thống cơ sở dữ liệu, các trò chơi, và các chương trình thương mại. Các chương trình này sử dụng tài nguyên của máy tính để giải quyết các yêu cầu của người sử dụng. Hệ điều hành điều khiển và phối hợp việc sử dụng phần cứng cho những ứng dụng khác nhau của nhiều người sử dụng khác nhau. Hệ điều hành cung cấp một môi trường mà các chương trình có thể làm việc hữu hiệu trên đó.
Nhìn chung chưa có định nghĩa nào là hoàn hảo về hệ điều hành. Hệ điều hành tồn tại để giải quyết các vấn đề sử dụng hệ thống máy tính. Mục tiêu cơ bản của nó là giúp cho việc thi hành các chương trình dễ dàng hơn. Mục tiêu thứ hai là hỗ trợ cho các thao tác trên hệ thống máy tính hiệu quả hơn.
Tuy nhiên hai mục tiêu này cũng có phần tương phản vì vậy lý thuyết về hệ điều hành tập trung vào việc tối ưu hóa việc sử dụng tài nguyên của máy tính. Người sử Người sử Người sử Người sử. dụng 1 dụng 2 dụng 3 dụng n Chương Soạn thảo trình dịch Hợp ngữ văn bản CSDL Các chương trình ứng dụng Hệ điều hành Phần cứng Hình 1.1 Mô hình trừu tượng của hệ thống máy tính 1. Các thành phần của hệ điều hành: 15 1.1 Quản lý tiến trình Một tiến trình là một chương trình đang được thi hành.
Một tiến trình phải sử dụng tài nguyên như thời gian sử dụng CPU, bộ nhớ, tập tin, các thiết bị nhập xuất để hoàn tất công việc của nó. Các tài nguyên này được cung cấp khi tiến trình được tạo hay trong quá trình thi hành. Một tiến trình được coi là một đơn vị làm việc của hệ thống. Một hệ thống có thể có nhiều tiến trình cùng lúc, trong đó một số tiến trình là của hệ điều hành, một số tiến trình là của người sử dụng, các tiến trình này có thể diễn ra đồng thời.
Quản lý bộ nhớ chính: Trong hệ thống máy tính hiện đại, bộ nhớ chính là trung tâm của các thao tác, xử lý. Bộ nhớ chính có thể xem như một mảng kiểu byte hay kiểu word. Mỗi phần tử đều có địa chỉ. Đó là nơi lưu dữ liệu được CPU truy xuất một cách nhanh chóng so với các thiết bị nhập/xuất.
Ví dụ CPU truy xuất dữ liệu từ đĩa, những dữ liệu này được chuyển vào bộ nhớ qua lời gọi hệ thống nhập/xuất. Quản lý bộ nhớ phụ: Bộ nhớ chính quá nhỏ để có thể lưu giữ mọi dữ liệu và chương trình, ngoài ra dữ liệu sẽ mất khi không còn được cung cấp năng lượng. Hệ thống máy tính ngày nay cung cấp hệ thống lưu trữ phụ. Đa số các máy tính đều dùng đĩa để lưu trữ cả chương trình và dữ liệu.
Hầu như tất cả chương trình: chương trình dịch, hợp ngữ, thủ tục, trình soạn thảo, định dạng. đều được lưu trữ trên đĩa cho tới khi nó được thực hiện, nạp vào trong bộ nhớ chính và cũng sử dụng đĩa để chứa dữ liệu và kết quả xử lý. Quản lý hệ thống vào/ ra: Một trong những mục tiêu của hệ điều hành là che dấu những đặc thù của các thiết bị phần cứng đối với người sử dụng thay vào đó là một lớp thân thiện hơn, người sử dụng dễ thao tác hơn. Một hệ thống vào/ra bao gồm: - Thành phần quản lý bộ nhớ chứa vùng đệm (buffering), lưu trữ (caching) và spooling (vùng chứa).
- Giao tiếp điều khiển thiết bị (device drivers) tổng quát. - Bộ điều khiển cho các thiết bị xác định. - Chỉ có bộ điều khiển cho các thiết bị xác định mới hiểu đến cấu trúc đặc thù của thiết bị mà nó mô tả. Quản lý hệ thống tập tin: Máy tính có thể lưu trữ thông tin trong nhiều dạng thiết bị vật lý khác nhau: băng từ, đĩa từ, đĩa quang,.
Mỗi dạng có những đặc thù riêng về mặt tổ chức vật lý. Mỗi thiết bị có một bộ kiểm soát như bộ điều khiển đĩa (disk driver) và có những tính chất riêng. Những tính chất này là tốc độ, khả năng lưu trữ, tốc độ truyền dữ liệu và cách truy xuất. Hệ điều hành tạo một ánh xạ từ tập tin đến vùng thông tin trên đĩa và truy xuất những tập tin thông qua thiết bị lưu trữ.
Hệ thống bảo vệ: Hệ thống bảo vệ là một cơ chế kiểm soát quá trình truy xuất của chương trình, tiến trình, hoặc người sử dụng với tài nguyên của hệ thống. Cơ chế này cũng cung cấp cách thức để mô tả lại mức độ kiểm soát. Hệ thống bảo vệ cũng làm tăng độ an toàn khi kiểm tra lỗi trong giao tiếp giữa những hệ thống nhỏ bên trong. Hệ thống thông dịch lệnh: Một trong những phần quan trọng của chương trình hệ thống trong một hệ điều hành là hệ thống thông dịch lệnh, đó là giao tiếp giữa người sử dụng và hệ điều hành.
Một số hệ điều hành đặt cơ chế dòng lệnh bên trong hạt nhân, số khác như MS-DOS và UNIX thì xem hệ điều hành như là một chương trình đặt biệt, được thi hành khi các công việc bắt đầu hoặc khi người sử dụng login lần đầu tiên. Các tính chất cơ bản của hệ điều hành. Tin cậy Mọi hoạt động, mọi thông báo của hệ điều hành đều phải chuẩn xác, tuyệt đối, chỉ khi nào biết chắc chắn là đúng thì hệ điều hành mới cung cấp thông tin cho người sử dụng. Để đảm bảo được yêu cầu này, phần thiết bị kỹ thuật phải có những phương tiện hỗ trợ kiểm tra tính đúng đắn của dữ liệu trong các phép lưu trữ và xử lý.
Trong các trường hợp còn lại hệ điều hành thông báo lỗi và ngừng xử lý trao quyền quyết định cho người vận hành hoặc người sử dụng. An toàn Hệ thống phải tổ chức sao cho chương trình và dữ liệu không bị xoá hoặc bị thay đổi ngoài ý muốn trong mọi trường hợp và mọi chế độ hoạt động. Điều này đặc biệt quan trọng khi hệ thống là đa nhiệm. Các tài nguyên khác nhau đòi hỏi những yêu cầu khác nhau trong việc đảm bảo an toàn.
Hiệu quả Các tài nguyên của hệ thống phải được khai thác triệt để sao cho ngay cả điều kiện tài nguyên hạn chế vẫn có thể giải quyết những yêu cầu phức tạp. Một khía cạnh quan trọng của đảm bảo hiệu quả là duy trì đồng bộ trong toàn bộ hệ thống, không để các thiết bị tốc độ chậm trì hoãn hoạt động của toàn bộ hệ thống. Tổng quát theo thời gian Hệ điều hành phải có tính kế thừa, đồng thời có khả năng thích nghi với những thay đổi có thể có trong tương lai. Tính thừa kế là rất quan trọng ngay cả với các hệ điều hành thế hệ mới.
Đối với việc nâng cấp, tính kế thừa là bắt buộc. Các thao tác, thông báo là không được thay đổi, hoặc nếu có thì không đáng kể và phải được hướng dẫn cụ thể khi chuyển từ phiên bản này sang phiên bản khác, bằng các phương tiện nhận biết của hệ thống. Đảm bảo tính kế thừa sẽ duy trì và phát triển đội ngũ người sử dụng - một nhân tố quan trọng để hệ điều hành có thể tồn tại. Thuận tiện 17 Hệ thống phải dễ dàng sử dụng, có nhiều mức hiệu quả khác nhau tuỳ theo kiến thức và kinh nghiệm người dùng.
Hệ thống trợ giúp phong phú để người sử dụng có thể tự đào tạo ngay trong quá trình khai thác. Trong một chừng mực nào đó, các tính chất trên mâu thuẫn lẫn nhau. Mỗi HĐH có một giải pháp trung hoà, ưu tiên hợp lý ở tính chất này hay tính chất khác. Các chức năng của hệ điều hành.
- Tổ chức giao tiếp giữa người dùng và hệ thống. - Cung cấp các tài nguyên cho các chương trình và cách tổ chức thực hiện các chương trình đó. - Tổ chức lưu trữ thông tin trên bộ nhớ ngoài, cung cấp các công cụ để tìm kiếm và truy cập thông tin. - Kiểm tra và hỗ trợ bằng phần mềm cho các thiết bị ngoại vi để khai thác chúng một cách thuận tiện, hiệu quả.
- Cung cấp các dịch vụ tiện ích hệ thống. Lịch sử phát triển của hệ điều hành + Giai đoạn 1 (1945 – 1955): đã có máy tính lớn nhưng chưa có hệ điều hành. + Giai đoạn 2 (1956 – 1965): hệ thống xử lý theo lô (Batch systems) Đây là hệ điều hành đầu tiên, thô sơ nhất.