Hệ điều hành ?• Là 1 chương trình quản lý phần cứng máy tính • Trung gian giữa người dùng và phần cứng máy tính • Cung cấp môi trường cho các ứng dụng khác thực thi... Hạt nhân của HĐH
Trang 1Chương 1: TỔNG QUAN
VỀ HỆ ĐIỀU HÀNH
Trang 3Hệ điều hành ?
• Là 1 chương trình quản lý phần cứng máy tính
• Trung gian giữa người dùng và phần cứng máy
tính
• Cung cấp môi trường cho các ứng dụng khác
thực thi
Trang 4Hạt nhân của HĐH
• Tiến trình (Process)
– Chương trình đang thực thi trên máy
– VD: mở 1 file word tạo ra 1 tiến trình PW
• Tiểu trình (thread)
– Một dòng xử lý trong 1 tiến trình
– Một tiến trình có 1 hay nhiều tiểu trình
– VD: trong tiến trình PW
• Luồng nhận thao tác của người dùng
• Luồng kiểm tra lỗi
Trang 5Vai trò của hệ điều hành
Trang 6Vai trò của hệ điều hành
6
Trang 7Vai trò của hệ điều hành
• Quản trị tài nguyên
– CPU, RAM, printer…
– Nhiệm vụ: Cung cấp giải thuật cấp phát, quản trị tài
nguyên cho các đối tượng hoạt động.
– Mục tiêu:Cấp phát đầy đủ, công bằng, hiệu quả
• Điều khiển thiết bị
– Nhiệm vụ: Che dấu các chi tiết phần cứng, tạo môi trường
dễ làm việc hơn cho người dùng.
Trang 8Thành phần của HĐH
• Quản lý tài nguyên là vai trò quan trọng nhất của HĐH, do
đó cần có một số thành phần quản lý CPU, quản lý bộ nhớ,
…
– CPU : quản lý tiến trình(bao gồm quản lý CPU)
– RAM : quản lý bộ nhớ chính
– Input/Output : quản lý nhập/xuất (thấy rõ ở DOS)
– Hệ thống tập tin : Quản lý tập tin
Hệ thống bảo vệ
Quản lý mạng
Shell (giao tiếp người dùng)
8
Trang 9Dịch vụ của HĐH
• Nạp và thi hành chương trình (load & run)
• Các thao tác xuất nhập (I/O Operations)
• Các thao tác truy xuất/cập nhật hệ thống tập tin (file system)
• Các cơ chế liên lạc/trao đổi thông tin giữa các tác vụ
• Phát hiện/chỉnh sửa lỗi
• …
Giao tiếp giữa các chương trình ứng dụng và HĐH được thực
hiện phần lớn thông qua các lời gọi hệ thống (System Call)
Trang 11Kiến trúc của Hệ điều hành
• Kiến trúc đơn giản
• Kiến trúc phân lớp
• Kiến trúc máy ảo
• Kiến trúc Modules
Trang 12Kiến trúc đơn giản
MS-DOS
nhiệm vụ quản lý khá đơn giản và cung cấp thêm một số dịch vụ.
dùng vẫn có thể truy cập trực tiếp phần cứng thông qua BIOS, cổng phần cứng
Trang 13Kiến trúc phân lớp
nhiều lớp.Mỗi lớp phụ trách 1 chức năng đặc thù.
chức năng do các lớp bên dưới cung cấp.
lượng lớp, thứ tự lớp.
số xuyên các lớp
Trang 14Kiến trúc máy ảo (1/4)
• Do mục tiêu của HĐH là chạy được nhiều chương trình đồng thời trên một máy tính nên cách tốt nhất là tạo ra nhiều
máy tính ảo từ một máy tính thật để các chương trình chạy riêng trên các máy ảo.
• Về nguyên tắc các chương trình không biết mình đang chạy trên máy ảo, cũng không biết mình đang phải chia sẻ tài
nguyên với các chương trình khác Ví dụ:
– CPU ảo: mỗi chương trình sở hữu một CPU ảo
– Bộ nhớ ảo: mỗi chương trình một không gian nhớ riêng
Trang 15Kiến trúc máy ảo (2/4)
Trang 17Kiến trúc máy ảo (4/4)
• Ưu điểm:
– Môi trường thuận lợi cho sự tương thích
– Tăng tính an toàn cho hệ thống do các VM độc lập – Dễ phát triển các HĐH đơn nhiệm cho các VM
độc lập.
• Khuyết điểm
– Phức tạp trong việc giả lập.
Trang 18Kiến trúc modules
18
Core Solaris kernel
Executabl
e formats
Loadable system calls
File systems
Ví dụ kiến trúc của HĐH Solaris
Trang 20Lịch sử HĐH - 1
• Thế hệ thứ 1: (1945-1955)
– Vacuum tube: Xây dựng máy tính dùng ống chân không Những máy này rất lớn với hơn 10000 ống chân không nhưng chậm hơn nhiều so với máy rẽ nhất hiện nay.– Plug board : Lập trình bằng ngôn ngữ máy tuyệt đối, thường là dùng bảng điều khiển để thực hiện cách chức năng cơ bản
– Tại 1 thời điểm: 1 công việc
Trang 21Lịch sử HĐH - 2
– Batch system: Hệ thống xử lý theo lô ra đời ,lưu các yêu cầu cần thực hiện lên băng từ và hệ thống sẽ đọc và thi hành lần lược Ngôn ngữ sử dung trong giai đoạn này chủ yếu là FORTRAN và hợp ngữ
– Sử dụng cơ chế spooling:
+ Spool(simultaneous peripheral operation on-line) đồng bộ hóa các thao tác bên ngoài on-line Cơ chế này cho phép xử lý của CPU là on-line, sử dụng đĩa để lưu các dữ liệu nhập cũng như xuất
– Sử dụng CPU tốt hơn, nhưng vẫn thực thi 1 công việc tại 1 thời điểm
Trang 22Lịch sử HĐH - 3
• Thế hệ thứ 3:
– Integrated circuits (ICs): Máy IBM 360 la máy tính đầu tiên sử dụng mạch tích hợp.– Đa nhiệm (multiprogramming): CPU không phải chờ thực hiện các thao tác nhập xuất Bộ nhớ được chia làm nhiều phần, mỗi phần có một công việc khác nhau, khi một công việc chờ thực hiện nhập xuất CPU sẽ xử lý các công việc còn lại
– Chia sẻ thời gian: thực thi nhiều công việc cùng 1 lúc
Trang 23Lịch sử HĐH - 3
• Một số loại HĐH hiện đại
– Mainframe: MVS
– Server: Solaris, FreeBSD
– Multiprocessor: Cellular IRIX
Trang 25Một số hệ điều hành hiện
đại
• Windows
• Unix/Linux
Trang 26• Phát triển bởi Microsoft.
• Hiện đang chiếm 80% 90% thị trường HĐH.
Trang 28• Windows NT
– Phát hành 07/1993
– Hỗ trợ chíp Intel 386, 486 và các chíp khác không của Pentium
– Là hệ điều hành dòng server đầu tiên
– Là HĐH đầu tiên hỗ trợ các ỨD 32 bits
Trang 29– Hỗ trợ tính đa xử lý đối xứng : 2-32 CPU.
– Hỗ trợ đầy đủ tính năng đa ngôn ngữ (UNICODE)
– Tính hợp đầy đủ các chồng giao thức mạng thông dụng
– Thuộc dòng HĐH server chuyên dụng.
– Các dòng sản phẩm: Windows 2000 Professional, Windows 2000
Trang 30• Windows server 2003
– Phát hành 4/2003
– Hiệu năng (performance) của các dịch vụ nhanh hơn Win2k
– Phiên bản: web, standard, enterprise, datacenter, small business server, storage server
• Windows Vista
– Phát hành: 11/2006
– Hỗ trợ về giao diện và multimedia
– Phiên bản: Home Basic, Home Premium, Business, Enterprise, Ultimate
Trang 31• Là HĐH mã nguồn mở
• Linux là HĐH tương tự Unix.
• Bao gồm khoảng 6 triệu dòng mã.
• Tăng trưởng khoảng 25%/năm từ năm 2003
• Chiếm khoảng 10% thị trường HĐH.
Trang 32– 8086 mode (DOS emulation) included
– Support other architecture: Sparc, Alpha, MIPS
32