Bài giảng Hệ điều hành - Chương 1b: Cấu trúc hệ điều hành

B. Cấu Trúc Hệ Điều Hành

qCác thành phần của hệ điều hành

qCác dịch vụ hệ điều hành cung cấp

qGiao tiếp giữa quá trình và hệ điều hành

qCác chương trình hệ thống (system programs)

qCấu trúc luận lý của hệ thống

qMáy ảo (virtual machine)

ppt 18 trang thiennv 07/11/2022 2840
Bạn đang xem tài liệu "Bài giảng Hệ điều hành - Chương 1b: Cấu trúc hệ điều hành", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.

File đính kèm:

  • pptbai_giang_he_dieu_hanh_chuong_1b_cau_truc_he_dieu_hanh.ppt

Nội dung text: Bài giảng Hệ điều hành - Chương 1b: Cấu trúc hệ điều hành

  1. Giao tiếp giữa quá trình và hệ điều hành ❑ System call – Cung cấp giao diện giữa quá trình và hệ điều hành ▪ Vd: open, read, write file – Thông thường ở dạng thư viện nhị phân (binary libraries) – Trong các ngôn ngữ lập trình cấp cao, một số thư viện lập trình được xây dựng dựa trên các thư viện hệ thống (ví dụ Windows API, thư viện GNU C/C++ như glibc, glibc++, ) – Ba phương pháp truyền tham số khi sử dụng system call ▪ Truyền thông số qua thanh ghi ▪ Truyền tham số thông qua một vùng nhớ, địa chỉ của vùng nhớ được gửi đến hệ điều hành qua thanh ghi ▪ Truyền tham số qua stack 1.B.11
  2. Các chương trình hệ thống ❑ Chương trình hệ thống (system program, phân biệt với application program) gồm – Quản lý hệ thống file: như create, delete, rename, list – Thông tin trạng thái: như date, time, dung lượng bộ nhớ trống – Soạn thảo file: như file editor – Hỗ trợ ngôn ngữ lập trình: như compiler, assembler, interpreter – Nạp, thực thi, giúp tìm lỗi chương trình: như loader, debugger – Giao tiếp: như email, talk, web browser – ❑ Người dùng chủ yếu làm việc thông qua các system program (không làm việc “trực tiếp” với các system call) 1.B.12
  3. Cấu trúc luận lý của hệ thống ❑ Hệ thống đơn (monolithic) – MS-DOS: khi thiết kế, do giới hạn về dung lượng bộ nhớ nên không phân chia module (modularization), chưa phân chia rõ chức năng giữa các phần của hệ thống. – MS-DOS, xem như được phân lớp (layered): 1.B.13
  4. Cấu trúc luận lý của hệ thống (tt) ❑ Hệ thống đơn (monolithic) – UNIX: gồm hai phần ▪ các system program và kernel (file system, CPU scheduling, memory management, và một số chức năng khác) Xem như được phân lớp: signals file system terminal handling swapping character I/O system block I/O system terminal drivers disk and tape drivers 1.B.14
  5. Cấu trúc luận lý của hệ thống (tt) ❑ Thiết kế OS: phân chia module theo cách phân lớp (layered). Vd: hệ điều hành OS/2 1.B.15
  6. Cấu trúc luận lý của hệ thống (tt) ❑ Thiết kế OS: phân chia module theo microkernel (CMU Mach OS, 1980) – Chuyển một số chức năng của OS từ kernel space sang user space – Thu gọn kernel → microkernel, microkernel chỉ bao gồm các chức năng tối thiểu như quản lý quá trình, bộ nhớ và cơ chế giao tiếp giữa các quá trình – Giao tiếp giữa các module qua cơ chế truyền thông điệp một module Application POSIX X-application application File POSIX server X-window server server Microkernel 1.B.16
  7. Máy ảo ❑ Từ OS layer đến máy ảo (virtual machine) processes processes processes processes programming kernel kernel kernel interface VM1 VM2 VM3 kernel Virtual-machine implementation hardware hardware Non-virtual machine Virtual machine system model system model 1.B.17
  8. Máy ảo (tt) ❑ Hiện thực ý niệm VM – Làm thế nào để thực thi một chương trình MS-DOS trên một hệ thống Sun với hệ điều hành Solaris? Intel x86 Application 1. Tạo một máy ảo Intel bên trên hệ Intel x86 VM điều hành Solaris và hệ thống VM interpretation Sun Solaris kernel 2. Các lệnh Intel (x86) được máy ảo Sun hardware Intel chuyển thành lệnh tương ứng của hệ thống Sun. 1.B.18