Hệ điều hành

Sách tham khảo

“Operating System Concepts”, Silberschatz et at. 6thEd, 2003

“An Introduction to Operating Systems”; Harvay M. Deitel. 1990.

Đánh giá

 - 30% điểm bài tập lớn về nhà(10/10) Nộp trước khi thi chậm nhất là 1 tuần

- 70% thi trắc nghiệm cuối học kỳ (10/10)

 

ppt43 trang | Chia sẻ: Mr Hưng | Lượt xem: 830 | Lượt tải: 0download
Bạn đang xem trước 20 trang nội dung tài liệu Hệ điều hành, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Khoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhHệ Điều Hành (Operating Systems)Nguyễn Phan TrungĐịa chỉ liên lạcNguyển Phan Trung – Khoa CNTTEmail: trungngph@yahoo.com.sgKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhThông tin về môn hocSách tham khảo“Operating System Concepts”, Silberschatz et at. 6thEd, 2003“An Introduction to Operating Systems”; Harvay M. Deitel. 1990.Đánh giá - 30% điểm bài tập lớn về nhà(10/10) Nộp trước khi thi chậm nhất là 1 tuần- 70% thi trắc nghiệm cuối học kỳ (10/10)Khoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhNội dung môn Hệ Điều HànhChương 1: Tổng quan về Hệ Điều HànhChương 2: Khái niệm về quá trình(process) Chương 3: Quản lý các quá trình đồng thờiChương 4 : tắc nghẽn (Deadlock) Chương 5 Định thời biểu cho quá trìnhChương 6 Phân cấp bộ nhớ - Bộ nhớ thựcChương 7 Bộ nhớ ảoChương 8 Hệ thống I/OChương 9 Hệ thống fileÔn tậpKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhChương 1 Hệ Điều HànhSau khi đọc xong chương này và hoàn thành hết các bài tập bạn sẽ có thể:Hiểu nguyên lý hoạt động của hệ điều hànhMô tả các loại hệ điều hànhHiểu được lịch sử phát triển của hệ điều hànhKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhChương 1 Hệ Điều HànhSau khi đọc xong chương này và hoàn thành hết các bài tập bạn sẽ có thể:Thảo luận về chế độ đơn nhiệm và chế độ đa nhiệmPhân biệt sự khác nhau giữa hệ điều hành một người dùng và hệ điều hành nhiều người dùng.Liệt kê và miêu tả một cách ngắn gọn các hệ điều hành hiện nayKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhChương 1 Hệ Điều HànhGiới thiệu tổng quanĐịnh nghĩa Hệ Điều Hành (Operating System)Các thành phần của hệ thống máy tínhCác chức năng chính của OSQuá trinh phát triển của Hệ Điều HànhMainframe SystemsDesktop SystemsMultiprocessor SystemsDistributed SystemsRealtime SystemsHandheld SystemsKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhGIỚI THIỆU TỔNG QUANKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhCác nhiệm vụ chung của tất cả các os Khoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhCác thành phần hệ thốngPhần cứng (Hardware):Bao gồm các tài nguyên cơ bản của máy tính như :Processor CPURegisters (address, data, control)Instruction cycle (fetch, decode, execute)InterruptsUsually includes hardware and special instruction to help the O.S manage memory, devices,etc,Memory Bộ nhớDiifferent levels (cache, main memory, disk)các thiết bị I/O,Usually use interupts, DMAOS usually controls use of I/O devicesHệ điều hành (Operating System)Phân phối tài nguyên, điều khiển và phối hợp các hoạt động của các chương trình trong hệ thốngChương trình ứng dụng (applications programs)sử dụng tài nguyên hệ thống để giải quyết một vấn đề tính toán nào đó của người sử dụng ( ví dụ: compilers, database systems, video games, business progams).Các users sử dụng hệ thốngCon người, máy móc, hệ thống máy tính khác,Khoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhCÁC THÀNH PHẦN CỦA HỆ THỐNGKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhCác chức năng chính của OSPhân chia thời gian xử lý và định thời CPUPhối hợp và đồng bộ hoạt động giữa các processes (coordination & synchronization)Quản lý tài nguyên hệ thống (I/O,bộ nhớ, file chứa dữ liệu, )Thực hiện và kiểm soát access, protectionDuy trì nhất quán (integrity) của hệ thống, kiểm soát lỗi và phục hồi hệ thống khi có lỗi (error recovery)Cung cấp giao diện làm việc cho usersKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhTại sao phải nghiên cứu OsThiết kế Os là một case study rất tốt về thiết kế công nghệ phần mềm (software engineering design)The better you know the Os, the better apps you write. The better you understand its bugs and work around them.Os sử dụng các thuật giải phức tạp, rất nhiều trong đó có thể được sử dụng lại trong các phần mềm khác. Vd phát hiện khóa chết( deadlock detection).Os cần có sư phát triển nhanh của phần cứng.Khoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhQuá trình phát triển OSMainframe SystemsBatch systemsMulti-programmed systemsTime-sharing systemsKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhMainframe SystemsBatch SystemLà Os sơ khai nhất chỉ có Resident Monitor, trong đó chưá các phần điều khiển quá trình xử lý, tính toán như: Loader, job sequencing, control card interpreter, device driverCần có người vận hành: operator (user ≠ operator), giảm setup time -> ghép nhóm công việc (battching jobs) ví dụ : ghép 2 công việc cùng dùng trình biên dịch Fortran, -> tiết kiệm được thời gian load trình biên dịch Fortral.Khoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhUNIVAC mainframe systemKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhFACOM mainframeKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhTổ chức bộ nhớ của Simple BatchMainframe SystemsKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhQuá trình phát triển OS (t.t)Multi-programmed SystemMultiprogramming làm tăng hiệu năng của CPU bằng cách tổ chức các công việc để CPU luôn có 1 công việc cần thực hiện.Các công việc đó được lưu trong bộ nhớ chính tại cùng một thời điểm và CPU là đa nhiệm giữa chúngKhi một công việc phải đợi tác vụ nào đó, vd đợi họat động I/O. Os sẽ chuyển CPU cho một công việc khác.Yêu cầu đối với OS trong Multi-programmed SystemJob SchedulingMemory managementCPU schedulingAllocation of devicesprotectionKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhTổ chức bộ nhớ của Multiprogrammed Batch SystemKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhQuá trình phát triển OsKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhQuá trình phát triển OS (t.t) Time-Sharing SystemsMulti-programmed systems không cung cấp khả năng tương tác usersCPU luân phiên chuyển đổi thực thi giữa các công việc nhưhg sự chuyển đổi xẩy ra rất thường xuyên để các user có thể tương tác với mỗi chương trình đang chạy và có cảm giác là tòan bộ hệ thống đang được dành riêng cho mìnhCung cấp sự tương tác giữa hệ thống với userKhi kết thúc thực thi một lệnh, OS sẽ tìm câu lệnh điều khiển (control statement) tiếp theo từ keyboard or mouse chứ không phải từ card readerMột công việc chỉ được chiếm CPU để xử lý khi nó nằm trong bộ nhớ chínhKhi cần thiết, một công việc nào đó có thể được chuyển từ bộ nhớ chính ra thiết bị lưu trữ, nhường bộ nhớ chính cho công việc khác.Khoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhTime-Sharing SystemOs sử dụng CPU scheduling và multiprogramming để cung cấp cho mỗi user một phần nhỏ tài nguyên của máy tínhMultiprogramming và time shsring vẫn đóng vai trò chủ đạo trong các OS hiện nayKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhTime-Sharing System(t.t)Yêu cầu đối với OS trong Time-Sharing SystemsĐịnh thời công việc (job scheduling)Quản lý bộ nhớ (Memory Management)Các công việc được hoán chuyển giữa bộ nhớ chính và đĩaVirtual memory: cho phép một công việc có thể được thực thi mà không cần phải nạp hoàn toàn vào bộ nhớ chínhQuản lý các process (Process Management)Định thời CPU (CPU scheduling)Đồng bộ các công việc (synchronization)Tương tác giữa các công việc ( process communication)Tránh DeadlockQuản lý hệ thống file, hệ thống lưu trữ (disk management)Phân bổ các thiết bị tài nguyênCơ chế bảo vệ (protection)Khoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhIBM 360_67 time-sharing systemKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhQuá trình phát triển OS (t.t)Desktop System (Personal Computer)Được thiết kế dành cho user đơn.Có sự thuận tiện và dễ điều khiển đối với userMục tiêu chính của các hệ thống PC là hướng đến sự tiện lợi (convinience) cho user và khả năng đáp ứng (reponsiveness) caoCó nhiều thiết bi I/O như keyboards, mouse, màn hình, máy inCó thể ứng dụng các kỹ thụât được phát trỉển cho các Os lớn hơnThường mỗi người sở hữu một máy tính do đó không yêu cầu cao cấp về bảo mật và tối ưu hiệu suất CPU như các hệ thống khác.Có thể vận hành nhiều hệ điều hành khác nhau (Windows, MacOS, Solaris, Linux,)Khoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhDestop systemKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhQuá trình phát triển OS (t.t)Hệ thống đa xử lý (multiprocessor systems) còn gọi là hệ thống song song (Parallel Systems)hệ thống có nhiều hơn một CPU và được kết nối chặt ( tightly coupled) i.e. các processor chia sẻ bộ nhớ chung và một clock, sự giao tiếp thường xuyên diễn ra qua bộ nhớ chung.Ưu điểm:Tăng thông lượng (system throughput):- Mức tăng tỉ lệ thuận –N processor, tốc độ tăng N lầnTiết kiệm (thời gian, tài ngyên): các tài nguyên phụ thuộc và chia sẻTăng độ tin cậy trong một số trường hợpKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhParallel Systems (t.t)Symmetric multiprocessing (SMP)Các processor vận hành cùng một hệ điều hành duy nhấtNhiều ứng dụng thực thi cùng lúc với hiệu suất (performance) caoĐa số các hệ điều hành hỗ trợ SMPAsymmetric multiprocessing Mỗi processor thực thi một công việc khác nhau, master processor định thời và phân cong việc cho các slave processorKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhKiến trúc đa xử lý đối xứngKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhfujGS8400 multi-processorKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhQuá trình phát triển OS (t.t)Hệ thống phân bố (Distributed Systems)Phân bố công việc trên nhiều processors loosely coupled system (Hệ thống được kết nối lỏng). Mỗi processor có bộ nhớ riêng nó (local memory), các processor giao tiếp với các processor khác qua các kênh nối như : bus tốc độ cao , đường điện thoại. internet Trong góc nhìn của user, OS được vận hành bởi một hệ điều hành duy nhấtƯu điểmCho phép chia sẻ tài nguyên (resource sharing)Chia sẻ công việc tính toán ( computational sharing)độ tin cậy cao (high reliability) nhờ sự backup data một cách tuyệt đốiKhuyết điểm: Khó quản lý hơn paralellet systems: network failures, node failures, chi phí vận chuyển data lớnKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhDistributed Systems (tiếp)Yêu cầu cơ sở hạ tầng mạng máy tính : Local area network (LAN)Wide area network (WAN)Dựa trên mô hình client-server hoặc peer-to-peer.Khoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhCấu trúc client-ServerKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhCấu trúc Peer-to-PeerKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhQuá trình phát triển OS (t.t)Hệ thống thời gian thực (Real-Time systems)Thường dùng trong các thiết bị chuyên dụng như điều khiển các thí nghiêm khoa học, các hệ thống xử lý ảnh trong y khoa, hệ thống điều khiển công nghiệp và một số hệ thống hiển thị khác.Có những ràng buộc thời gian cố định (fixed-time) một cách rõ ràngReal-Time systems có thể là hard hoặc soft real-timeKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhReal-Time SystemsHard real-time:Hạn chế hoặc không có bộ nhớ phụ, tất cả dữ liệu nằm trong bộ nhớ chính RAM hoặc ROMYêu cầu thời gian đáp ứng, xử lý rất nghiêm ngặt, thường sử dụng trong điều khiển công nghiệp, công nghệ roboticsTrái ngược với time-sharing systems, không được hỗ trợ bởi các HĐH đa năng.Soft real-time:Tiện ích hạn chế trong công nghiệp điều khiển robotHữu dụng trong lĩnh vực multimedia, thực tế ảo (virtual reality) với yêu cầu mềm dẻo hơn về thời gianKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhRealtime systemKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhHandheld SystemsPersonal Digital Assistants (PDAs), Mobile PhoneCellular telephonesCác hạn chế: bộ nhớ có dung lượng nhỏTốc độ processor không cao ( vì phải tiêu thụ ít năng lượng)Màn hình hiển thị có kích thước nhỏ, độ phân giải thấpPortability, convenienceKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhEx: Handheld SystemsKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhGaming systemKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhEx : Gaming systemKhoa Công Nghệ Thông Tin – Đại Hoc Công Nghiệp TP Hồ Chí MinhCâu hỏi và bài tập về nhàBa mục đích chính của Hệ điều Hành là gì?Liệt kê các thành phần của tổ chức máy tính?Lợi ích chính của Hệ điều Hành đa chương là cái gí? Khác biệt chính của máy tính mainframe và máy tính PC là cái gì?Phân biệt kết nối lỏng và kết nối chặt (cũng như giữa multiprocessor và distributed system)

Các file đính kèm theo tài liệu này:

  • pptchc6b0c6a1ng_12_117.ppt
Tài liệu liên quan