Bài giảng Hệ điều hành mã nguồn mở - Chương 6: Quản lý tiến trình – tài nguyên - Lương Minh Huấn

TRƯỜNG ĐẠI HỌC SÀI GÒN  
CHƯƠNG 6: QUẢN LÝ  
TIẾN TRÌNH – TÀI NGUYÊN  
GV: LƯƠNG MINH HUẤN  
NỘI DUNG  
Định nghĩa tiến trình  
Quản lý tiến trình  
. Lập lịch  
.Quản lý tài nguyên với Quota  
I. ĐỊNH NGHĨA TIẾN TRÌNH  
Tiến trình là một thực thể điều khiển đoạn mã lệnh cho chư  
rình hay dịch vụ trong hệ thống.  
Một tiến trình bao gồm:Thành phần văn bản (mã của chư  
rình), thành phần dữ liệu (những biến toàn cục)  
Mỗi tiến trình mang một định danh gọi là PID (Pro  
Identification). Process ID là một con số lớn hơn 0 và là duy n  
Hệ thống dựa vào các PID này để quản lý các tiến trình.  
Một tiến trình khi thực hiện nếu sinh ra nhiều tiến trình con  
được gọi là tiến trình cha (parent process).  
Khi tiến trình cha bị dừng thì tất cả tiến trình con cũng sẽ bị dừ  
I. ĐỊNH NGHĨA TIẾN TRÌNH  
Số trong dấu () là PID của tiến trình  
I. ĐỊNH NGHĨA TIẾN TRÌNH  
Có ba loại tiến trình chính trên Linux:  
. Tiến trình tương tác (Interactive processes): là tiến trình khởi động và quản lý bởi shell  
. Tiến trình thực hiện theo lô (Batch processes): là tiến trình không nằm ở terminal mà  
hàng đợi để lần lượt thực hiện.  
. Tiến trình ẩn trên bộ nhớ (Daemon processes): là tiến trình nằm ẩn dưới hệ thống. C  
trình thường khởi tạo lúc khởi động một cách tự động. Đa số các chương trình serve  
dưới hình thức này. Các chương trình loại này được gọi là chương trình daemond và t  
nó thường được kết thúc bằng chữ “d”. Ví dụ: named,..  
I. ĐỊNH NGHĨA TIẾN TRÌNH  
Các trạng thái của tiến trình:  
. Running: các lệnh của tiến trình đang được thực hiện  
. Sleeping: tiến trình có trong bộ nhớ nhưng không làm gì cả  
. Uninterruptable Sleep: tiến trình đang chờ đợi tài nguyên  
. Terminated: sự thực thi của tiến trình kết thúc  
. Zombie: tiến trình dừng nhưng chưa kết thúc hẳn vì còn đang ch  
phản hồi của tiến trình cha  
Chỉ có một tiến trình ở trạng thái running tại một thời điểm  
Có thể có nhiều tiến trình ở trạng thái sleeping  
I. ĐỊNH NGHĨA TIẾN TRÌNH  
ẾN TRÌNH TIỀN CẢNH  
Khi thực hiện một chương trình từ dấu đợi lệnh ($ hoặc #), chư  
rình sẽ thực hiện và hệ thống không xuất hiện dấu đợi lệnh  
đến khi thực hiện xong chương trình.  
Do đó, chúng ta không thể thực hiện các công việc khác trong  
chương trình này đang thực hiện.  
Ví dụ:  
#find / -name pro -print  
#find / -name pro -print > timkiem.txt  
I. ĐỊNH NGHĨA TIẾN TRÌNH  
ẾN TRÌNH HẬU CẢNH  
Là tiến trình sinh ra độc lập với tiến trình cha. Khi thực hiện  
trình hậu cảnh, chúng ta vẫn có thể thực hiệc các công việc khá  
Để tiến trình chạy dưới chế độ hậu cảnh, chúng ta thêm dấu &  
sau lệnh.  
Ví dụ:  
#find / -name pro -print > ketqua.txt &  
I. ĐỊNH NGHĨA TIẾN TRÌNH  
Chúng ta có thể kiểm tra chương trình này có hoạt động kh  
bằng lệnh: #ps -aux | grep find  
Đơn giản hơn, chúng ta dùng lệnh #jobs để xem các tiến trình đ  
có ở hậu cảnh.  
[1] + Running find / -name pro –print > results.txt &  
[1] Done find / -name pro –print  
Việc cho phép các tiến trình chạy hậu cảnh giúp chúng ta cho p  
nhiều tiến trình hoạt động đồng thời.  
I. ĐỊNH NGHĨA TIẾN TRÌNH  
số khái niệm khác:  
n hiệu (signal)  
Là những thông điệp đơn giản được sử dụng để thông báo cho tiến  
rình về một sự kiện nào đó xảy ra mà không cần sự tác động của u  
Tín hiệu được sử dụng thông qua tên hay số thứ tự, vd:  
• Signal 15, TERM: terminal cleanly  
• Signal 9, KILL: terminal immediately  
• Signal 1, HUP: Re-read configuration file  
Xem tất cả các tín hiệu: man 7 signal  
I. ĐỊNH NGHĨA TIẾN TRÌNH  
Thứ tự ưu tiên (Scheduling Priority)  
. Quy định trình tự tiến trình được CPU xử lý  
. Được gán thông qua giá trị: nice  
. Giá trị nice chạy từ -20 đến 19, mặc định là 0  
. Giá trị nice càng nhỏ thì độ ưu tiên của tiến trình càng cao.  
II. QUẢN LÝ TIẾN TRÌNH  
Xem thông tin tiến trình  
Tìm kiếm tiến trình  
Tạm dừng tiến trình  
Đánh thức tiến trình  
Hủy tiến trình  
Định độ ưu tiên cho tiến trình  
Lệnh khác  
I.1 XEM THÔNG TIN TIẾN TRÌNH  
Ta có thể kiểm tra các tiến trình đang chạy bằng câu lện  
(process status). Lệnh ps có nhiều tùy chọn và phụ thuộc vào  
đăng nhập.  
Cú pháp: #ps <tùy chọn> <tham số>  
Một số tùy chọn  
-ux: hiển thị tất cả các tiến trình mà user kích hoạt  
-T : xem tiến trình được chạy tại terminal hiện tại của user  
-aux : xem tất cả các tiến trình trong hệ thống  
-u username : xem tất cả các tiến trình của user nào đó  
I.1 XEM THÔNG TIN TIẾN TRÌNH  
. Ví dụ: Lệnh #ps  
PID TTY STAT TIME COMMAND  
41 v01S 0:00 –bash  
134 v01 R 0:00 ps  
I.2 TÌM KIẾM TIẾN TRÌNH  
Lệnh pgrep: lệnh này cho phép tìm PID của một tiến trình hệ  
hống.  
. Ví dụ: tìm PID của firefox: pgrep firefox  
II.3 TẠM DỪNG TIẾN TRÌNH  
Đưa tiến trình đang chạy vào hậu cảnh bằng dấu &  
Xem tiến trình trong hậu cảnh bằng lệnh: #jobs  
[1] + Stopped find / -name pro –print > results.txt  
Lệnh bg: dùng thi hành tiến trình trong hậu cảnh  
Cú pháp: #bg <số thứ tự tiến trình>  
#bg 1  
#find / -name pro –print > results.txt  
#jobs  
[1] + Running find / -name pro –print > results.txt  
II.3 TẠM DỪNG TIẾN TRÌNH  
II.3 TẠM DỪNG TIẾN TRÌNH  
Ta cũng có thể dùng lệnh service:  
Cú pháp: service process_name stop  
VD: service httpd stop  
II.4 ĐÁNH THỨC TIẾN TRÌNH  
Lệnh fg: dùng để đưa một tiến trình từ hậu cảnh sang tiền cảnh  
Cú pháp: #fg <số thứ tự tiến trình>  
Ngoài ra, ta cũng có thể dùng lệnh service:  
Cú pháp: service process_name start  
VD: service httpd start  
II.5 HỦY TIẾN TRÌNH  
ệnh kill: dùng để hủy một tiến trình  
Cú pháp: #kill -9 <PID tiến trình>  
-9 : tính hiệu dừng tiến trình không điều kiện.  
ý: Chỉ có người dùng root mới có quyền dừng tất cả các tiến trình  
những người dùng khác chỉ được dừng các tiến trình do mình tạo ra  
ằng PID: kill [signal] PID  
VD: kill -9 3428  
ằng tên: pkill [signal] comm  
VD: kill -TERM cupsd  
Tải về để xem bản đầy đủ
pdf 41 trang yennguyen 16120 Free
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Hệ điều hành mã nguồn mở - Chương 6: Quản lý tiến trình – tài nguyên - Lương Minh Huấn", để 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:

  • pdfbai_giang_he_dieu_hanh_ma_nguon_mo_chuong_6_quan_ly_tien_tri.pdf