www.chiasethongtin.org
1
1/38
Information technology faculty of Saigon University
NGUYỄN THÀNH SƠN
Chương 5
TIẾN TRÌNH
(2 tiết)
2/38
Information technology faculty of Saigon University
NGUYỄN THÀNH SƠN
Nội dung
I. Định nghĩa
II. Phân loại
III. Các khái niệm cơ bản
IV. Lập lịch
V. Dịch vụ in ấn trong Linux
3/38
Information technology faculty of Saigon University
NGUYỄN THÀNH SƠN
I. Định nghĩa
Định nghĩa
Đặc điểm
• Một tiến trình nhiều tiến trình
• Tiến trình cha tiến trình con
• Dừng tiến trình cha?
Tiến trình ≠ Chương trình
Tiến trình ≠ Lệnh
4/38
Information technology faculty of Saigon University
NGUYỄN THÀNH SƠN
II. Phân loại
Tiến trình tương tác (Interactive process)
• Tiến trình tiền cảnh (foreground)
• Tiến trình hậu cảnh (background)
Tiến trình bó (Batch process)
Tiến trình nền (Daemon process)
www.chiasethongtin.org
2
5/38
Information technology faculty of Saigon University
NGUYỄN THÀNH SƠN
III. Các khái niệm cơ bản
Số PID:
• Khái niệm: định danh
• Số để phân biệt tiến trình
• Giá trị
• Quản lý các tiến trình
• Tiến trình khởi đầu
6/38
Information technology faculty of Saigon University
NGUYỄN THÀNH SƠN
III. Các khái niệm cơ bản (tt1)
Tiến trình tiền cảnh (foreground)
• Khái niệm: đối thoại
• Khi thực hiện lệnh: không xuất hiện dấu nhắc
hoàn tất chương trình.
• Không có chương trình hay lệnh nào khác
được thực hiện.
• Ví dụ: #ls –R /
7/38
Information technology faculty of Saigon University
NGUYỄN THÀNH SƠN
III. Các khái niệm cơ bản (tt2)
Tiến trình hậu cảnh (background)
• Không tương tác trực tiếp
• Chiếm nhiều thời gian
• Shell trả ngay dấu nhắc
• Dịch vụ chạy trong chế độ hậu cảnh.
• Mặc định, tiến tiến trình triệu gọi từ người dùng ->
tiền cảnh.
• Chuyển sang hậu cảnh: dấu “&”
• Ví dụ:
#ls -R / > thumuc &
• Thông báo hoàn tất:
[1] Done ls -R / > thumuc
8/38
Information technology faculty of Saigon University
NGUYỄN THÀNH SƠN
IV. Quản lý tiến trình
Xem thông tin tiến trình
Tạm dừng tiến trình
Đánh thức tiến trình
Chuyển tiến trình hậu cảnh tiền cảnh
Hủy tiến trình
www.chiasethongtin.org
3
9/38
Information technology faculty of Saigon University
NGUYỄN THÀNH SƠN
1. Xem thông tin tiến trình
Xem thông tin tiến trình tiền cảnh
• Cú pháp: ps [tùy_chọn]
• Các tùy chọn thường dùng:
+ -a: tất cả
+ -f: đầy đủ
Ví dụ: #ps –af
root 1234 1232 May 19 tty1 S 00:00:01 ps – af
+ -ax: tất cả, kể cả tiến trình không được gọi từ tty
+ -axl: tất cả tiến trình và lệnh khởi chạy
10/38
Information technology faculty of Saigon University
NGUYỄN THÀNH SƠN
1. Xem thông tin tiến trình
Xem cây tiến trình: #pstree -np
Xem thông tin các tiến trình hậu cảnh
• Cú pháp: #jobs
• Ví dụ: #jobs
[1] + Running #ls -R / > thumuc
11/38
Information technology faculty of Saigon University
NGUYỄN THÀNH SƠN
2. Tạm dừng tiến trình
Nguyên nhân tạm dừng
Thực hiện tạm dừng
Hệ thống thông báo dừng tiến trình và chuyển
sang hậu cảnh
Ví dụ:#ls -R /
^Z
[1] + Stopped ls -R /
#ps –af
root 1228 1224 May 19 tty1 00:00:00 ls –R /
root 1234 1232 May 19 tty1 00:00:00 ps - af
#jobs
[1] + Stopped ls -R /
12/38
Information technology faculty of Saigon University
NGUYỄN THÀNH SƠN
3. Đánh thức tiến trình
Tiến trình tạm dừng hậu cảnh.
Đánh thức: chạy tiếp tục
Cú pháp: #bg [số_thứ_tự]
Ví dụ: #bg 1
ls -R / >thumuc
#jobs
[1] + Running ls -R / > thumuc
Lưu
ý: Xác định số_thứ_tự
+ Xác định nhờ jobs
+ Xác định nhờ tên
www.chiasethongtin.org
4
13/38
Information technology faculty of Saigon University
NGUYỄN THÀNH SƠN
4. Chuyển tiến trình từ hậu cảnh
sang tiền cảnh
Cú pháp: #fg [số_thứ_tự]
Ví dụ: #fg 1
ls -R / >thumuc
Dấu nhắc của Shell?
14/38
Information technology faculty of Saigon University
NGUYỄN THÀNH SƠN
5. Hủy tiến trình
Lý do hủy?
Cú pháp: #kill [tùy_chọn] [PID]
Thường dùng lệnh : #ps –a để xác định số
PID của tiến trình
Lưu
ý:
• Tiến trình cha bị hủy, tiến trình con?
• Ai được hủy tiến trình?
• Hủy tiến trình có độ ưu tiên cao?
Ví dụ: #kill -9 12345
15/38
Information technology faculty of Saigon University
NGUYỄN THÀNH SƠN
V. Lập lịch
1. Lệnh at
2. Lệnh batch
3. Tiện ích cron
4. Tiện ích crontab
16/38
Information technology faculty of Saigon University
NGUYỄN THÀNH SƠN
1. Lệnh at
Công dụng
Cú pháp: #at [thời_gian] <Enter>
• [lệnh1]
• [lệnh2]
• …
• <Ctrl + D>
Định dạng thời_gian:
• HH:MM [AM/PM]
• MMDDYY hoặc MM/DD/YY hoặc MM.DD.YY
• now + số [mins/days/hours/weeks]
Ví dụ: #at 00:30 <Enter>
/etc/init.d/openmail restart
<Ctrl+D>
job 190575 at Mon May 19 00:30:00
www.chiasethongtin.org
5
17/38
Information technology faculty of Saigon University
NGUYỄN THÀNH SƠN
1. Lệnh at (tt)
Lưu
ý:
• Chuyển hướng: Ví dụ: #at 23:45 < côngviệc
• Kiểm tra: #at –l hay #atq
• Tập tin /etc/at.allow và /etc/at.deny
• Nếu tập tin at.allow tồn tại?
• Nếu at.allow không tồn tại?
Xóa lịch
• Cú pháp: #atrm [định_danh_công_việc]
• Ví dụ: # atrm 190575
18/38
Information technology faculty of Saigon University
NGUYỄN THÀNH SƠN
2. Lệnh batch
Đặc điểm của batch: liên quan mức tải của
hệ thống
Cú pháp: #batch [thời_gian] <Enter>
Ví dụ: #batch <Enter>
echo “In báo cáo”
cat /usr/comm/report > báocáo | lp
<Enter>
Ctrl+D
Tập tin /etc/at.allow và /etc/at.deny
19/38
Information technology faculty of Saigon University
NGUYỄN THÀNH SƠN
3. Tiện ích cron
Khác nhau giữa at, batch và cron, crontab
Tiện ích cron (crond) được kích hoạt ngay khi hệ thống
khởi động.
Hoạt động:
• cron xem có các tiến trình trong hàng đợi nhập vào bởi lệnh at
• Xem xét các tập tin crontabs: có các tiến trình cần phải thực hiện
hay không rồi “đi ngủ”.
• Mỗi phút “thức dậy” mỗi phút
Định dạng record:
Phút Giờ Ngày Tháng Ngày_của_tuần Lệnh
45 23 * * 1 cmdx
Mọi người dùng
20/38
Information technology faculty of Saigon University
NGUYỄN THÀNH SƠN
4. Tiện ích crontab
Dành cho root
Tập tin /var/spool/cron/tên_người_dùng
Cú pháp: $crontab –U [user] {-e | -l | -r}
Các tùy chọn:
-e: chỉnh sửa crontab của người dùng
-l: liệt kê crontab của người dùng
-r: xóa crontab của người dùng
Quyền sử dụng: /etc/cron.allow và
/etc/cron.deny