You are on page 1of 42

7.

3 COMPONENTS
TEAM 3
OVERROUND

- Có 4 nhiệm vụ chính cần quản lý:


1. Memory manager | 2. Process manager | 3. Device manager | 4. File manager
- User interface KHÔNG cố định ở bất cứ thành phần nào.
7.3.1 USER INTERFACE – GIAO DIỆN NGƯỜI DÙNG

• Là nơi con người tương tác với


máy tính trong một thiết bị.
• Chấp nhận các yêu cầu của
người dùng -> thông dịch cho
phần còn lại của hệ điều hành.
• Một số loại giao diện người
dùng: GUI (graphical user
interface), …
• Cung cấp các cách phân bổ các
phần bộ nhớ cho các chương
trình theo yêu cầu của chúng
và giải phóng nó để sử dụng lại
khi không còn cần thiết
• 2 Loại quản lý bộ nhớ:
1. Monoprogramming
2. Multiprogramming

7.3.2 MEMORY MANAGER – QUẢN LÝ BỘ NHỚ


7.3.2 MEMORY MANAGER – QUẢN LÝ BỘ NHỚ
Monoprogramming

• Phần lớn dung lượng là cho một single


program chạy, còn lại là Operating system.
• Tải chương trình vào bộ nhớ -> chạy nó đến
khi kết thúc -> thay thế nó bằng chương
trình tiếp theo
7.3.2 MEMORY MANAGER – QUẢN LÝ BỘ NHỚ
Monoprogramming

• Dung lượng của bộ nhớ nhỏ hơn dung lượng


Chiếm bộ nhớ
của chương trình, chương trình sẽ không chạy.

• Không thể chạy nhiều chương trình trong cùng


1 thời điểm. Tốn nhiều thời gian để chạy nhiều
chương trình.
Chạy Single • Không tận dụng được hết sức mạng phần cứng,
đặc biệt là CPU <Khi lấy dữ liệu từ I/O, nó sẽ
chậm hơn CPU nên CPU sẽ không làm việc
trong thời gian đấy>
7.3.2 MEMORY MANAGER – QUẢN LÝ BỘ NHỚ
Multiprogramming

• Có thể chạy nhiều chương trình một lúc, tối


đa hóa hiệu năng phần cứng.
• Trong multiprogramming có 4 kĩ thuật
thuộc 2 loại là Nonswapping và Swapping
7.3.2 MEMORY MANAGER – QUẢN LÝ BỘ NHỚ
Multiprogramming - Nonswapping - Partitioning

• Bộ nhớ được chia làm các vùng, mỗi


vùng chứa một chương trình.
• CPU có thể chuyển đổi giữa các
chương trình.
• CPU chạy trong 1 program cho đến khi
gặp thao tác I/O hoặc hết thời gian
phân bổ -> Đánh dấu vị trí -> chuyển
program tiếp theo.
7.3.2 MEMORY MANAGER – QUẢN LÝ BỘ NHỚ
Multiprogramming - Nonswapping - Partitioning

• Đã cải thiện hiệu năng CPU


• Vấn đề:
1. Kích thước của các phân vùng phải
được xác định trước bởi trình quản
lý bộ nhớ.
2. Ngay cả khi việc phân vùng hoàn
hảo, vẫn có thể có một số lỗ hổng
khi chương trình hoàn thành được
thay thế bằng chương trình mới ->
hệ thống nén các vùng để loại bỏ lỗ
hổng -> vấn đề số 3.
3. Hệ thống hoạt động nhiều hơn.
7.3.2 MEMORY MANAGER – QUẢN LÝ BỘ NHỚ
Multiprogramming - Nonswapping - Paging

• Bô nhớ được chia thành các Frame,


Program được chia thành các Page,
Page và Frame thường có kích thước
bằng nhau.
-> Các page liền kề trong 1 program
không phải tiếp giáp trong bộ nhớ.
• Ưu điểm: Chương trình mới không cần
phải đợi cho đến đủ số lượng Frame liền
kề trống trước khi được tải vào bộ nhớ.
• Nhược điểm: Toàn bộ chương trình vẫn
cần nằm trong bộ nhớ trước khi được
thực thi.
• Bô nhớ được chia thành các Frame,
Program được chia thành các Page,
Page và Frame thường có kích thước
bằng nhau.
• Các Page có thể được tải lần lượt vào
bộ nhớ, được thực thi và được thay
thế bằng một Page khác.
• Các Page liên tiếp từ cùng một
Program không phải được tải vào cùng
một khung.

7.3.2 MEMORY MANAGER – QUẢN LÝ BỘ NHỚ


Multiprogramming - swapping – Demand paging
• Chương trình được chia thành các
phân đoạn phù hợp với quan điểm của
lập trình viên.
• Các phân đoạn của chương trình đã
được chia sẽ được chuyển vào các
Segment trong bộ nhớ để thực thi và
thay thế bằng phân đoạn chương trình
khác khi hoàn thành.
• Vì các phân đoạn trong bộ nhớ có kích
thước bằng nhau nên một phần của
phân đoạn có thể vẫn trống.

7.3.2 MEMORY MANAGER – QUẢN LÝ BỘ NHỚ


Multiprogramming - swapping – Demand segmentation
• Các Segment có thể được chia thành
các frame, và một phân đoạn chương
trình có thể được chia thành các
trang.
• Các Page của một phân đoạn chương
trình được tải lần lượt vào bộ nhớ và
thực thi.

7.3.2 MEMORY MANAGER – QUẢN LÝ BỘ NHỚ


Multiprogramming – Demand paging and segmentation
7.3.2 MEMORY MANAGER – QUẢN LÝ BỘ NHỚ
Virtual memory

• Là một kỹ thuật quản lý bộ nhớ


• Khi một chương trình đang được thực
thi, một phần của chương trình nằm
trong bộ nhớ và một phần nằm trên
đĩa.
PROCESS MANAGER
• Program :
- Chương trình là một tập hợp các hướng dẫn không hoạt động được lưu trữ trên đĩa
• Job : 
- Một chương trình trở thành một công việc kể từ thời điểm nó được chọn để thực thi
 cho đến khi nó chạy xong và quay trở lại thành một chương trình.
• Process :
- Tiến trình là một chương trình đang được thực thi . Nó là một chương trình đã bắt đầu
 nhưng vẫn chưa kết thúc .
Các trạng thái tiến trình
 Hold : Nơi lưu giữ các công việc
 Ready : Tiến trình ở trạng thái sẵn sàng ,được phân
 phối đủ tài nguyên cần thiết , đang chờ đến lượt được
 thực hiện theo cơ chế lập dịch của hệ điều hành.
 Running : Tiến trình đang chiếm hiễm CPU & thực
  hiện các lệnh.
 Waiting : Tiến trình đang được cung cấp tài nguyên
  để chuyển sang trạng thái sẵn sàng.
 Terminated : Tiến trình kết thúc.
Schedulers

• Để di chuyển một công việc hoặc quy trình từ trạng thái này
 sang trạng thái khác, trình quản lý quy trình sẽ sử dụng hai bộ
 lập lịch:
- Bộ lập lịch công việc.
- Bộ lập lịch quy trình.
Job schedulers
• Tạo ra quy trình từ công việc và kết thúc công việc đó
Process schedulers
• Di chuyển một quy trình từ trạng thái này sang trạng thái khác
Queuing 
• Trình quản lý quy trình sử dụng hàng chờ để xử lý nhiều quy trình hoặc
công việc
• Hàng chờ công việc ( đang đợi bộ nhớ )
• Hàng đợi Ready (đang đợi CPU thực thi )
• Hàng chờ I/O ( đang đợi thiết bị I/O )
Process synchronization

Quản lý quy trình là đồng bộ hóa các quy trình khác nhau với
• các tài nguyên khác nhau.

• Deadlock  xảy ra nếu hệ điều hành cho phép một quy trình bắt đầu chạy mà
không kiểm tra trước để xem các tài nguyên cần thiết đã sẵn sàng chưa và cho
phép một quy trình giữ tài nguyên bao lâu nó muốn. 
•  Deadlock có thể xảy ra khi các điều kiện sau đây xảy ra đồng thời.
- Mutual exclusion:Chỉ một tiến trình có thể sử dụng tài nguyên tại một thời điểm.
- Hold and Wait: Một tiến trình chứa ít nhất một tài nguyên đang chờ để có được tài nguyên bổ sung
do các tiến trình khác nắm giữ.
- No preemption: Không thể lấy một tài nguyên từ một tiến trình trừ khi tiến trình đó giải phóng tài
nguyên .
- Circular wait: Một tập hợp các quy trình đang chờ nhau ở dạng vòng tròn. 
Starvation

