Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 26 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
26
Dung lượng
98,8 KB
Nội dung
Quản lýtiếntrình Chương trình ñào tạo Việt Nhật & Khoa Công nghệ Thông tin Giới thiệu M ộ t ti ế n trình = m ộ t s ự th ự c thi c ủ a m ộ t ch ươ ng trình M ỗ i ti ế n trình s ẽ t ươ ng ứ ng v ớ i m ộ t t ậ p các thông tin sau: Một ñịnh danh (pid) Một tiếntrình cha (ppid) Người sở hữu (uid) và nhóm (gid) Một ñầu vào chuẩn (stdin), một ñầu ra chuẩn (stdout), một kênh báo lỗi chuẩn (stderr) Thời gian sử dụng CPU (CPU time) và mức ñộ ưu tiên Thư mục hoạt ñộng hiện tại của tiếntrình Bảng các tham chiếu ñến các file ñược tiếntrình sử dụng. Các ti ế n trình ñượ c s ắ p x ế p ñể chia s ẻ th ờ i gian s ử d ụ ng CPU Các kiểu tiếntrình (1) Các tiếntrình hệ thống Th ườ ng thu ộ c v ề quy ề n root Không có giao di ệ n tươ ng tác Th ườ ng ñượ c ch ạ y d ướ i d ạ ng các ti ế n trình ng ầ m (daemon) ðả m nhi ệ m các nhi ệ m v ụ chung, ph ụ c v ụ m ọ i ng ườ i s ử d ụ ng. Ví d ụ : lpsched: Quảnlý các dịch vụ in ấn cron: tự ñộng thực hiện một lệnh/chương trình vào một thời gian xác ñịnh trước. inetd: quảnlý các dịch vụ mạng. Các kiểu tiếntrình (2) Các tiếntrình của người sử dụng Th ự c hi ệ n các nhi ệ m v ụ c ủ a m ộ t ng ườ i dùng c ụ th ể Thực hiện dưới dạng một shell tương ứng với một sự ñăng nhập. Thực hiện dưới dạng một lệnh thông qua shell Th ườ ng ñượ c th ự c hi ệ n, qu ả n lý b ằ ng m ộ t terminal Ví d ụ : cp vi man … Lệnh ps Hi ể n th ị các ti ế n trình Theo ngầm ñịnh, lệnh ps hiển thị các tiếntrình thuộc về người sử dụng terminal. Sử dụng tùy chọn aux ñể hiển thị tất cả các tiếntrình ñang chạy trong máy. $ ps PID TTY TIME CMD 2803 pts/1 00:00:00 bash 2965 pts/1 00:00:00 ps $ ps aux USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 1 0.1 0.1 1104 460 ? S 15:26 0:03 init[3] ttanh 951 0.0 0.3 1728 996 pts/0 S 16:09 0:00 bash ttanh 953 0.0 1.9 6860 4916 pts/0 S 16:09 0:00 emacs ttanh 966 0.0 0.3 2704 1000 pts/0 R 16:23 0:00 ps aux Trạng thái của tiếntrình S : sleeping R : ñang chạy T : dừng Z : zombie Lệnh kill Gửi một tín hiệu ñến một tiếntrình (ñịnh danh của tiếntrình ñược xác ñịnh dưới dạng một tham số của lệnh). Theo ng ầ m ñị nh, tín hi ệ u g ử i ñ i là tín hi ệ u 15 (SIGTERM – k ế t thúc ti ế n trình) Tùy ch ọ n -9: g ử i tín hi ệ u 9 (SIGKILL – h ủ y ti ế n trình) Tùy ch ọ n –l: li ệ t kê t ấ t c ả các tín hi ệ u có th ể s ử d ụ ng. Lệnh killall: dùng ñể kết thúc tất cả các tiếntrình của một câu lệnh thông qua việc truyền tên của câu lệnh dưới dạng một tham số. Quyền hủy tiếntrình thuộc về người sở hữu tiếntrình ðộ ưu tiên của các tiếntrình T ấ t c ả các ti ế n trình ñề u có ñộ ư u tiên ban ñầ u ñượ c ng ầ m ñị nh là 0 M ứ c ñộ ư u tiên c ủ a m ộ t ti ế n trình dao ñộ ng trong kho ả ng t ừ -19 ñế n +19 Chỉ người sử dụng có quyền root mới có thể giảm giá trị biểu diễn ñộ ưu tiên của tiến trình. Một người sử dụng thông thường chỉ có thể làm giảm ñộ ưu tiên của tiếntrình thông qua việc tăng giá trị biểu diễn ñộ ưu tiên. L ệ nh nice cho phép thay ñổ i ñộ ư u tiên c ủ a m ộ t ti ế n trình ngay khi b ắ t ñầ u th ự c hi ệ n l ệ nh tươ ng ứ ng v ớ i ti ế n trình. $ nice [-n Value] [Command [Arguments ]] L ệ nh renice cho phép thay ñổ i ñộ ư u tiên c ủ a m ộ t ti ế n trình sau khi ñ ã ch ạ y. Lệnh top Hiển thị và cập nhật các thông tin sau của các tiếntrình ñang chạy: Ph ầ n tr ă m s ử d ụ ng CPU Ph ầ n tr ă m s ử d ụ ng b ộ nh ớ trong $ top [–d] Tùy ch ọ n –d cho phép xác ñị nh th ờ i gian ñị nh k ỳ c ậ p nh ậ t thông tin (tính theo giây). Lệnh top cho phép người sử dụng tương tác và quảnlý các tiếntrình (thay ñổi ñộ ưu tiên, gửi các tín hiệu, …) Các kiểu thực thi Thực thi nhiều lệnh ñộc lập S ử d ụ ng ký t ự ; ñể th ự c thi nhi ề u l ệ nh liên ti ế p, các l ệ nh này ho ạ t ñộ ng ñộ c l ậ p v ớ i nhau. $cp public/* perso; rm -r public Thực thi nhiều lệnh phụ thuộc nhau S ử d ụ ng ký hi ệ u && ñể th ự c thi nhi ề u l ệ nh liên ti ế p, các l ệ nh này ph ụ thu ộ c nhau, l ệ nh sau ch ỉ ñượ c th ự c hi ệ n n ế u l ệ nh trướ c không g ặ p l ỗ i. $cp public/* perso && rm -r public [...]... (1) Quá trình ch y ch ñ hi n s ti n hành theo nh ng bư c như sau: Th c hi n quá trình « fork », nhân b n ti n trình cha (trong trư ng h p th c thi các l nh, ñó s là ti n trình shell) Th c hi n quá trình « wait », ñưa ti n trình cha vào tr ng thái ng (sleep) Th c hi n quá trình « exec », th c thi ti n trình con Sau khi ti n trình con th c thi xong, m t tín hi u « ñánh th c » s ñư c g i ñ n ti n trình. .. th c thi xong, m t tín hi u « ñánh th c » s ñư c g i ñ n ti n trình cha Do quá trình ch y như trên => trong quá trình th c hi n ti n trình con, ngư i s d ng không th tương tác v i ti n trình cha Ch y ch ñ hi n (foreground và ch y ch ñ ng m (background) (2) Quá trình ch y ch ñ ng m cho phép th c thi ti n trình cha và ti n trình con m t cách ñ c l p Ví d : $ emacs& Sau khi th c hi n l nh trên, emacs... emacs& Sau khi th c hi n l nh trên, emacs s ch y ch ñ ng m, ngư i s d ng có th ti p t c s d ng console ñ th c thi các l nh khác Qu n lý tác v M t tác v = vi c th c hi n m t câu l nh M t tác v có th liên quan ñ n m t nhóm các ti n trình (m t ti n trình cha và t p các ti n trình con c a nó) Không th có nhi u hơn 1 tác v ch y ch ñ hi n (foreground) Có th có nhi u hơn 1 tác v ch y ch ñ ng m (background)... erreur.txt Cơ ch ñư ng ng Cơ ch ñư ng ng gi a hai ti n trình cho phép ñ nh hư ng l i ñ u ra c a ti n trình th nh t tr thành ñ u vào c a ti n trình th hai Cơ ch ñư ng ng ñư c thi t l p b ng cách s d ng ký t : | $ cmd1 | cmd2 Ví d $ls –l | more #affiche page par page $ls –l | tee log.txt #duplique la sortie X lý file L c thông tin $cat tên_file1 […] Hi n th n i dung 1 ho c nhi u file $head -n tên_file Hi... robert:75:0144234452:Paris yvonne:92:0133444335:Palaiseau $sort -n -t : +1 -2 carnet.txt Th c hi n quá trình s p x p t trư ng th 2 ñén trư ng th 3 (các trư ng ñư c ñánh s t 0) $sort -t : +3.2 +0 carnet.txt Th c hi n quá trình s p x p ñ u tiên d a trên ký t th 3 c a trư ng th 4, sau ñó th c hi n ti p quá trình s p x p d a trên trư ng th nh t So sánh các file $cmp file1 file2 So sánh file1 và file2 $diff... n M i ti n trình s h u: M t ñ u vào chu n (ng m ñ nh là bàn phím) M t ñ u ra chu n (ng m ñ nh là terminal) M t kênh báo l i chu n (ng m ñ nh là terminal) Chuy n hư ng ñ u vào chu n (, >>) $ ls > /dev/lp $ ls >> test.txt Chuy n hư ng kênh báo l i $ rm prog.c 2> /dev/null $ gcc prog.c 2>> erreur.txt Cơ ch ñư ng ng Cơ ch ñư ng ng gi a hai ti n trình cho phép... mãn ñi u ki n -I : ch ñưa ra tên file -v : ch ñưa ra các dòng mà ñi u ki n tìm ki m không th a mãn -i : không phân bi t ch hoa, ch thư ng -n : ch ñưa ra s th t c a dòng -w : th c hi n tìm ki m v i quá trình so sánh ñư c th c hi n ñ i v i t ng t c a chu i nh p vào (các t ñư c phân cách nhau b ng các ký t không ph i là ch cái, không ph i là ch s và không ph i là d u g ch dư i _) M t s ký t ñ c bi t grep