Bài Giảng Môn Học Nguyên Lý Hệ Điều Hành - Đại Học Hàng Hải

41 446 0
Bài Giảng Môn Học Nguyên Lý Hệ Điều Hành -  Đại Học Hàng Hải

Đ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

TR NG I H C HÀNG H I KHOA CÔNG NGH THÔNG TIN B MÔN K THU T MÁY TÍNH BÀI GI NG MÔN H C NGUYÊN LÝ H I U HÀNH H i Phòng – 2009 -1- M CL C Ch ng I: NH NG KHÁI NI M C B N C u trúc phân l p h th ng tính toán Tài nguyên h th ng nh ngh a OS Tính ch t chung c a OS Thành ph n OS Nguyên t c xây d ng OS Ch ng II: QU N LÝ THI T B Quan h phân c p t ch c qu n lý TBNV C ch phòng đ m ( Buffer) SPOOL Qu n lý file Qu n lý file MSDOS Ch ng III: QU N LÝ B NH t v n đ Qu n lý b nh logic- c u trúc m t ch ng trình Qu n lý b nh v t lý Qu n lý b nh IBM PC c a MSDOS Ch ng IV: QU N LÍ TI N TRÌNH I Qu n lý ti n trình Khái ni m T ch c ti n trình i u đ ti n trình - Tài nguyên G ng Tình tr ng b t c ( congestion) Ng t ( Interupt) II Qu n lý Processor Processor v t lí Processor logic Phân ph i Processor i u đ ti n trình A Ch đ m t dòng x p hàng B Chi n l c nhi u dòng x p hàng I U HÀNH NHI U PROCESSOR Ch ng V: H I H u hành nhi u Processor C u hình nhi u Processor H u hành nhi u processor: H u hành phân tán ( Distribute Operating System) c tr ng c a h u hành phân tán II Qu n lí tài nguyên h u hành phân tán Qu n lý thi t b , qu n lý File Qu n lý b nh Qu n lý ti n trình TÀI LI U THAM KH O -2- Ch ng I: NH NG KHÁI NI M C B N Quan tâm c a user: • Các h th ng ch ng trình có c u trúc ntn? • Các h th ng có đ c tr ng gì? • H th ng cung c p cho user nh ng tài nguyên C u trúc phân l p h th ng tính toán Khi User th c hi n m t ch ng trình, h th ng có đáp ng đ c yêu c u hay không Bao g m: • H th ng có ch ng trình c n th c hi n hay không • Có đ b nh đ làm vi c hay không • Có TBNV theo yêu c u hay không Tuy nhiên yêu c u c a User đa d ng, kh n ng c a h th ng có h n phí cho h th ng cao song l i ích mà h th ng mang l i nh kh c ph c đ a gi i pháp t ng tính v n n ng c a h th ng qua processor: a C s hoá h l nh: Tr c máy tính có ch c n ng chuyên d ng tính c n, sin, e_m , loga v y máy l p ráp nhi u vi m ch th c hi n ch c n ng v y s d ng không thay đ i đ c Nay thay ch c n ng b ng ph n m m máy tính v n n ng h n, t c đ cao h n, đ n đ nh giá thành h b Tách TBNV kh i processor: (micro hoá procesor) • • • Chuy n giao m t s công vi c cho TBNV đ m nhi m Processor t p trung x lý bit su t thu t toán gi i quy t tác v b ng phép x lý bit, byte, hoàn thi n ph ng pháp x lý MTDT • Xây d ng s n Modul ch ng trình cung c p cho User d i d ng ch ng trình chu n- th vi n ch ng trình Tuy nhiên yêu c u gia t ng ch ng trình d i d ng th vi n ngày t ng nên s l ng, n i dung c a th vi n t ng Gi i pháp: • Cung c p cho User công c cho phép h mô t gi i thu t c n thi t đ ng th i c s hoá th vi n ngôn ng thu t toán ch ng trình d ch đ i • User có th tác đ ng lên MTDT qua ch ng trình m u ho c ch ng trình d ch c Chuy n nguyên t c L nh thành Menu C ch l nh: • User ph i t n m b t tr c công vi c mà h th ng có th làm đ c, ch th cho h th ng làm vi c C ch Menu: • H th ng gi i thi u cho user kh n ng ph c v c a d i d ng b ng ch n, user ch ch cho h th ng trình bày danh m c công vi c có th yêu c u • Các công vi c đ c phân nhóm theo t ng ph m trù đ d tìm ki m - h th ng mang tính ch t t đào t o: làm vi c hi u sâu h n Nguyên t c xây d ng Menu: B ng l i: X Dùng l i ch xác công vi c s th c hi n, t ch c đ phân gi i t t X D th c hi n X Hàng rào ngôn ng -3- B ng bi u t ng: X M i công vi c đ c miêu t b ng m t hình nh X H p d n, d hi u v i m i lo i đ i t ng X Ch ng đ c hàng rào ngôn ng X Khó t ch c đ phân gi i th p Kh c ph c nh c m c a hai hình th c t ch c trên: t ch c c hai hình th c X Khi đ a h p sáng hay khung tích c c t i m t bi u t ng dòng thích xu t hi n X Khi đ a h p sáng hay khung tích c c áp vào m t m c b ng l i bi u t ng xu t hi n Ngoài t n t i c ch phím nóng, l nh chu n Tóm l i: H th ng ph i có trách nhi m đ m b o u ki n v t ch t v ch ng trình có th th c hi n đ c đ ng th i ph i trì h th ng tr ng thái đ ng b có ngh a h th ng ph i có ch c n ng qu n lý tài nguyên Tài nguyên h th ng Bao g m: X X X Không gian: không gian nh Th i gian: th i gian th c hi n l nh TBNV a B nh : X X X b Th i gian th X X X Phân lo i Phân c p Th i gian truy nh p c hi n l nh: Processor m t tài nguyên quan tr ng c a h th ng, đ c truy nh p m c câu l nh ch có m i làm cho câu l nh đ c th c hi n Th i gian: th i gian th c hi n m t câu l nh Trong h th ng có nhi u processor th i gian c a m i processor đ c qu n lý phân ph i riêng bi t nh nh ng tài nguyên đ c l p c TBNV: X S l ng nhi u X Ch ng lo i đa d ng nh ngh a OS OS có liên quan t i nhi u l nh v c, đ i t ng nên có nhi u cách ti p c n khác a V i user: OS h th ng ch b V i ng ng trình t o u ki n đ khai thác tài nguyên m t cách thu n ti n i qu n lý: OS t p ch ng trình ph c v qu n lý ch t ch s d ng t i u tài nguyên h th ng c V i cán b k thu t: OS h th ng ch ng trình trang b cho m t máy tính c th m c v t lý đ t o m t máy logic m i v i tài nguyên kh n ng m i d V i cán b l p trình h th ng: -4- OS m t h th ng mô hình hoá mô ph ng ho t đ ng c a máy, c a user c a thao tác viên ho t đ ng ch đ đ i tho i nh m t o môi tr ng khai thác thu n ti n qu n lý t i u tài nguyên c a h th ng tính toán Tóm l i: OS m t h chuyên gia đ i s m nh t hoàn thi n nh t hai y u t : X V n đ mà OS gi i quy t n y sinh t xác rõ ràng X Ng i tham gia thi t k ch nh ng ng i làm tin h c toán ng trình cán b l p trình có tay ngh cao Tính ch t chung c a OS a tin c y cao: M i ho t đ ng thông báo c a OS X chu n xác t đ i Khi ch c ch n máy m i cung X c p thông tin cho user X M i công vi c bao gi c ng đ c ki m tra, đánh giá VD: C:\>COPY A:\ f1.txt B: Ki m tra l nh COPY Ki m tra u n T n t i hay không đ a ng c có quay không a có truy nh p đ c không T n t i hay không t p tin f1.txt Ch t l ng thông tin đ a ntn? c m t ph n thông tin f1.txt hay toàn b b an toàn: T ch c cho d li u ch ng trình không b xoá ho c thay đ i ý mu n c Hi u qu : Các tài nguyên ph i đ c khai thác tri t đ c u ki n tài nguyên h n ch song v n có th gi i quy t yêu c u ph c t p Tính đ ng b cao d T ng quát: Tính k th a phiên b n tr c Thích nghi v i nh ng thay đ i có th có t ng lai e Thu n ti n: D s d ng Có nhi u m c hi u qu khác tu kinh nghi m ki n th c user Thành ph n OS • OS có quan h v i ba đ i t t n t i ba ngôn ng làm vi c giao ti p X Ngôn ng máy( Ngôn ng th c hi n ) X M i ngôn ng khác đ u ph i đ Ngôn ng v n hành(OS): X Thao tác viên giao ti p v i h th ng Ngôn ng thu t toán: ng nên c ánh x sang ngôn ng th c hi n -5- User giao ti p v i h th ng: Pascal, C • Các Modul ch ng trình c a h th ng có th chia thành hai l p: X Ch ng trình u n: X Qu n lý tài nguyên Qu n lý ti n trình(vi c th c hi n m t ch Qu n lý, t ch c d li u Ch ng trình th ký, u ph i nhi m v Ch ng trình ph c v : Ch Ch ng trình đó) ng trình biên t p ng trình d ch • Thành ph n c a MSDOS ROM BIOS Ch ng trình m i IO.SYS MSDOS.SYS COMMAND.COM Các l nh ngo i trú Ch ng trình nén đ a(DBLSPACE) Nguyên t c xây d ng OS a Modul: Xây d ng t Modul đ c l p quan h v i thông qua d li u Vào/ra T n t i c ch liên k t Modul đ c l p thành h th ng có t ch c b Nguyên t c t ng đ i đ nh v : Các Modul đ c vi t theo đ a ch t v t i vùng nh c th nh v y h th ng s c u hình b nh ng đ i k t đ u b nh , th c hi n chúng đ c đ nh d ng b nh linh ho t h n OS không ph thu c vào c Macroprocessor: Xây d ng phi u yêu c u Li t kê b c ph i th c hi n Xây d ng ch ng trình t ng ng d Ph ch c n ng: M t công vi c c a OS có th đ c th c hi n b ng nhi u ph user ch n gi i pháp t i u v i toán c a VD: Khi in t p f1.txt có gi i pháp: ng ti n khác cho phép C:\>COPY f1.txt PRN C:\>TYPE f1.txt >PRN C:\>PRINT f1.txt e Giá tr chu n (ng m đ nh): H th ng chu n b s n b ng giá tr cho tham s u n N u câu l nh thi u nh ng tham s giá tr h th ng s l y giá tr t b ng giá tr chu n đ th c hi n VD: C:\BT> DIR Xem đ a nào: C Th m c nào: BT Cái gì: m i th m c con, t p th m c không b che Nh th nào: đ y đ thông tin, liên t c theo d li u ng ng -6- Ra đâu: thi t b chu n Tham s : m i tham s f Tham s : Tham s v trí: X Là lo i tham s mà ý ngh a c a xác đ nh b i v trí xu t hi n b ng tham s X ng đ u dòng tham s Tham s khoá: X Là lo i tham s mà ý ngh a xác đ nh b ng t khóa VD: C:\>DIR A:/w/a/p C:\>DIR A:/a/p/ A: tham s v trí /w, /a hay /p tham s khoá -7- Ch ng II: QU N LÝ THI T B tv nđ • • ö c p: • • • TBNV tr thành đ i t ng làm vi c c a OS h th ng ph c t p Các TBNV đ m nhi m vi c truy n thông tin qua l i gi a b ph n c a h th ng Vì v y v n đ t ch c thông tin, ph ng pháp truy nh p t i chúng nh th T ch c TBNV Chi n l c u n Ph ng pháp phát hi n x lý l i Quan h phân c p t ch c qu n lý TBNV a S đa d ng c a TBNV: • Chu n: b t bu c • Ph : b sung b Quan h VXL v i TBNV • VXL không th làm vi c tr c ti p v i TBNV • Cùng v i TBNV th c hi n thao tác vào/ra ö T n t i cách t ch c cho VXL không ph thu c vào bi n đ ng c a TBNV Nguyên t c: • VXL ch u n thao tác vào/ra ch không tr c ti p th c hi n • Các TBNV không tr c ti p g n vào VXL mà g n v i thi t b qu n lý • M t thi t b u n TBNV ph thu c t o thành m t kênh(channel) Nh v y: thi t b qu n lý đóng vai trò nh m t máy tính chuyên d ng: • Nhi m v u n TBNV • Có ngôn ng riêng, l nh riêng • TBNV thi t b u n ho t đ ng đ c l p v i đ c l p v i VXL • Ch ng trình vi t ngôn ng thi t b u n TBNV g i ch ng trình kênh(channel program) c Th c hi n phép vào/ra: VXL t o m t ch ng trình t ng ng v i công vi c c n th c hi n, sau chuy n giao ch ng trình kênh d li u t ng ng cho thi t b u n ti p t c th c hi n ch ng trình c a Các phép vào/ra đ c u n theo nguyên lý Macroprocessor cho phép lúc phép vào/ra đ c th c hi n TBNV VXL v n ho t đ ng, song th c hi n tính toán u n khác ch a c n đ n k t qu vào/ra Processor Driver Driver Khi công vi c đ c hoàn thành báo cho VXL bi t b ng tín hi u ng t, Tu theo tín hi u ng t: • VXL ng t TBNV TBNV • L u tr đ x lý sau • Hu b h th ng có th làm vi c v i kênh VXL ph i bi t ngôn ng kênh(ngôn ng đ c đ a vào h th ng n p OS) VD: DOS Trong config.sys: DEVICE = -8- m b o t ng tác ch t ch gi a TBNV VXL kênh phát tín hi u ng t vào/ra, luôn b o v h th ng m t tr s qua có th đánh giá ch t l ng th c hi n phép vào/ra: mã tr v (return code) VXL t m d ng công vi c c a chuy n sang phân tích mã tr v đ đánh giá k t qu , ch t l ng công vi c d Khi ch ng trình kênh k t thúc: Các l nh ch ng trình kênh k t thúc khác nên m t phép vào/ra có th thúc nhi u m c v y kênh báo cho h th ng bi t k t qu phép vào/ra s m t t Các ch ng trình ng d ng, ch ng trình ng t vào/ra, ch ng trình kênh t o thành ti n trình đ c l p, ho t đ ng song song ch u s u đ chung c a h th ng C ch phòng đ m ( Buffer) c m c a TBNV t c đ ch m m t TBNV làm vi c h th ng c n: • Kích ho t TBNV • Ch TBNV đ t tr ng thái thích h p đ m b o hi u su t s d ng: • Gi m s l ng phép vào/ra v t lý • Th c hi n song song phép vào/ra x lý thông tin khác • Th c hi n tr c phép nh p d li u Nh v y t n t i m t s vùng nh trung gian làm n i l u tr thông tin phép vào/ra g i phòng đ m C ch phòng đ m cho phép kh c ph c: • Th c hi n tr c phép nh p d li u • Tích lu k t qu • m b o x lý song song gi a phép trao đ i vào/ra x lý • Gi m s l n truy nh p v t lý • m b o bi n đ i topo th c hi n tr c ho c sau x lý thông tin mà không làm m t tính liên t c c a thông tin V i VXL phòng đ m ghi VD: f1.txt a Phân lo i: • Phòng đ m trung gian • Phòng đ m x lý • Phòng đ m vòng a Phòng đ m trung gian: Ll u tr t m th i k t qu vào/ra nh v y t n t i hai c ch phòng đ m: X Phòng đ m vào X Phòng đ m u m: X n gi n X H s song song cao X V n n ng, áp d ng cho m i phép vào/ra Nh c: X T n b nh X Th i gian trao đ i X Nhi u l i x lý b Phòng đ m x lý: Thông tin đ c x lý phòng đ m -9- Truy nh p thông tin theo đ a ch (tính đ a ch c a thông tin phòng đ m cung c p cho ng trình) u m: X Ti t ki m b nh X Không m t th i gian chuy n thông tin b nh Nh c: X H s song song th p X T c đ gi i phóng phòng đ m ch m X Tính v n n ng không cao c Phòng đ m vòng T ch c phòng đ m ch Ra X lí Vào Sau m t kho ng th i gian ba phòng đ m quay vòng tròn T ch c: X Phòng đ m có th g n v i t ng file c th : ch đ c xây d ng m file ho c đóng file X Phòng đ m g n v i h th ng: xây d ng h th ng xây d ng c ch phòng đ m ch g n vào m t file c th SPOOL (Simultaneous Peripheral Operation On_Line) H th ng mô ph ng phép trao đ i TBNV ch đ tr c ti p Vai trò c a TBNV: tr m nh n ch ng trình kênh d li u, g i mã tr ng thái cho h th ng phân tích Tuy nhiên: m i ch ng trình d li u c a TBNV ho t đ ng t ng t nh TBNV có th c v y có th dùng ph n m m đ mô ph ng ho t đ ng c a TBNV coi nh m t TBNV o Ch ng trình Print Disk Th c hi n ct X lý ng d ng: c a User k t thúc X Mô ph ng trình u n, qu n lý TBNV X T o SPOOL, mô ph ng phép trao đ i ngo i vi lúc th c hi n SPOOL: k thu t x lý mà thi t b cu i ch ng trình c a user đ c t m th i thay th b i thi t b trung gian X Sau k t thúc ch ng trình vào th i m thu n ti n thông tin s đ c đ a thi t b cu i theo yêu c u c a user X Không can thi p vào ch ng trình c a user X Ti n hành lúc th c hi n phép trao đ i vào/ra Tác d ng: X Làm cho ch ng trình c a user th c hi n nhanh h n X Gi m giá thành chi phí X Khai thác TBNV t t h n X Gi m yêu c u v s l ng thi t b X T o k thu t l p trình t ng ng - 10 - TTA ghi n i dung bi n Dem vào TgA (bi n c c b ) TTB ghi n i dung bi n Dem vào TgB TTA t ng TgA TTB t ng TgB C ti n trình A B đ u t ng n i dung Dem , song n i dung ch t ng X Dem : Tài nguyên G ng X CT x lý bi n Dem : CT g ng : o n g ng Kh c ph c đ ng đ : X T i m t th i m có không m t ti n trình n m đo n G ng X Không m t ti n trình đ c phép lâu vô h n đo n G ng X Không m t ti n trình ph i ch vô h n đo n G ng Công c u đ ti n trình qua đo n g ng : X C p th p: n m ti n trình đ c u đ X C p cao: n m ti n trình Công c u đ c p th p : X Ph ng pháp khoá X Ph ng pháp ki m tra xác l p X K thu t đèn báo a, Ph ng pháp khoá ( Ki m tra luân phiên) Nguyên t c: hai hay nhi u ti n trình đ nh ghi vào m t đ a ch c a b nh s đ k thu t ch cho phép m t ti n trình làm vi c ti n trình khác ph i ch M i ti n trình: s d ng m t byte vùng b nh chung làm khoá, vào đ c đo n G ng, gán giá tr 1, thông báo cho ti n trình khác bi t có ti n trình s d ng tài nguyên g ng (Hình v ) Gi i thu t Dekker Begin k1 := 0; k2:= 0; tg:=1; kt1:=1; kt2:=1; begin repeat k1:=1; While k2=1 Ct2 if Tg=2 then begin k1:=0; While tg=2 Ct2 k1:=1; end; k1:=0; tg:=2; until kt1=0; repeat k2:=1; While k1=1 Ct2 if Tg=2 then begin k2:=0; While tg=1 Ct2 k2:=1; end; k2:=0; tg:=1; until kt2=0; - 27 - c m X D t ch c th c hi n X Quá trình u đ ph c t p s ti n trình t ng Nh c: X M t ti n trình có th b ng n ch n b i ti n trình th X Khi t c đ hai ti n trình trênh l ch, m t hai ti n trình ph i ch b Ph ng pháp ki m tra xác l p ( Ph ng pháp Perterson) T ng đ ng v i ph ng pháp khoá s d ng giá tr ki m tra bi n tr ng thái: tham s ( c c b , toàn c c) Gi i thu t X PAR m t l nh g m hai tham s : X L: c c b X G: toàn c c X Ch c n ng PAR gán L = G gán G = 1; Var l1, l2, g: byte; Begin g:=0; begin tt:=1; repeat l1:=1; while l1=1 PAR(l1); { đo n gi a ti n trình 1} g:=0; { ph n l i c a ti n trình 1} until false tt:=2; repeat l2:=1; while l2=1 PAR(l2); { đo n gi a ti n trình 2} g:=0; { ph n l i c a ti n trình 2} until false end; End; c m: c KT đèn báo ( Semaphore - Dijkstra) S d ng hai phép x lý P() V() P(s): X Gi m S đ n v X N u s ≥ ti p t c th c hi n ti n trình X Ng c l i đ a ti n trình vào dòng x p hàng V(s): X T ng S lên X N u s ≤ ti p t c th c hi n ti n trình X Ng Gi i thu t: c l i đ a ti n trình vào dòng x p hàng Var s: byte; Begin - 28 - s:=1; begin tt:=1; repeat P(s) { đo n gi a ti n trình 1} V(s); { ph n l i c a ti n trình 1} until false tt:=2; repeat P(s) { đo n gi a ti n trình 2} V(s); { ph n l i c a ti n trình 2} until false end; End; c m: d Công c u đ c p cao – ch ng trình th kí ( Monitor) c m: X N m ti n trình c a ng i s d ng X Ng i s d ng không bi t tài nguyên thu c đo n g ng Ch ng trình th ký ( Monitor): c u trúc đ c bi t bao g m th t c, bi n c u trúc d li u ho t đ ng ch đ phân chia th ì gian , h tr vi c th c hi n ti n trình, v i thu c tính: X Các bi n c u trúc d li u Monitor ch có th đ c thao tác b i th t c đ nh ngh a bên Monitor X T i m t th i m, m t ti n trình nh t đ c làm vi c v i ch ng trình th ký X M i l n s d ng tài nguyên m i, h th ng g n ch ng trình th ký v i ti n trình Trong m t Monitor có th đ nh ngh a bi n u ki n C hai thao tác Wait() Signal(): X Wait(C): chuy n tr ng thái ti n trình sang tr ng thái khoá đ t ti n trình vào hàng đ i bi n u ki n C X Signal(C): n u có m t ti n trình b khoá hàng đ i c a C tái kích ho t ti n trình ti n trình s i kh i Monitor Thu t toán Wait(C) begin status(p)=khoá enter( p, f(C)) { đ a p vào hàng đ i} end; Signal(C) begin if f(C)nil then exit( q, f(C)) { đ a q kh i hàng đ i} end; c m: Tình tr ng b t c ( congestion) B t c: Khi có nhi u tài nguyên g ng m t ti n trình, ti n trình s ch đ i l n r i vào tình tr ng - 29 - Tình tr ng b t c: hai hay nhi u ti n trình ch đ i m t s ki n n u tác đ ng đ c bi t t s ch đ i y vô h n X Phòng ch ng: X Phòng ng a : tránh không đ ti n trình r i vào tình tr ng b t c X D báo tránh : Ki m tra xem ti n trình có r i vào tình tr ng b t c hay không , thông báo k p th i tr c b t c X Nh n bi t kh c ph c : Phát hi n ti n trình b b t c gi i quy t Phòng ng a Xem xét u ki n b t c: X Có tài nguyên G ng X Ch ch a đ c vào đo n G ng X Không có h th ng phân ph i l i tài nguyên X T n t i ch đ i vòng Tài nguyên G ng : Dùng k thu t SPOOL: Khi k t thúc ti n trình k t qu đ c chuy n ng c l i tài nguyên v t lý mà sever yêu c u, vi c chuy n ng c theo nguyên t c l n l t ch ng trình h th ng đ m nh n nh v y không x y xung đ t i u ki n ch ch a đ c vào đo n G ng: X Phân ph i tr c tài nguyên, ti n trình ch đ c b t đ u nh n đ tài nguyên m t s l n phân ph i X i m gác: H th ng s l u l i toàn b thông tin tr ng thái ti n trình , n u c n thi t có th hu ti n trình, gi i phóng tài nguyên, sau n u cho phép s ti p t c công vi c b ng cách khôi ph c tr ng thái cu i X Ch đ i vòng: Phân l p tài nguyên, ti n trình ch nh n đ c tài nguyên m c cao h n sau tr l i tài nguyên m c th p X Phân ph i l i tài nguyên: Tr ng thái tài nguyên - tr ng thái ti n trình, khôi ph c l i ti n trình t i m gián đo n D báo phòng tránh Không phòng ng a nh ng m i l n phân ph i tài nguyên ki m tra xem vi c phân ph i có kh n ng đ y h th ng vào tình tr ng b t c không? N u xu t hi n nguy c tìm cách gi i quy t c th tr c b t c có th x y Thu t toán: X Có n ti n trình X H th ng có k thi t b X Ti n trình i yêu c u t i đa m t lúc max (i) đ n v thi t b đ có th th c hi n, nh ng hi n ch nh n đ c f(i) đ n v thi t b X Ti n trình i k t thúc kt(i)=true Thu t toán : t:=k; for i:=1 to n begin t:=t-f(i); cl[i]:=max[i]; kt[i]:=false; end; Flag:=True; While Flag begin flag:=false For i:=1 to n if not kt[i] and (cl[i] Ti B Chi n l c nhi u dòng x p hàng D a vào thông tin ng i s d ng cung c p k t qu phân tích c a h th ng, phân l p ti n trình đ a chi n l c ph c v t ng ng Các ti n trình có th đ c phân thành l p: Ti n trình th i gian th c Ti n trình c a ch đ s d ng t p th phân chia th i gian Ti n trình x lí lô - 34 - Ch ng V: H I U HÀNH NHI U PROCESSOR I H u hành nhi u Processor S k t h p c a Processor m t h th ng tính toán, s k t h p c a h th ng tính toán đ n Processor M c đích: X S chuyên môn hoá Processor làm gi m gánh n ng x lý X Ho t đ ng n đ nh n ng su t cao X tin c y cao X Làm cho tài nguyên có giá tr cao, mang tính kh d ng đ i v i b t k user ng i dùng m ng X T ng đ tin c y c a h th ng nh kh n ng thay th x y s c đ i v i m t máy tính C u hình nhi u Processor T n t i nhi u ph ng th c k t n i hai hay nhi u Processor S k t h p c a máy tính v i h th ng truy n thông, đ c bi t m ng vi n thông t o lên mô hình t p trung máy tính đ n l đ c k t n i v i đ th c hi n công vi c Môi tr ng làm vi c nhi u user, cho phép nâng cao hi u qu khai thác tài nguyên chung t nh ng v trí đ a lý khác ( b nh , ch ng trình, nhi m v ) C u hình phân c p: Client/ Server: m t Processor ngo i vi có th ho t đ ng đ c l p gi i quy t nhi m v c a c m: X Ch ng trình d t ch c X Ch ng trình u n không ph i chép nhi u l n X Không ph i t ch c ki u module vào/ra nhi u l n X Th c hi n ng t t ng S đ liên k t m m linh ho t: Các processor có quan h bán ph thu c X M i processor x lý ti n trình c a t hình thành t i k t thúc X Các processor có th liên h , trao đ i thông tin chuy n giao ti n trình tr c đ c b t đ u th c hi n c m: X Gi m gánh n ng x lí t i m t processor X Các processor có th trao đ i ti n trình, c ch u đ đ n gi n S đ liên k t bình quy n: Các processor đ c coi nh t p tài nguyên lo i Thay cho vi c th c hi n t ng ch ng trình t ng processor, phân chia công vi c u n cho t t c processor Nh v y m t ti n trình có th b t đ u processor nh ng có th k t thúc processor khác c m: X Gi m gánh n ng x lí t i m t processor X Các processor có th trao đ i ti n trình, c ch u đ đ n gi n X Khó đánh giá k t qu th c hi n ti n trình H u hành nhi u processor: T n t i m t h u hành có ch c n ng qu n ly d li u, tính toán x lý m t cách th ng nh t: H th ng nh v y g i h u hành nhi u processor V i ti p c n: X T p trung: Tôn tr ng h u hành c c b có h th ng tính toán, h u hành nhi u processor đ c cài đ t nh m t t p ch ng trình ti n ích ch y h th ng X Phân tán: B qua h u hành c c b có h th ng, cài đ t m t h u hành thu n nh t toàn m ng - 35 - V i mô hình t p trung: X Cung c p cho m i user m t ti n trình đ ng nh t làm nhi m v cung c p m t giao di n đ ng nh t v i t t c h th ng c c b có X Ti n trình qu n lý c s d li u ch a thông tin v h th ng c c b v ch ng trình d li u c a user thu n tuý: X B x l nh X D ng l nh c a user → ngôn ng l nh c a h th ng → g i t i P đ th c hi n X c m: X n gi n, không làm nh h ng t i h thông c c b có X Khó th c hi n I/O V i mô hình Phân tán: X Mô hình ti n trình: M i tài nguyên đ c qu n lý b i m t ti n trình h u hành u n s t ng tác gi a ti n trình X Mô hình đ i t ng: Coi ti n trình đ i t ng, m i đ i t ng có m t ki u, m t bi u di n m t t p thao tác có th th c hi n o Nh v y: o Ti n trình c a uses ph i đ c phép thao tác đ i t ng o H u hành qu n lý vi c thao tác c a ti n trình đ i t ng H u hành phân tán ( Distribute Operating System) Khái ni m: T p ch ng trình ph c v t p trung nh m t giao di n trình ng d ng h th ng tính toán nh m đ t đ c tính hi u qu an toàn, d s d ng h th ng tính toán Ch c n ng c a OS : X i u đ Processor X ng b gi a trình t ng tác X Qu n lý tài nguyên h th ng X m b o u n truy nh p b o v tính toàn v n h th ng, ph c h i cung c p giao di n user Quan ni m v OS: X Máy o: Tr u t ng hoá h th ng máy tính ( m c tiêu thi t k c b n) X Qu n tr tài nguyên : Ph ng ti n đ đ t đ c m c đích Nh v y: X OS t p trung: Quan tâm t i vi c qu n tr tài nguyên h th ng X OS phân tán: Tr u t ng hoá máy tính Vào th i m m i đ i: Các OS đ c thi t k t p trung đ ch y h th ng có m t hay nhi u b x lí ( Processor) V i ti p c n m ng máy tính ngày nay: Các h th ng làm ph m vi r ng, phân tán nhi u đ a m khác đòi h i c ch qu n lí phân tán c tr ng c a h u hành phân tán a So v i PC Kh n ng dùng chung d li u: X Nhi u PC dùng nhi u b n c a d li u t i nhi u n i, v y chi phí cho vi c đ ng b qu n lý truy nh p b o m t t n X DOS: Dùng m t s b n d li u, chi phí gi m Kh n ng dùng chung thi t b : X M i PC ph i trang b đ y đ thi t b ngo i vi song n u đ c k t n i môi tr ng DOS TBNV có th đ c s d ng chung b i nhi u user h th ng, nh v y ti t ki m hi u qu Kh n ng truy n thông: X K t n i c a PC nh d ch v m ng vi n thông, th i gian ch đ i đ đ c ph c v không an toàn - 36 - X V i Dos: môi tr ng phân tán Tính linh ho t: X Vi c phân chia l i tài nguyên gây chi phí t n kém: l u chuy n tài li u, thi t b , d li u X Dos: S d ng ch c n ng chuyên bi t c a h th ng b So v i OS t p trung T c đ : N ng l c k toán cao t p trung m t s b VXL m t máy tính Tính kinh t : T su t giá c hi u nâng cao Tính phân b : Liên k t ng d ng máy riêng bi t Tính n đ nh tin c y: H th ng v n làm vi c m t máy g p s c Tính m : Có th t ng b c m r ng quy mô h th ng c H n ch c a h u hành phân tán X Ph n m m: đòi h i h u hành, ngôn ng hình th c, ch ng trình ng d ng phù h p: thi t k , cài đ t khó, ph c t p X V n đ m ng: Thay th toàn b h th ng c X V n đ truy n thông: an toàn d li u, l u l ng đ ng truy n, trình thay th có s c X V n đ b o m t: Giá thành cao, khó s d ng chung d li u, ch ng trình d Yêu c u thi t k h u hành phân tán Tính su t X Tính su t v i user: user ngh r ng h th ng phân tán ch m t t p máy tính ho t đ ng ch đ phân chia th i gian X Tính su t h th ng: h th ng su t đ i v i ch ng trình, l i g i h th ng ph i đ c thi t k cho s có m t c a nhi u processor không th th y đ c t ch ng trình Th hi n: X Trong su t v đ nh v : user không th nói xác tài nguyên n m đâu ( tài nguyên đ c mã hoá v trí) X Trong su t v ánh x : tên tài nguyên không thay đ i di chuy n t máy sang máy khác X Trong su t v l p l i: h th ng có th ( c n thi t) l u m t s b n c a m t tài nguyên mà user không bi t X Trong su t đ ng th i: nhi u ti n trình có th truy nh p m t tài nguyên, ti n trình có th không c n bi t t i s có m t c a ti n trình khác X Trong su t song song: nhi u ho t đ ng song song đ c che đ i v i user X Trong su t l i: c ch ph c h i l i h th ng đ c che đ i v i user X Trong su t kích th c: cho phép h h ng m r ng qui mô d n d n ma không tác đ ng t i user X Trong su t v quan sát: m nhìn ph n m m không th th y đ c đ i v i user Tính modul hoá: H th ng đ c phân chia làm nhi u modul nh cho phép b sung , thay đ i d dàng Tính kh m : qui mô h th ng th ng xuyên thay đ i yêu c u nâng c p Tính đ c l p, quy mô: M r ng quy mô mà n ng l c h th ng không thay đ i Tính ch u l i: Th ng xuyên l u đ ph c h i l i II Qu n lí tài nguyên h u hành phân tán Qu n lý thi t b , qu n lý File Khái ni m File: đ n v thông tin nh nh t c a user, đ c qu n lí thông qua tên file X User ph i l tr thông tin b nh v y OS ph i có vai trò cho user truy nh p thu n ti n X Nhu c u dùng chung ( chia s ) file d li u - 37 - V n đ đ t đ i v i h th ng qu n lí file: tính ch t yêu nh đ i v i h qu n lí file h u hành t p trung, h qu n lí file h u hành phân tán ph i đ m b o: X Tính su t c a h th ng X D ch v th m c X Hi u n ng h th ng, đ tin c y X an toàn Tính su t X Tính su t đ ng nh p: user có th đ ng nh p vào tr m h th ng v i m t th t c đ ng nh p X Trong su t truy c p: Các ti n trình ch y h th ng có c ch truy nh p vào t p tin mà không c n đ ý xem t p c c b hay t xa X S đ c l p v đ nh v t p tin: Các t p tin có th đ c chuy n t v trí t i v trí khác mà không làm thay đ i tên: su t đ i v i user X Tính su t t ng tranh: file đ c chia s b i nhi u user, vi c truy c p t i m t t p t m t ti n trình không nh h ng t i s thành l p c a ti n trình khác X Trong su t l p: Các t p đ c l u đ d phòng cho phép truy nh p đ ng b ( user không bi t b n sao) Thi t k th c hi n h th ng t p tin phân tán i v i user, m t t p tin bao g m ba thành ph n logic: X Tên X Các thu c tính X Các đ n v d li u Các t p h th ng t p Các t p đ c t o b i user kèm v i tên, truy nh p t p, tên t p s xác đ nh giá tr ID c a t p giá tr c ng giá tr nh t xác đ nh v trí v t lý c a t p Các thu c tính: Các thông tin v quy n s h u, quy n truy nh p, d ng t p, kích th c, d u hi u th i gian Các đ n v d li u n v d li u : Byte, kh i C ch truy nh p: X Tu n t : Con tr đ nh v t p đ c trì b i h th ng cho phép xác đ nh v trí đ n v d li u k ti p đ c truy nh p gi a ti n trình X Tr c ti p ( truy n thông không liên k t): V trí đ n v d li u cho vi c đ c, ghi rõ ràng C ch liên quan t i kích th c c a đ n v d li u, thao tác đ c ghi ph i bao hàm thông tin u n X Ch s : n v d li u đ c đ a ch hoá b i ch s hay khoá kèm m i kh i d li u V nđ b om t B o v d li u: không đ m t thông tin có s c k thu t ho c ch ng trình th m chí truy nh p b t h p l K thu t b o v d li u cho h phân tán: Ph ng pháp mã hoá d li u v i thu t toán DBS X Khoá bí m t: Thu t toán gi i mã X Khoá công khai: sinh mã: Kerberos: S xác nh n c a thành ph n d a c s tin t ng vào thành ph n th ( m t kh u) Ch ký n t : Xác nh n tính nguyên b n mà v n b n ( Digital Signature) X Qu n lý b nh Ngoài ph ng pháp qu n lí b nh nh h u hành t p trung, v n đ quan tâm vi c qu n lí b nh h u hành phân tán vi c đ m b o tính chia s b nh Chia s b nh : Truy nh p b nh t xa: - 38 - Vi c truy nh p đ c th c hi n t i m t nút xa X Kh i d li u xa đ c di chuy n t i nút c c b : truy nh p c c b X Kh i d li u xa đ c l u l i t i nút c c b : truy nh p đ ng b Các ph ng th c X c t xa (Read remote): Kh i d li u dùng chung không đ c di chuy n hay l u, máy tr m g i yêu c u t i máy ch , máy ch g i tr l i v d li u cho vi c đ c, báo nh n cho vi c ghi X c/ghi ánh x ( Read/write migrate): Nh vi c truy c p t i m t kh i d li u t xa mà kh i d li u đ c di chuy n t i ti n trình yêu c u Ti n trình s c p nh p t i b ng ánh x kh i v t lý - trang o c a d li u X … Qu n lý ti n trình Khái ni m v ti n trình: n v th c hi n đ c nh nh t th y b i user Lu ng ( Thread): đ n v th c hi n đ c nh nh t th y b i h u hành, đ c h u hành c p phát th i gian Processor Quan h gi a ti n trình lu ng: Ti n trình không gian đ a ch lu ng đ c th c hi n Hai ti n trình không gian đ a ch - hai lu ng thu c m t ti n trình Qu n lý ti n trình: vi c qu n lí ti n trình thông qua kh i u n ti n trình Kh i u n: B n ghi ch a kh i u n lu ng, c ng thông tin , tài nguyên h th ng mà ti n trình s d ng, thông tin tr ng thái ti n trình: S n sàng, th c hi n ng t Qu n lý lu ng: Kh i u n lu ng: X B đ m l nh: PC X Con tr ng n x p: SP X T p ghi: Rs X Tr ng thái: Flag Các ch c n ng qu n lý ti n trình lu ng thông tin chia làm ba lo i X Truy n thông: m b o s liên k t gi a ti n trình X ng b : m b o th c hi n ti n trình t i u X i uđ : m b o ti n trình s d ng tài nguyên chia s đ n Cài đ t lu ng: Trong không gian user: Khi lu ng g i m t th t c h th ng th c hi n liên k t vào th vi n đ ng Th t c th vi n đ ng ki m tra xem có c n treo lu ng không, n u c n treo lu ng chuy n u n cho lu ng khác Trong nhân h th ng: Khi lu ng g i m t th t c h th ng, s dduwocj g n vào nhân h th ng Truy n thông gi ã ti n trình Mô hình truy n th ng OSI: m i t ng có m t ch c n ng riêng, thông p truy n gi a hai ng d ng d a giao th c, qua m i t ng đ c g n thêm vùng header Mô hình Cilent/ Server X Client truy n thông p cho server yêu c u d ch v X Server th c hi n d ch v t ng ng g i thông p tr l i Các v n đ : nh v yêu c u t Clinet nào: G n cho m i Client m t đ a ch ID Client ch n đ a ch ng u nhiên, thông báo đ c g i cho taat c Server a tên Server vào Client ch y ch ng trình Ch đ chuy n thông p: khoá, không khoá: Khoá: có m t thông p đ c chuy n, ti n trình c a Client b treo ch cho t i có tr l i ho c báo l i - 39 - Không khoá: ti n trình v n ti p t c th c hi n công vi c khác Ch đ có b o đ m không b o đ m: Có b o đ m: Server nh n đ c thông p t Client s phúc đáp l i đ Client bi t Không b o đ m: ti n trình g i thông p, không đ c b o đ m thông p đ n đích Mô hình truy n thông nhóm: Nhóm: t p ti n trình, v y m t thành viên nh n đ c thông p t t c ti n trình nhóm đ u có th đ c chia s ng b ti n trình ng b : m b o th t th c hi n đ n c a lu ng, ti n trình ng b đ ng h th i gian th c: Gi s có t p OBJ m t máy đ c biên d ch t t p A.ASM m t máy khác T m t máy th ba, user g i trình LINK đ t o A.EXE t A.OBJ Trình liên k t so sánh th i gian c p nh p cu i c a A.OBJ A.ASM đ quy t đ nh có biên d ch l i A.ASM hay không N u đ ng h c a máy ch a t p OBJ nhanh h n đ ng h c a máy ch a ASM có th ASM p nh t mà OBJ v n m i h n, k t qu LINK không liên k t l i ASM dùng OBJ c d n đ n sai mà không bi t Kh c ph c: đ ng b th i gian th c: Mô hình chu n t p trung: máy tr m đ u đ n g i thông p h i gi t i máy ch chu n đ th ng xuyên hi u ch nh c a Mô hình chu n trung bình: máy ch đ u đ n h i máy tr m giwof c a chúng, tính trung bình r i g i ph n h i l i th i gian chung Mô hình trung bình phân tán: chia th i gian thành kho ng đ ng b l i ti= T0 + i*R, c m i th i m ti m i máy g i th i gian tr b i đ ng h c a cho m i máy khác c ng nh n th i gian t m i máy khác g i t i, tính trung bình hi u ch nh đ ng h c a ng b th i gian logic Gi s ti n trình A g i thông p cho B, th i m thông p xu t phát t1, th i m nh n thông p t2 Vì xung nh p c a hai máy khác nên có th t2 < t1 B s hu thông p Kh c ph c: Trong thông p bao hàm c th i gian xu t phát ng b th t s d ng đo n G ng Thu t toán t p trung: Ti n trình đ nh s d ng tài nguyên G ng s g i thông p t i server xem có quy n s d ng không? Thu t toán phân tán: Ti n trình s d ng tài nguyên G ng s g i thông p t i ti n trình khác Các ti n trình nh n đ c thông p xin phép: N u không đo n g ng, nhu c u s d ng tài nguyên g ng, s cho phép N u đo n g ng, không tr l i x p hàng thông p m i đ n đ tr l i sau N u đ nh s d ng đo n g ng, so sánh th i gian g i thông p c a tr c v i th i gian g i c a thông p m i đ n, n u th y thông p xu t phát tr c s t đ ng vào tr ng thái ch tr l i cho phép - 40 - TÀI LI U THAM KH O V n Nguy n Thanh Tùng, Giáo trình H u hành, H Bách Khoa HN Milan Milenkovic, Operating systems concept and design Mc Graw Prin, Operating system Prentice Hall, Modern Operating system Hoàng Ki m, Giáo trình Nguyên lý h u hành, i h c k thu t TP HCM Nguy n Kim Tu n, Nguy n Gia nh, Giáo trình Nguyên lý h u hành, i h c C n Th - 41 - [...]... lâu nh t X a ra modul có t n su t s d ng th p nh t d Ch đ phân trang ( ánh x b nh logic thành v t lý) - 22 - B nh v t lý đ c chia thành t ng ph n b ng nhau g i là Trang, các trang đ th t 0,1,2 Ch ng trình ph i có c u trúc trang Trang trong ch ng trình ph i có cùng kích th c trang v t lý 1 trang v t lý: 256byte-4KB Khi làm vi c ch ng trình đ c biên t p theo t ng trang t o ra các PCB PCB: là t p h p... Tài nguyên ch đ c phân ph i cho ti n trình chính • Ti n trình đ ng m c: Nh ng ti n trình có m t s tài nguyên s d ng chung theo nguyên t cl nl t 3 i u đ ti n trình - Tài nguyên G ng Tài nguyên G ng: Tài nguyên phân ph i cho m t ng i ph c v , nh v y t i m t th i đi m n u đ ng th i có nhi u ti n trình mu n s d ng tài nguyên G ng: đi u đ ti n trình đ không có khi nào có m t ti n trình chi m d ng tài nguyên. .. n l c x p hàng l n l t RR ( Round Robin) – phân ph i l i Processor - 33 - Nguyên t c: m i m t ti n trình trong dòng x p hàng l n l t đ c phân ph i m t l ng t th i gian đ th c hi n Sau kho ng th i gian đó, n u ti n trình ch a k t thúc ho c không r i vào tr ng thái ng t thì nó đ c chuy n v cu i dòng x p hàng: ti n trình x p hàng vòng tròn Khi có m t ti n trình m i, nó s đ c đ a vào dòng x p hàng vòng... (protect mode) Nguyên t c: B nh đ c chia thành t ng kh i Real mode: o Dung l ng kh i

Ngày đăng: 27/10/2015, 19:12

Từ khóa liên quan

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

  • Đang cập nhật ...

Tài liệu liên quan