• Starvation xảy ra khi hệ điều hành đặt quá nhiều hạn chế về tài nguyên trên một
quy trình.
COMPONENTS
Device manager
• Device Manager hay còn gọi là trình quản lý thiết bị đơn giản là một
Control Panel applet trong hệ điều hành Microsoft Windows.
• Đồng thời, trường hợp có phần cứng xảy ra lỗi, Device Manager sẽ
chỉ ra bộ phận nào không hoạt động giúp cho việc phát hiện sửa lỗi
và quản lý phần cứng trở nên thuận tiện hơn rất nhiều.
Một số tính
năng của
Device Manager
1. Hiển thị danh sách các thiết bị phần cứng

Device Manager giúp bạn nhìn thấy danh


sách các thiết bị phần cứng kết nối với máy
tính và đã được Windows nhận diện.
2. Phát hiện thiết bị phần cứng không hoạt động

- Đối với các thiết bị có


dấu hiệu bị lỗi hoặc
không làm việc
3. Vô hiệu hóa một thiết bị phần
cứng

Device Manager còn có thể tắt một số


thiết bị phần cứng không còn dùng đến
như là webcam hay touchpad…
4. Xem id của phần cứng để tìm trình điều khiển

- Khi hệ điều hành không tự nhận dạng được thiết, trình quản lý thiết bị sẽ hiển thị là unknown device
(thiết bị chưa biết) lúc này người sử dụng rất khó có thể biết được thiết bị của mình của hãng nào, dòng
nào để tự tìm trình điều khiển thích hợp. có thể dùng trình điều khiển thiết bị lấy số id của phần cứng rồi
tìm các thông tin liên quan trên các máy tìm kiếm internet.
File manager
File Manager (Quản lý Tập tin) là một chương
trình quản lý tập tin đi kèm theo các phiên bản
Microsoft Windows từ năm 1990, cho tới năm
1999.
File manager
Phiên bản File Manager của Windows NT cho
phép người dùng thay đổi thư mục, tệp tin,
mạng cục bộ, và quyền người dùng.
KHẢO SÁT HỆ
ĐIỀU HÀNH
-Trong phần này, chúng tôi giới thiệu một số hệ điều hành phổ biến và khuyến khích bạn nghiên
cứu thêm về chúng. Chúng tôi đã chọn ba hệ điều hành quen thuộc với hầu hết người dùng máy
tính: UNIX, Linux và Windows
Unix
-Hệ điều hành UNIX ban đầu được phát triển vào năm 1969 bởi
Thomson và Ritchie của Nhóm Nghiên cứu Khoa học Máy tính
tại Phòng thí nghiệm Bell

-Unix là hệ điều hành đa người dùng, đa xử lý, di động


và đa tác vụ mạnh mẽ và phổ biến nhất
Kiến Trúc của Unix
-UNIX bao gồm bốn thành phần chính: nhân kernel, hệ thống dịch shell, tiện ích tiêu chuẩn và chương
trình ứng dụng.

Hệ thống dịch lệnh


(Shell)

Kernel

Các ứng dụng và lớp


tiện ích
Linux
-Linux là tên gọi của một hệ điều hành máy tính và hệ điều
hành linux là một phần mềm máy tính phức tạp để giúp người
sử dụng có thể tương tác và điều khiển những phần cứng máy
tính và các phần mềm chạy trên đó.

-Phiên bản Linux đầu tiên do Linus Torvalds viết


vào năm 1991, lúc ông còn là một sinh viên của
Đại học Helsinki tại Phần Lan
Linux có 3 thành phần chính:

Kernel
Thư viện hệ
thống

Các tiện ích hệ


thống
Window
-Microsoft giới thiệu một môi trường điều hành có tên là Windows vào cuối năm 1980 như
một giao diện hệ điều hành đồ hoạ cho MS-DOS để đáp ứng với sự quan tâm ngày càng tăng
với các giao diện người dùng đồ hoạ (GUI)
Kiến Trúc của Window
Thank you!

You might also like