1. Trang chủ
  2. » Tất cả

Chapter02 operating system structures

20 1 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Nội dung

3 Caáu Truùc Heä Ñieàu Haønh 2/24/2014 Khoa KTMT 1 Chöông II Caáu Truùc Heä Ñieàu Haønh  Caùc thaønh phaàn cuûa heä ñieàu haønh  Caùc dòch vuï heä ñieàu haønh cung caáp  Lôøi goïi heä thoáng (Syste[.]

Chương II: Cấu Trúc Hệ Điều Hành  Các thành phần hệ điều hành  Các dịch vụ hệ điều hành cung cấp  Lời gọi hệ thống (System call)  Các chương trình hệ thống (system programs)  Cấu trúc hệ thống  Máy ảo (virtual machine) 2/24/2014 Khoa KTMT 2.1 Các thành phần hệ điều hành „2.1.1 Quản lý trình (process management) - Quá trình (hay tiến trình ‟ process) gì? - Quá trình khác chương trình điểm gì? - Một trình cần tài nguyên hệ thống CPU, nhớ, file, thiết bị I/O,… để hoàn thành công việc - Các nhiệm vụ thành phần  Tạo hủy trình  Tạm dừng/thực thi tiếp (suspend/resume) trình  Cung cấp chế ‟ đồng hoạt động trình (synchronization) ‟ giao tiếp trình (interprocess communication) ‟ khống chế tắc nghẽn (deadlock) 2/24/2014 Khoa KTMT 2.1 Các thành phần hệ điều hành „2.1.2 Quản lý nhớ ‟ Bộ nhớ trung tâm thao tác, xử lý ‟ Để nâng cao hiệu suất sử dụng CPU, hệ điều hành cần quản lý nhớ thích hợp ‟ Các nhiệm vụ thành phần  Theo dõi, quản lý vùng nhớ trống cấp phát  Quyết định nạp chương trình có vùng nhớ trống  Cấp phát thu hồi vùng nhớ cần thiết 2/24/2014 Khoa KTMT 2.1 Các thành phần hệ điều hành „2.1.3 Quản lý file (file management) ‟ Hệ thống file (file system)  File  Thư mục ‟ Các dịch vụ mà thành phần cung cấp  Tạo xoá file/thư mục  Các thao tác xử lý file/thư mục (mkdir, rename, copy, move, new,…)  “Ánh xạ” file/thư mục vào thiết bị lưu trữ thứ cấp tương ứng  Sao lưu phục hồi liệu 2/24/2014 Khoa KTMT 2.1 Các thành phần hệ điều hành „2.1.4 Quản lý hệ thống I/O (I/O system management) ‟ Che dấu khác biệt thiết bị I/O trước người dùng ‟ Có chức  Cơ chế: buffering, caching, spooling  Cung cấp giao diện chung đến trình điều khiển thiết bị (device-driver interface)  Bộ điều khiển thiết bị (device driver) phần cứng 2/24/2014 Khoa KTMT 2.1 Các thành phần hệ điều hành „2.1.5 Quản lý hệ thống lưu trữ thứ cấp (secondary storage management) ‟ Bộ nhớ chính: kích thước nhỏ, môi trường chứa tin không bền vững => cần hệ thống lưu trữ thứ cấp để lưu trữ bền vững liệu, chương trình ‟ Phương tiện lưu trữ thông dụng đóa từ, đóa quang ‟ Nhiệm vụ hệ điều hành quản lý đóa  Quản lý không gian trống đóa(free space management)  Cấp phát không gian lưu trữ (storage allocation)  Định thời họat động cho đóa (disk scheduling)  Sử dụng thường xuyên => ảnh hưởng lớn đến tốc độ hệ thống => cần hiệu 2/24/2014 Khoa KTMT 2.1 Các thành phần hệ điều hành „2.1.6 Hệ thống bảo vệ Trong hệ thống cho phép nhiều user hay nhiều process diễn đồng thời: ‟ Kiểm soát trình người dùng đăng nhập/xuất sử dụng hệ thống ‟ Kiểm soát việc truy cập tài nguyên hệ thống ‟ Bảo đảm user/process phép sử dụng tài nguyên dành cho ‟ Các nhiệm vụ hệ thống bảo vệ  Cung cấp chế kiểm soát đăng nhập/xuất (login, log out)  Phân định truy cập tài nguyên hợp pháp bất hợp pháp (authorized/unauthorized)  Phương tiện thi hành sách (enforcement of policies) Chính sách: cần bảo vệ liệu 2/24/2014 Khoa KTMT 2.1 Các thành phần hệ điều hành „2.1.7 Hệ thống thông dịch lệnh ‟ Là giao diện chủ yếu người dùng OS „ Ví dụ: shell, mouse-based window-and-menu ‟ Khi user login „ command line interpreter (shell) chạy, chờ nhận lệnh từ người dùng, thực thi lệnh trả kết ‟ Các lệnh ->bộ điều khiển lệnh ->hệ điều hành ‟ Các lệnh có quan hệ với việc:  Tạo, hủy, quản lý trình, hệ thống  Kiểm soát I/O  Quản lý lưu trữ thứ cấp  Quản lý nhớ  Truy cập hệ thống file chế bảo mật 2/24/2014 Khoa KTMT 2.2 Các dịch vụ hệ điều hành cung cấp ‟ Thực thi chương trình ‟ Thực thao tácï I/O theo yêu cầu chương trình ‟ Các thao tác hệ thống file „ Đọc/ghi hay tạo/xóa file ‟ Trao đổi thông tin trình qua hai cách:  Chia xẻ nhớ (Shared memory)  Chuyển thông điệp (Message passing) ‟ Phát lỗi  Trong CPU, nhớ, thiết bị I/O (dữ liệu hư, hết giấy,…)  Do chương trình: chia cho 0, truy cập đến địa nhớ không cho phép 2/24/2014 Khoa KTMT 2.2 Các dịch vụ hệ điều hành cung cấp Ngoài dịch vụ giúp tăng hiệu suất hệ thống: ‟ Cấp phát tài nguyên (resource allocation) „ Tài nguyên: CPU, nhớ chính, tape drives,… „ OS có routine tương ứng ‟ Kế toán (accounting) „ Nhằm lưu vết user để tính phí đơn giản để thống kê ‟ Bảo vệ (protection) „ Hai trình khác không ảnh hưởng „ Kiểm soát truy xuất tài nguyên hệ thống ‟ An ninh (security) „ Chỉ user phép sử dụng hệ thống truy cập tài nguyên hệ thống (vd: thông qua username password) 2/24/2014 Khoa KTMT 10 2.3 Lời gọi hệ thống (System call) „ Dùng để giao tiếp trình hệ điều hành ‟ Cung cấp giao diện trình hệ điều hành „ Vd: open, read, write file ‟ Thông thường dạng thư viện nhị phân (binary libraries) hay giống lệnh hợp ngữ ‟ Trong ngôn ngữ lập trình cấp cao, số thư viện lập trình xây dựng dựa thư viện hệ thống (ví dụ Windows API, thư viện GNU C/C++ glibc, glibc++,…) ‟ Ba phương pháp truyền tham số sử dụng system call  Qua ghi  Qua vùng nhớ, địa vùng nhớ gửi đến hệ điều hành qua ghi  Qua stack 2/24/2014 Khoa KTMT 11 2.4 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: create, delete, rename, list ‟ Thông tin trạng thái: date, time, dung lượng nhớ trống ‟ Soạn thảo file: file editor ‟ Hỗ trợ ngôn ngữ lập trình: compiler, assembler, interpreter ‟ Nạp, thực thi, giúp tìm lỗi chương trình: loader, debugger ‟ Giao tiếp: email, talk, web browser ‟ …  Người dùng chủ yếu làm việc thông qua system program (không làm việc “trực tiếp” với system call) 2/24/2014 Khoa KTMT 12 2.5 Cấu trúc hệ thống  Cấu trúc đơn giản (monolithic) ‟ MS-DOS: thiết kế, giới hạn dung lượng nhớ nên không phân chia thành module (modularization) chưa phân chia rõ chức phần hệ thống Cấu trúc phân tầng MS-DOS 2/24/2014 Khoa KTMT 13 2.5 Cấu trúc hệ thống  Cấu trúc đơn giản (monolithic) UNIX: gồm hai phần tách rời  Nhân (cung cấp file system, CPU scheduling, memory management, số chức khác) system program 2/24/2014 Khoa KTMT 14 2.5 Cấu trúc hệ thống  Cấu trúc phân tầng: HĐH chi thành nhiều lớp (layer) Lớp cùng: hardware Lớp giao tiếp với user Lớp phụ thuộc lớp Một lớp gọi hàm lớp hàm gọi lớp  Mỗi lớp tương đương đối tượng trừu tượng: cấu trúc liệu + thao tác  Phân lớp có lợi ích gì? Gỡ rối (debugger, kiểm tra hệ thống, thay đổi chức năng)     2/24/2014 Khoa KTMT 15 2.5 Cấu trúc hệ thống  Cấu trúc phân tầng:  Lần áp dụng cho HĐH THE (Technische Hogeschool Eindhoven) 2/24/2014 Lớp user programm Lớp Tạo buffer cho thiết bị I/O Lớp Device driver thao tác hình Lớp Quản lý nhớ Lớp Lập lịch CPU Lớp Phần cứng Khoa KTMT 16 2.5 Cấu trúc hệ thống  Vi nhân: phân chia module theo microkernel (CMU Mach OS, 1980)  Chuyển số chức OS từ kernel space sang user space  Thu gọn kernel => microkernel, microkernel bao gồm chức tối thiểu quản lý trình, nhớ chế giao tiếp trình  Giao tiếp module qua chế truyền thông điệp module Application File server POSIX application OS/2 application OS/2 server POSIX server Microkernel 2/24/2014 Khoa KTMT 17 2.5 Cấu trúc hệ thống  Vi nhân: - Lợi ích: dễ mở rộng HĐH Một số HĐH đại sử dụng vi nhân: + Tru64 UNIX (Digital UNIX trước ñaây): nhaân Mach + Apple MacOS Server : nhaân Mach + QNX ‟ vi nhân cung cấp: truyền thông điệp, định thời CPU, giao tiếp mạng cấp thấp ngắt phần cứng + Windows NT: chạy ứng dụng khác win32, OS/2, POSIX (Portable OS for uniX) 2/24/2014 Khoa KTMT 18 2.6 Máy ảo „ Từ OS layer đến máy ảo (virtual machine) processes processes processes programming interface kernel hardware processes kernel kernel kernel VM1 VM2 VM3 Virtual-machine implementation hardware Non-virtual machine system model 2/24/2014 Virtual machine system model Khoa KTMT 19 2.6 Máy ảo  Hiện thực ý niệm VM ‟ Làm để thực thi chương trình MS-DOS hệ thống Sun với hệ điều hành Solaris ? Tạo máy ảo Intel bên hệ điều hành Solaris hệ thống Sun Các lệnh Intel (x86) máy ảo Intel chuyển thành lệnh tương ứng hệ thống Sun 2/24/2014 Khoa KTMT Intel x86 Application Intel x86 VM VM interpretation Solaris kernel Sun hardware 20 ... số sử dụng system call  Qua ghi  Qua vùng nhớ, địa vùng nhớ gửi đến hệ điều hành qua ghi  Qua stack 2/24/2014 Khoa KTMT 11 2.4 Các chương trình hệ thống  Chương trình hệ thống (system program,... tiếp: email, talk, web browser ‟ …  Người dùng chủ yếu làm việc thông qua system program (không làm việc “trực tiếp” với system call) 2/24/2014 Khoa KTMT 12 2.5 Cấu trúc hệ thống  Cấu trúc đơn... giản (monolithic) UNIX: gồm hai phần tách rời  Nhân (cung cấp file system, CPU scheduling, memory management, số chức khác) system program 2/24/2014 Khoa KTMT 14 2.5 Cấu trúc hệ thống  Cấu trúc

Ngày đăng: 25/02/2023, 17:56

w