Tải bản đầy đủ (.pdf) (6 trang)

Bài giảng hệ điều hành : QUẢN LÝ TIẾN TRÌNH part 1 pot

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (89.2 KB, 6 trang )

1
Bài 3 : QUẢN LÝ TIẾN TRÌNH
 Phân chia CPU cho các tiến trình ?
 Tiếp cận
 Mục tiêu ?
 Tổ chức ?
 Chiến lược ?
 Trạng thái tiến trình ?
 Lưu trữ thông tin tiến trình ?
 Các thao tác trên tiến trình ?
 Bảo vệ tiến trình ?
 Trao đổi thông tin giữa các tiến trình ?
2
Phân chia CPU ?
 1 CPU vật lý : làm
thế nào để tạo ảo
giác mỗi tiến trình sở
hữu CPU riêng của
mình ?
 Dispatcher luân
chuyển CPU giữa các
tiến trình:
 Ngữ cảnh xử lý riêng
biệt cho mỗi tiến
trình (PCB)
Dispatching
loop
:
CPU
while(1)
{


interrupt P
cur
save state P
cur
Scheduler gets P
next
load state P
next
jump to it
}
3
Trạng thái tiến trình ?
ready
 R
s
 CPU
running
 R
s

CPU
blocked
 R
s
 CPU
Nhận CPU
Trả CPU
Chờ R
Nhận R
4

Khoỏi quaỷn lyự tieỏn trỡnh trong moõ hỡnh
multiprocesses
pid
State
(State, details)
Context
(IP, Mem, Files)
Scheduling statistic
Relatives
( Dad, children)
Process control Block
PCB
5
PCB vaø TCB trong moâ hình multithreads
pid
Threads list
Context
(Mem, global
ressources…)
Scheduling statistic
Relatives
( Dad, children)
PCB
tid
State
(State, details)
Context
(IP, local stack…)
Thread Control Block
TCB

6
Các thao tác trên tiến trình
 Tạo lập tiến trình :
 Cấp phát tài nguyên cho tiến trình con ?
 Hoạt động của cha và con độc lập
 Kết thúc tiến trình :
 Thu hồi tài nguyên ?
 p buộc kết thúc ?
 Thay đổi trạng thái tiến trình :
Assign(), Block(), Awake(), Resume(),
Suspend()

×