slike bài giảng linux và phần mềm mã nguồn mở - trương thị diệu linh chương 5 quản lý tiến trình

27 396 0
slike bài  giảng linux và phần mềm mã nguồn mở - trương thị diệu linh chương 5 quản lý tiến trình

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Quản lý tiến trình TS Hà Quốc Trung Giới thiệu n  n  Một tiến trình = thực thi chương trình thực thi Mỗi tiến trình tương ứng với tập thông tin sau: Một định danh (pid) ă Mt tin trỡnh cha (ppid) ă Ngi s hu (uid) v nhúm (gid) ă Cõu lnh to tin trỡnh ă Mt u vo chun (stdin), mt đầu chuẩn (stdout), kênh báo lỗi chuẩn (stderr) ¨  Thời gian sử dụng CPU (CPU time) mức u tiờn ă Th mc hot ng hin ti ca tin trỡnh ă Bng cỏc tham chiu n cỏc file c tin trỡnh s dng ă n Cỏc tin trình xếp để chia sẻ thời gian sử dụng CPU Các kiểu tiến trình (1) n  Các tiến trỡnh h thng ă Thng thuc v quyn root ă Khụng cú giao din tng tỏc ă Thng c chy di dng cỏc tin trỡnh ngm (daemon) ă m nhim nhiệm vụ chung, phục vụ người sử dụng ¨  Ví dụ: n  n  n  lpsched: Quản lý dịch vụ in ấn cron: tự động thực lệnh/chương trình vào thời gian xác định trước inetd: quản lý dịch vụ mạng Các kiểu tiến trình (2) n  Các tiến trình người sử dụng ¨  Thực n  n  nhiệm vụ người dùng cụ thể Thực dạng shell tương ứng với đăng nhập Thực dng mt lnh thụng qua shell ă Thng ă Vớ n  n  n  n  dụ: cp vi man … thực hiện, quản lý terminal Lệnh ps n  Hiển thị tiến trình Theo ngầm định, lệnh ps hiển thị tiến trình thuộc người sử dụng terminal ă S dng tựy chn aux hin th tt c cỏc tin trỡnh ang chy mỏy ă $ ps PID TTY 2803 pts/1 2965 pts/1 $ ps aux USER PID root ttanh 951 ttanh 953 ttanh 966 TIME CMD 00:00:00 bash 00:00:00 ps %CPU 0.1 %MEM 0.1 0.0 0.0 0.0 0.3 1.9 0.3 VSZ 1104 RSS 460 1728 996 6860 4916 2704 1000 TTY ? STAT START TIME COMMAND S 15:26 0:03 init[3] pts/0 S pts/0 S pts/0 R 16:09 0:00 bash 16:09 0:00 emacs 16:23 0:00 ps aux n  n  n  S: ngủ R: chạy T: dừng Z:không xác định Hủy bỏ tiến trình n  Khởi tạo tiến trình Trạng thái tiến trình Đang chạy Phục hồi fg Kết thúc tiến trình Ctrl-C kill Đang ngủ Kết thúc Lệnh kill n  Gửi tín hiệu đến tiến trình (định danh tiến trình xác định dạng mt tham s ca lnh) ă Theo ngm nh, tớn hiệu gửi tín hiệu 15 (SIGTERM – kết thỳc tin trỡnh) ă Tựy chn -9: gi tớn hiu (SIGKILL hy tin trỡnh) ă Tựy chn l: liệt kê tất tín hiệu sử dụng n  n  Lệnh killall: dùng để kết thúc tất tiến trình câu lệnh thơng qua việc truyền tên câu lệnh dạng tham số Quyền hủy tiến trình thuộc người sở hữu tiến trình Độ ưu tiên tiến trình n  n  Tất tiến trình có độ ưu tiên ban đầu ngầm định Mức độ ưu tiên tiến trình dao động khoảng t -19 n +19 ă n Lnh nice cho phộp thay đổi độ ưu tiên tiến trình bắt đầu thực lệnh tương ứng với tiến trỡnh ă n Ch ngi s dng cú quyn root giảm giá trị biểu diễn độ ưu tiên tiến trình Một người sử dụng thơng thường làm giảm độ ưu tiên tiến trình thơng qua việc tăng giá trị biểu diễn độ ưu tiên $ nice [-n Value] [Command [Arguments ]] Lệnh renice cho phép thay đổi độ ưu tiên tiến trình sau chạy Lệnh top n  Hiển thị cập nhật thông tin sau cỏc tin trỡnh ang chy: ă Phn trm s dng CPU ă Phn trm s dng b nh n $ top [d] ă Tựy chn d cho phộp xỏc định thời gian định kỳ cập nhật thơng tin (tính theo giây) n  Lệnh top cho phép người sử dụng tương tác quản lý tiến trình (thay đổi độ ưu tiên, gửi tín hiệu, …) Chạy chế độ (foreground chạy chế độ ngầm (background) (1) n  Quá trình chạy chế độ s tin hnh theo nhng bc nh sau: ă Thc q trình « fork », nhân tiến trình cha (trong trường hợp thực thi lệnh, l tin trỡnh shell) ă Thc hin quỏ trỡnh ô wait », đưa tiến trình cha vào trạng thái ngủ (sleep) ă Thc hin quỏ trỡnh ô exec ằ, thc thi tin trỡnh ă Sau tin trỡnh thực thi xong, tín hiệu « đánh thức » s c gi n tin trỡnh cha ă Do quỏ trình chạy => trình thực tiến trình con, người sử dụng khơng thể tương tác với tiến trình cha Ví dụ $ emacs & [1] 756 $ stop 756 # or $ stop %1 $ bg 756 # or $ bg %1 $ kill -9 756 # or $ kill %1 Các cách thực song song câu lệnh n  cmd 1;cmd2 n  cmd && cmd2 n  cmd1 | cmd2 Các kiểu thc thi n Thc thi nhiu lnh c lp ă Sử dụng ký tự ; để thực thi nhiều lệnh liên tiếp, lệnh hoạt động độc lập với ă $cp public/* perso; rm -r public n Thc thi nhiu lnh ph thuc ă S dng ký hiệu && để thực thi nhiều lệnh liên tiếp, lệnh phụ thuộc nhau, lệnh sau thực hin nu lnh trc khụng gp li ă $cp public/* perso && rm -r public Cơ chế đường ống n  n  Cơ chế đường ống hai tiến trình cho phép định hướng lại đầu tiến trình thứ trở thành đầu vào tiến trình thứ hai Cơ chế đường ống thiết lập cách sử dng ký t: | ă $ cmd1 | cmd2 Chuyn hướng kênh chuẩn n  Mỗi tiến trình sở hữu: ¨  ¨  ¨  n  Một đầu vào chuẩn (ngầm định bàn phím) Một đầu chuẩn (ngầm định terminal) Một kênh báo lỗi chuẩn (ngầm định terminal) Chuyển hướng đầu vào chuẩn (, >>) $ ls > /dev/lp $ ls >> test.txt n  Chuyển hướng kênh báo lỗi $ rm prog.c 2> /dev/null $ gcc prog.c 2>> erreur.txt tee command Lọc thông tin n  $cat tên_file1 [] ăHin n $head ăHin n $tail -n tờn_file th n dũng u tiờn ca file -n tờn_file ăHin n  $wc thị nội dung nhiều file thị n dũng cui cựng ca file tờn_file ăHin th số dòng, số từ, số ký tự file thông qua tùy chọn –l, -w, -c grep : Tỡm kim cỏc dũng $grep [-options] expreg [files] ă Tỡm kiếm file đầu vào chuẩn dòng có chứa ký tự xâu thỏa mãn s iu kin no ú n Cỏc tựy chn ă -c : đưa tổng số dòng thỏa mãn iu kin ă -I : ch a tờn file ¨  -v : đưa dòng mà điều kin tỡm kim khụng tha ă -i : khụng phõn bit ch hoa, ch thng ă -n : ch a s th t ca dũng ă -w : thực tìm kiếm với trình so sánh thực từ chuỗi nhập vào (các từ phân cách ký tự chữ cái, chữ số dấu gạch _) Một số ký tự đặc biệt n  grep sử dụng số ký tự đặc biệt câu lệnh: Biểu diễn ký tự * Lặp lại ký tự vị trí trước ^ bắt đầu dịng $ kết thúc dòng [ ] xác định danh sách khoảng ký tự cần tìm kiếm [^ ] cỏc ký t khụng tỡm kim ă Chỳ ý: để tránh nhầm lẫn, nên đặt ký tự biểu diễn điều kiện ngoặc kép Ví dụ n  $grep ^t" /etc/passwd ă Tỡm file /etc/passwd tt c dòng bắt đầu ký tự “t” n  $grep [^t] /etc/passwd ă Tỡm n $grep tuananh" /etc/passwd ă Tỡm n  tất dịng khơng bắt đầu ký tự “t” tất dịng có chứa xâu “tuananh” $ls -l /etc | grep "^d" ă Hin th tt thư mục /etc cut : Xác nh cỏc ct $cut -options [files] n Tựy chn ă -c xỏc nh cỏc ký t ă -f xỏc nh cỏc trng ă -d n Vớ d ă $cut -c5 file #hin th ký t th ă $cut -c5-10 file #hin th ký t th n ký t th 10 ă $cut -d: -f1 /etc/passwd #hiển thị tên tất người sử dụng h thng Thay i ni dung file n split ăCt mt file thnh nhiu file nh hn ăVớ d: n split -10 /etc/passwd smallpasswd n tr ăThay th mt chui bng mt chui khỏc cú cựng di ăVớ dụ: n  $cat /etc/passwd | tr ":" "#" sort: xếp nội dung $sort -options tên_file n  Các tùy chọn n ă -b: b qua cỏc du cỏch u mi trng ă -d : sp xp ch da vo ký tự bảng chữ chữ số (ký t, ch s, du cỏch) ă -r : o ngc th t sp xp ă -f : khụng phõn bit ch thng ch hoa ă -t x : ký tự x sử dụng làm ký hiệu ngăn cách gia cỏc trng ă -u : xúa cỏc dũng trựng ă -n sp xp da vo cỏc ch s Ví dụ n  carnet.txt maurice:29:0298334432:Crozon marcel:13:0466342233:Marseille robert:75:0144234452:Paris yvonne:92:0133444335:Palaiseau n  $sort -n -t : +1 -2 carnet.txt ă n Thc hin trình xếp từ trường thứ đén trường thứ (các trường đánh số từ 0) $sort -t : +3 -4 +0 -1 carnet.txt ă Thc hin trình xếp dựa trường thứ 4, sau thực tiếp q trình xếp dựa trường thứ So sánh file n  $cmp ăSo n $diff file1 file2 sỏnh file1 v file2 file1 file2 ăTỡm s khỏc gia file1 v file2 (cỏc file di dng bn) ăKt qu hin th dạng dòng ... man … thực hiện, quản lý terminal Lệnh ps n  Hiển thị tiến trình Theo ngầm định, lệnh ps hiển thị tiến trình thuộc người sử dng terminal ă S dng tựy chn aux hin thị tất tiến trình chạy máy ¨ ... tham số Quyền hủy tiến trình thuộc người sở hữu tiến trình Độ ưu tiên tiến trình n  n  Tất tiến trình có độ ưu tiên ban đầu ngầm định Mức độ ưu tiên tiến trình dao động khong t -1 9 n +19 ă n Lnh... d: n n n lpsched: Qun lý dịch vụ in ấn cron: tự động thực lệnh /chương trình vào thời gian xác định trước inetd: quản lý dịch vụ mạng Các kiểu tiến trình (2) n  Các tiến trình người sử dng ă

Ngày đăng: 24/10/2014, 16:52

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan