Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 25 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
25
Dung lượng
747,11 KB
Nội dung
Giáo trình Nguyên lý h CH 4.1 H u hành – KS Tr n Ng c Thái, NG 4: CÁC H môn Tin h c – TH NG QU N LÝ KHÁC C A H i h c DL H i Phòng U HÀNH TH NG QU N LÝ T P TIN Trong h u h t ng d ng, t p tin thành ph n ch y u Cho dù m c tiêu c a ng d ng c ng ph i bao g m phát sinh s d ng thông tin Thông th ng u vào c a ng d ng t p tin u c ng t p tin cho vi c truy xu t c a ng i s d ng ch ng trình khác sau Trong h c s tìm hi u nh ng khái ni m c ch c a h th ng qu n lý t p tin thông qua n i dung nh sau: Các khái ni m c b n Mô hình t ch c qu n lý t p tin Bài h c giúp hi u c t p tin gì, cách th c t ch c qu n lý t p tin nh th T ó giúp hi u c c ch cài t h th ng t p tin h u hành Bài h c òi h i nh ng ki n th c v : thao tác v i t p tin, m t s tính ch t c a t p tin góc ng i s d ng nh ng ki n th c v c u trúc d li u c ng nh v ki n trúc máy tính ph n c u trúc t ch c l u tr c a a 4.1.1 CÁC KHÁI NI M C B N 4.1.1.1 B nh Máy tính ph i s d ng thi t b có kh n ng l u tr th i gian dài (long-term) : Ph i ch a nh ng l Thông tin ph i ng thông tin r t l n (gi vé máy bay, ngân hàng ) c l u gi m t th i gian dài tr c x lý Nhi u ti n trình có th truy c p thông tin lúc Gi i pháp s d ng thi t b l u tr bên g i b nh 4.1.1.2 T p tin th m c T p tin T p tin n v l u tr thông tin c a b nh Các ti n trình có th c hay t o m i t p tin n u c n thi t Thông tin t p tin v ng b n không b nh h ng b i x lý t o hay k t thúc ti n trình, ch m t i user th t s mu n xóa T p tin c qu n lý b i h u hành Th m c l u tr dãy t p tin, h th ng qu n lý t p tin cung c p th m c, mà nhi u h th ng có th coi nh t p tin 4.1.1.3 H th ng qu n lý t p tin Các t p tin c qu n lý b i h u hành v i c ch g i h th ng qu n lý t p tin Bao g m : cách hi n th , y u t c u thành t p tin, cách t tên, cách truy xu t, cách s d ng b o v t p tin, thao tác t p tin Cách t ch c th m c, c tính thao tác th m c Tài li u l u hành n i b - - Giáo trình Nguyên lý h 4.1.2 MÔ HÌNH T u hành – KS Tr n Ng c Thái, môn Tin h c – i h c DL H i Phòng CH C VÀ QU N LÝ CÁC T P TIN 4.1.2.1 Mô hình T p tin Th m c T p tin : Tên t p tin : T p tin m t c ch tr u t ng qu n lý m i i t ng ph i có m t tên Khi ti n trình t o m t t p tin, s t m t tên, ti n trình k t thúc t p tin v n t n t i có th c truy xu t b i ti n trình khác v i tên t p tin ó Cách c ng t tên t p tin c a m i h u hành khác nhau, a s h u hành cho phép s d ng ch t tên t p tin nh ctdl, caycb, tamhghau v.v…, th ng th ng ký t s ký t c bi t c s d ng nh baitap2…, H th ng t p tin có th có hay không phân bi t ch th th ng hoa MS-DOS không phân bi t ng ch hoa Ví d : UNIX phân bi t ch Nhi u h th ng t p tin h tr tên t p tin g m ph n c phân cách b i d u ‘.’ mà ph n sau cg i ph n m r ng Ví d : vidu.txt Trong MS-DOS tên t p tin có t n ký t , ph n m r ng có t n ký t Trong UNIX có th có nhi u phân cách nh prog.c.Z M t s ki u m r ng thông th ng : bak, bas, bin, c, dat, doc, ftn, hlp, lib, obj, pas, tex, txt Trên th c t ph n m r ng có h u ích m t s tr nh n bi t t p tin có ph n m r ng C ng h p, ví d nh có nh ng trình d ch C ch C u trúc c a t p tin : G m lo i : Dãy tu n t byte không c u trúc : h UNIX s d ng lo i Dãy record có chi u dài c u hành không bi t n i dung c a t p tin:MS-DOS nh C u trúc : g m c a nh ng record, không c n thi t có khóa giúp cho vi c tìm ki m nhanh h n dài, m i record có m t tr ng Ki u t p tin : N uh u hành nh n bi t c lo i t p tin, có th thao tác m t cách h p lý t p tin ó Các h i u hành h tr cho nhi u lo i t p tin khác bao g m ki u nh : t p tin th ng, th m c, t p tin có ký t c bi t, t p tin kh i T p tin th ng : t p tin text hay t p tin nh phân ch a thông tin c a ng Tài li u l u hành n i b - - i s d ng Giáo trình Nguyên lý h u hành – KS Tr n Ng c Thái, Th m c : nh ng t p tin h th ng dùng T p tin có ký t c bi t : liên quan hình, máy in, m ng T p tin kh i : dùng T p tin th ng môn Tin h c – i h c DL H i Phòng l u gi c u trúc c a h th ng t p tin n nh p xu t thông qua thi t b nh p xu t tu n t nh truy xu t thi t b a c chia làm hai lo i t p tin v n b n t p tin nh phân T p tin v n b n ch a dòng v n b n cu i dòng có ký hi u enter M i dòng có dài có th khác u i m c a ki u t p tin có th hi n th , in hay so n th o v i m t editor thông th ng a s ch ng trình dùng t p tin v n b n nh p xu t, c ng d dàng làm u vào u cho c ch pipeline T p tin nh phân : có c u trúc khác t p tin v n b n M c dù v m t k thu t , t p tin nh phân g m dãy byte , nh ng h u hành ch th c thi t p tin ó n u có c u trúc úng Ví d m t m t t p tin nh phân thi hành c c a UNIX Th ng th ng bao g m n m thành ph n : header, text, data, relocation bits, symbol table Header b t u b i byte nh n di n cho bi t ó t p tin thi hành Sau ó 16 bit cho bi t kích th c thành ph n c a t p tin, a ch b t u th c hi n m t s bit c Sau header d li u text c a t p tin Nó c n p vào b nh nh v l i b i nh ng bit relocation B ng symbol c dùng debug M t ví d khác t p tin nh phân ki u archive Nó ch a th vi n ã c d ch nh ng ch a liên k t Bao g m m t header cho bi t tên, ngày t o, ng i s h u, mã b o v , kích th c… Truy xu t t p tin : Tài li u l u hành n i b - - c Giáo trình Nguyên lý h u hành – KS Tr n Ng c Thái, môn Tin h c – i h c DL H i Phòng T p tin l u tr thông tin Khi t p tin c s d ng, thông tin c a vào b nh c a máy tính Có nhi u cách truy xu t chúng M t s h th ng cung c p ch m t ph ng pháp truy xu t, m t s h th ng khác, nh IBM ch ng h n cho phép nhi u cách truy xu t Ki u truy xu t t p tin n gi n nh t truy xu t tu n t Ti n trình c t t c byte t p tin theo th t t u Các trình so n th o hay trình biên d ch c ng truy xu t t p tin theo cách Hai thao tác ch y u t p tin c ghi Thao tác c s c m t m u tin ti p theo t p tin t ng t ng tr t p tin Thao tác ghi c ng t ng t nh v y T p tin có th t kh i ng l i t v trí u tiên m t s h th ng t p tin cho phép di chuy n tr t p tin i t i ho c i lui n m u tin Truy xu t ki u thu n l i cho lo i b ng t c ng cách truy xu t thông d ng Truy xu t tu n t c n thi t cho nhi u ng d ng Có hai cách truy xu t Cách truy xu t th nh t thao tác c b t u v trí u t p tin, cách th hai có m t thao tác c bi t g i SEEK cung c p v trí hi n th i làm v trí b t u Sau ó t p tin c c tu n t t v trí b t u M t ki u truy xu t khác truy xu t tr c ti p M t t p tin có c u trúc m u tin logic có kích th c b ng nhau, cho phép ch ng trình c ho c ghi nhanh chóng mà không c n theo th t Ki u truy xu t d a mô hình c a a a cho phép truy xu t ng u nhiên b t k kh i d li u c a t p tin Truy xu t tr c ti p c s d ng tr ng h p ph i truy xu t m t kh i l ng thông tin l n nh c s d li u ch ng h n Ngoài có m t s cách truy xu t khác d ki u truy xu t nh truy xu t theo ch m c Thu c tính t p tin : Ngoài tên d li u, h u hành cung c p thêm m t s thông tin cho t p tin g i thu c tính Các thu c tính thông d ng m t s h th ng t p tin : Tên thu c tính Ý ngh a B ov Ai có th truy xu t M t kh u M t kh u c n thi t Ng it o Id c a ng Ng is h u Ng i s h u hi n t i c ghi, ch Ch c c b ng cách truy xu t t p tin i t o t p tin c Aån bình th kê ng, không hi n th li t H th ng bình th ng, t p tin h th ng Tài li u l u hành n i b - - Giáo trình Nguyên lý h u hành – KS Tr n Ng c Thái, u tr môn Tin h c – i h c DL H i Phòng ã u c backup, c n backup ASCII/binary t p tin v n b n, t p tin nh phân Truy xu t ng u truy xu t tu n t , truy xu t ng u nhiên nhiên Temp bình th thúc Khóa không khóa, khác khóa dài c a record ng, b xóa ti n trình k t S byte m t record V trí khóa Offset c a khóa m i record Gi t o Ngày gi t o t p tin Th i gian truy Ngày gi truy xu t t p tin g n nh t c p cu i Th i gian thay Ngày gi thay i cu i Kích th th i Kích th i t p tin g n nh t c hi n S byte c a t p tin c t i a S byte t i a c a t p tin Hình 8.3 M t s thu c tính thông d ng c a t p tin Th m c : H TH NG TH M C THEO C P B C : M t th m c th ng th ng ch a m t s entry, m i entry cho m t t p tin M i entry ch a tên t p tin, thu c tính a ch a l u d li u ho c m t entry ch ch a tên t p tin m t tr , tr t i m t c u trúc, ó có thu c tính v trí l u tr c a t p tin Khi m t t p tin cm ,h u hành tìm th m c c a cho t i tìm th y tên c a t p tin c m Sau ó s xác nh thu c tính c ng nh a ch l u tr a a vào m t b ng b nh Nh ng truy xu t sau ó th c hi n b nh S l ng th m c m i h th ng khác Thi t k n gi n nh t h th ng ch có th m c n(còn g i th m c m t c p), ch a t t c t p tin c a t t c ng i dùng, cách d t ch c khai thác nh ng c ng d gây khó kh n có nhi u ng i s d ng s có nhi u t p tin trùng tên Ngay c tr ng h p ch có m t ng i s d ng, n u có nhi u t p tin vi c t tên cho m t t p tin m i không trùng l p m t v n khó Cách th hai có m t t m c g c ó có nhi u th m c con, m i th m c ch a t p tin c a ng i s d ng (còn g i th m c hai c p), cách tránh c tr ng h p xung t tên nh ng c ng khó kh n v i ng i dùng có nhi u t p tin Ng i s d ng mu n nhóm ng d ng l i m t cách logic Tài li u l u hành n i b - - Giáo trình Nguyên lý h u hành – KS Tr n Ng c Thái, môn Tin h c – i h c DL H i Phòng T ó, h th ng th m c theo c p b c (còn g i th m c) c hình thành v i mô hình m t th m c có th ch a t p tin ho c m t th m c c ti p t c nh v y hình thành th m c nh h u hành DOS, Windows, v v Ngoài ra, m t s h u hành nhi u ng i dùng, h th ng xây d ng hình th c khác c a c u trúc th m c nh c u trúc th m c theo th có chu trình c u trúc th m c theo th t ng quát Các c u trúc cho phép ng i dùng h th ng có th liên k t v i thông qua th m c chia s NG D N : Khi m t h th ng t p tin c t ch c thành m t th m c, có hai cách xác nh m t tên t p tin Cách th nh t ng d n t i, m i t p tin c gán m t ng d n t th m c g c n t p tin Ví d : /usr/ast/mailbox Tài li u l u hành n i b - - Giáo trình Nguyên lý h u hành – KS Tr n Ng c Thái, môn Tin h c – i h c DL H i Phòng D ng th hai ng d n t ng i, d ng có liên quan n m t khái ni m th m c hi n hành hay th m c làm vi c Ng i s d ng có th quy nh m t th m c th m c hi n hành Khi ó ng d n không b t u t th m c g c mà liên quan n th m c hi n hành Ví d , n u th m c hi n hành /usr/ast t p tin v i ng d n t i /usr/ast/mailbox có th c dùng n gi n mailbox Trong ph n l n h th ng, m i ti n trình có m t th m c hi n hành riêng, m t ti n trình thay i th m c làm vi c k t thúc, s thay i l i h th ng t p tin Nh ng n u m t hàm th vi n thay i ng d n sau ó không i l i s có nh h ng n ti n trình H u h t h u hành u h tr h th ng th m c theo c p b c v i hai entry m c "." " " "." ch th m c hi n hành, " " ch th m c cha c bi t cho m i th 4.1.2.2 Các ch c n ng T p tin Th m c T p tin : T o : m t t p tin c t o ch a có d li u M c tiêu c a ch c n ng thông báo cho bi t r ng t p tin ã t n t i thi t l p m t s thu c tính Xóa :khi m t t p tin không c n thi t n a, c xóa hành t ng xoá t p tin sau m t kho ng th i gian n ngày t ng dung ng a M t s h u M : tr c s d ng m t t p tin, ti n trình ph i m M c tiêu c a m cho phép h th ng thi t l p m t s thu c tính a ch a b nh t ng t c truy xu t óng : ch m d t truy xu t, thu c tính a ch a không c n dùng n a, t p tin l i gi i phóng vùng nh M t s h th ng h n ch t i a s t p tin m m t ti n trình c : c d li u t t p tin t i v trí hi n th i c a v trí c a buffer l u tr u c, n i g i s cho bi t c n d li u Ghi : ghi d li u lên t p tin t v trí hi n th i c a u c N u cu i t p tin,kích th ng lên, n u ang gi a t p tin, d li u s b ghi ch ng lên Thêm : g n gi ng nh WRITE nh ng d li u Tìm :dùng hi n hành L y thu c tính :l y thu c tính c a t p tin cho ti n trình i tên :thay i thu c tính c a t p tin sau m t th i gian s d ng i tên c a t p tin ã t n t i Th m c : T o : m t th m c c t p tin s c ghi vào cu i t p tin truy xu t t p tin ng u nhiên Khi xu t hi n l i g i h th ng, v trí tr c di chuy n t i v trí c n thi t Sau ó d li u s c c ghi t i v trí Thi t l p thu c tính :thay c óng c t o, r ng, ngo i tr "." " " c Tài li u l u hành n i b - - tt ng b i h th ng ang v trí Giáo trình Nguyên lý h u hành – KS Tr n Ng c Thái, môn Tin h c – i h c DL H i Phòng Xóa :xoá m t th m c, ch có th m c r ng m i b xóa, t m c ch a "." " " coi nh th m c r ng M th m c :th m c có th c c Ví d li t kê t t c t p tin m t th m c, ch ng trình li t kê m th m c c tên c a t t c t p tin ch a ó Tr c th m c c c, ph i c m tr c óng th m c :khi m t th m c ã c c xong, ph i óng th m c gi i phóng vùng nh c th m c :L nh tr v entry ti p theo th m c ã m Thông th ng có th c th m c b ng l i g i h th ng READ, l nh c th m c luôn tr v m t entry d i d ng chu n i tên :c ng nh t p tin, th m c c ng có th c i tên Liên k t :k thu t cho phép m t t p tin có th xu t hi n nhi u th m c khác Khi có yêu c u, m t liên k t s c t o gi a t p tin m t ng d n c cung c p B liên k t :N u t p tin ch liên k t v i m t th m c, s b lo i b hoàn toàn kh i h th ng, n u nhi u b gi m ch s liên k t Câu h i ki m tra ki n th c T p tin ? Th m c ? T i ph i qu n lý t p tin th m c ? T p tin có nh ng c tính ? Nh ng c tính quan tr ng ? T i ? Nêu ch c n ng c a t p tin th m c 4.2 H TH NG QU N LÝ NH P/XU T M t nh ng ch c n ng c a h u hành qu n lý t t c nh ng thi t b nh p/xu t c a máy tính H u hành ph i ch th u n thi t b , ki m soát ng t l i H u hành ph i cung c p m t cách giao ti p n gi n ti n d ng gi a thi t b ph n l i c a h th ng giao ti p ph i c l p v i thi t b Trong tìm hi u h u hành qu n lý nh p/xu t nh th v i nh ng n i dung sau: Khái ni m v h th ng nh p/ xu t Ph n c ng nh p / xu t Ph n m m nh p / xu t Qua h c này, hi u c c ch qu n lý nh p/xu t c a h u hành m t cách t ng quát T ó có th hi u rõ h n trình nh p xu t di n máy tính thông qua h u hành nh th Bài h c c ng giúp cho vi c tìm hi u c ch t ng tác gi a h u hành thi t b nh p/xu t c th c c p h c sau) d dàng h n Bài h c òi h i nh ng ki n th c v : ki n trúc máy tính, c ch ng t máy tính 4.2.1 KHÁI NI M V H TH NG QU N LÝ NH P/XU T H th ng qu n lý nh p/xu t l p có giao ti p v i nh s c t ch c theo t ng l p, m i l p có m t ch c n ng nh t sau : Tài li u l u hành n i b - - nh Giáo trình Nguyên lý h u hành – KS Tr n Ng c Thái, CÁC L P môn Tin h c – i h c DL H i Phòng CH C N NG NH P/XU T X lý c a ng dùng i T o l i g i nh p/xu t, nh p/xu t Ph n m m l p thi t b c nh d ng t tên, b o v , t ch c kh i, b nh v m, i u n thi t Thi t l p ghi thi t b , ki m tra b tr ng thái Ki m soát ng t Báo cho driver nh p/xu t hoàn t t Ph n c ng Th c hi n thao tác nh p/xu t Ví d : Trong m t ch ng trình ng d ng, ng i dùng mu n c m t kh i t m t t p tin, h u hành c kích ho t th c hi n yêu c u Ph n m m c l p thi t b tìm ki m cache, n u kh i c n c s n, s g i ch ng trình i u n thi t b g i yêu c u n ph n c ng Ti n trình b ng ng l i cho n thao tác a hoàn t t Khi thao tác hoàn t t, ph n c ng phát sinh m t ng t B ph n ki m soát ng t ki m tra bi n c này, ghi nh n tr ng thái c a thi t b ánh th c ti n trình b ng ng ch m d t yêu c u I/O cho ti n trình c a ng i s d ng ti p t c th c hi n.[TAN] 4.2.2 PH N C NG NH P/XU T Có nhi u cách nhìn khác v ph n c ng nh p/xu t Các k s i n t nhìn d i góc thi t b nh IC, dây d n, b ngu n, motor v.v….Các l p trình viên nhìn chúng d i góc ph n m m - nh ng l nh thi t b ch p nh n, chúng s th c hi n nh ng ch c n ng nào, thông báo l i c a chúng bao g m nh ng gì, ngh a quan tâm n l p trình thi t b ch không ph i thi t b ho t ng nh th m c dù khía c nh có liên quan m t thi t v i thao tác bên c a chúng Ph n c p n m t s khái ni m v ph n c ng I/O liên quan n khía c nh l p trình 4.2.2.1 Thi t b I/O Các thi t b nh p xu t có th chia t ng i thành hai lo i thi t b kh i thi t b tu n t Thi t b kh i thi t b mà thông tin c l u tr nh ng kh i có kích th c c nh c nh v b i a ch Kích th c thông th ng c a m t kh i kho ng t 128 bytes n 1024 bytes c i m c a thi t b kh i chúng có th c truy xu t ( c ho c ghi) t ng kh i riêng bi t, ch ng trình có th truy xu t m t kh i b t k ó a m t ví d cho lo i thi t b kh i M t d ng thi t b th hai thi t b tu n t d ng thi t b này, vi c g i nh n thông tin d a chu i bits, xác nh a ch không th th c hi n thao tác seek c Màn hình, bàn phím, máy in, card m ng, chu t, lo i thi t b khác không ph i d ng a thi t b tu n t Vi c phân chia l p nh không hoàn toàn t i u, m t s thi t b không phù h p v i hai l p trên, ví d : ng h , b nh hình v.v không th c hi n theo c ch tu n t bits Ngoài ra, ng i ta phân lo i thi t b I/O d i m t tiêu chu n khác : Thi t b t ng tác c v i ng phím, chu t, máy in i : dùng giao ti p gi a ng Tài li u l u hành n i b - - i máy Ví d : hình, bàn Giáo trình Nguyên lý h u hành – KS Tr n Ng c Thái, môn Tin h c – i h c DL H i Phòng Thi t b t ng tác h th ng máy tính thi t b giao ti p v i Ví d : giao ti p a, b ng t , card Thi t b truy n th ng : nh modem Nh ng T c m khác gi a thi t b I/O g m : truy n d li u , ví d bàn phím : 0.01 KB/s, chu t 0.02 KB/s Công d ng n v truy n d li u (kh i ho c ký t ) Bi u di n d li u, u tùy thu c vào t ng thi t b c th Tình tr ng l i : nguyên nhân gây l i, cách mà chúng báo v 4.2.2.2 T ch c c a ch c n ng I/O Có ba cách th c hi n I/O : M t là, b x lý phát sinh m t l nh I/O n n v I/O, sau ó, ch tr ng thái "busy" cho n thao tác hoàn t t tr c ti p t c x lý Hai là, b x lý phát sinh m t l nh I/O n n v I/O, sau ó, ti p t c vi c x lý cho t i nh n c m t ng t t n v I/O báo ã hoàn t t, t m ng ng vi c x lý hi n t i chuy n qua x lý ng t Ba là, s d ng c ch DMA (nh Các b c c p sau) c ti n hóa c a ch c n ng I/O : B x lý ki m soát tr c ti p thi t b ngo i vi H th ng có thêm b u n thi t b B x lý s d ng cách th c hi n nh p xu t th nh t Theo cách b x lý c tách r i kh i mô t chi ti t c a thi t b ngo i vi B x lý s d ng thêm c ch ng t S d ng c ch DMA, b x lý truy xu t nh ng d li u I/O tr c ti p b nh 4.2.2.3 B u n thi t b M t n v b nh p xu t th ng c chia làm hai thành ph n thành ph n c thành ph n i n t Thành ph n nt c g i b ph n u n thi t b hay b t ng thích, máy vi tính th ng c g i card giao ti p Thành ph n c b n thân thi t b M t b ph n u n th ng có b ph n k t n i chúng có th g n thi t b lên ó M t b ph n u n có th qu n lý c hai, b n hay th m chí tám thi t b khác N u giao ti p gi a thi t b b ph n u n chu n nh ANSI, IEEE hay ISO nhà s n xu t thi t b b i u n ph i tuân theo chu n ó, ví d : b u n a c theo chu n giao ti p c a IBM Giao ti p gi a b u n thi t b giao ti p m c th p Tài li u l u hành n i b - 10 - Giáo trình Nguyên lý h u hành – KS Tr n Ng c Thái, Ch c n ng c a b u n giao ti p v i h v i thi t b Vi c thông tin thông qua h th ng môn Tin h c – i h c DL H i Phòng u hành h u hành không th truy xu t tr c ti p ng truy n g i bus Công vi c c a b u n chuy n i dãy bit tu n t m t kh i byte th c hi n s a ch a n u c n thi t Thông th ng kh i byte c t ch c thành t ng bit t buffer c a b i u n Sau th c hi n checksum n i dung c a buffer s c chuy n vào b nh Ví d : b u n cho hình c byte c a ký t hi n th b nh t ch c tín hi u i u n tia c a CRT xu t nh b ng cách quét tia d c ngang N u b u n, l p trình viên h u hành ph i t o thêm ch ng trình i u n tín hi u analog cho èn hình V i b u n , h u hành ch c n kh i ng chúng v i m t s tham s nh s ký t m t dòng, s dòng hình b u n s th c hi n u n tia M ib u n có m t s ghi liên l c v i CPU Trên m t s máy tính, ghi m t ph n c a b nh t i m t a ch xác nh g i ánh x b nh nh p xu t H máy PC dành m t vùng a ch c bi t g i a ch nh p xu t ó c chia làm nhi u n, m i n cho m t lo i thi t b nh sau : B u nh p/xu t n a ch nh p/xu t Vect ng t ng h 040 - 043 Bàn phím 060 - 063 RS232 ph 2F8 - 2FF 11 a c ng 320 - 32F 13 Máy in 378 - 37F 15 Màn hình mono 380 - 3BF - Màn hình màu 3D0 - 3DF - am m 3F0 - 3F7 14 RS232 3F8 - 3FF 12 H u hành th c hi n nh p xu t b ng cách ghi l nh lên ghi c a b u n Ví d : b i u n a m m c a IBMPC ch p nh n 15 l nh khác nh : READ, WRITE, SEEK, FORMAT, RECALIBRATE, m t s l nh có tham s tham s c ng c n p vào ghi Khi Tài li u l u hành n i b - 11 - Giáo trình Nguyên lý h u hành – KS Tr n Ng c Thái, môn Tin h c – i h c DL H i Phòng m t l nh ã c ch p nh n, CPU s r i b u n th c hi n công vi c khác Sau th c hi n xong, b u n phát sinh m t ng t báo hi u cho CPU bi t n l y k t qu c l u gi ghi 4.2.2.4 DMA (Direct Memory Access) a s lo i thi t b , c bi t thi t b d ng kh i, h tr c ch DMA (direct memory access) hi u v c ch này, tr c h t ph i xem xét trình c a mà DMA Tr c tiên, b i u n c tu n t kh i a, t ng bit t ng bit cho t i toàn b kh i c a vào buffer c ab u n Sau ó máy tính th c hi n checksum m b o l i x y Ti p theo b i u n t o m t ng t báo cho CPU bi t CPU n l y d li u buffer chuy n v b nh b ng cách t o m t vòng l p c l n l t t ng byte Thao tác làm lãng phí th i gian c a CPU Do ó t i u, ng i ta a c ch DMA C ch DMA giúp cho CPU không b lãng phí th i gian Khi s d ng, CPU g i cho b m t s thông s nh a ch a c a kh i, a ch b nh n i nh v kh i, s l d li u chuy n u n ng byte Sau b u n ã c toàn b d li u t thi t b vào buffer c a ki m tra checksum B i u n chuy n byte u tiên vào b nh t i a ch c mô t b i a ch b nh DMA Sau ó t ng a ch DMA gi m s bytes ph i chuy n Quá trình l p cho t i s bytes ph i chuy n b ng 0, b u n t o m t ng t Nh v y không c n ph i copy kh i vào b nh , ã hi n h u b nh 4.2.3 PH N M M NH P/XU T M c tiêu chung c a thi t b logic d bi u di n Thi t b logic ct i giao ti p v i ph n c ng, l p giao ti p t t, thân thi n v then ch t c a thi t b logic c l p thi t b , ví d : có th vi t ch ng m m hay a c ng mà không c n ph i mô t l i ch ng trình cho t ng lo logic ph i có kh n ng ki m soát l i Thi t b logic c t ch c thành b n thi t b , ph n m m h u hành c l p thi t b , ph n m m m c ng ch c thành nhi u l p L p i ng i s d ng Khái ni m trình truy xu t file a i thi t b Ngoài ra, thi t b n l p : Ki m soát l i, u i s d ng 4.2.3.1 Ki m soát ng t Ng t m t hi n t ng ph c t p Nó ph i c n c che d u sâu h u hành, m t ph n c a h th ng bi t v chúng Cách t t nh t che d u chúng h u hành có m i ti n trình th c hi n thao tác nh p xu t cho t i hoàn t t m i t o m t ng t Ti n trình có th t khóa l i b ng cách th c hi n l nh WAIT theo m t bi n u ki n ho c RECEIVE theo m t thông p Tài li u l u hành n i b - 12 - Giáo trình Nguyên lý h u hành – KS Tr n Ng c Thái, môn Tin h c – i h c DL H i Phòng Khi m t ng t x y ra, hàm x lý ng t kh i t o m t ti n trình m i x lý ng t Nó s th c hi n m t tín hi u bi n u ki n g i nh ng thông p n cho ti n trình b khóa T ng quát, ch c n ng c a ng t làm cho m t ti n trình ang b khóa c thi hành tr l i 4.2.3.2 i u n thi t b (device drivers) T t c n mã c l p thi t b u c chuy n n device drivers M i device drivers ki m soát m i lo i thi t b , nh ng c ng có m t t p h p thi t b liên quan m t thi t v i Device drivers phát ch th ki m tra xem ch th ó có c th c hi n xác không Ví d , driver c a a ph n nh t c a h u hành ki m soát b u n a Nó qu n lý sectors, tracks, cylinders, head, chuy n ng, interleave, thành ph n khác giúp cho thao tác a c th c hi n t t Ch c n ng c a device drivers nh n nh ng yêu c u tr u t ng t ph n m m nh p/xu t c l p thi t b l p trên, giám sát yêu c u th c hi n N u driver ang r nh, s th c hi n yêu c u, ng c l i, yêu c u ó s c a vào hàng i Ví d , b c u tiên c a yêu c u nh p/xu t ph i bi t kh i c n c, ki m tra s ho t ch a v.v… a chuy n t tr u t ng thành c th Driver c a a ng c a motor a, xác nh v trí c a u c ã úng Ngh a device drivers ph i xác nh c nh ng thao tác c a b u n ph i thi hành theo trình t M t ã xác nh c ch th cho b u n, b t u th c hi n b ng cách chuy n l nh vào ghi c a b u n thi t b B u n có th nh n m t hay nhi u ch th liên ti p sau ó t th c hi n không c n s tr giúp c a h u hành Trong l nh th c hi n Có hai tr ng h p x y : M t device drivers ph i ch cho t i b u n th c hi n xong b ng cách t khóa l i cho t i m t ng t phát sinh m khóa cho Hai là, h u hành ch m d t mà không ch , v y driver không c n thi t ph i khóa Sau h u hành hoàn t t vi c ki m tra l i n u m i th u n driver s chuy n d li u cho ph n m m c l p thi t b Cu i s tr v thông tin v tr ng thái hay l i cho n i g i n u có m t yêu c u khác hàng i, s th c hi n ti p, n u không s khóa l i ch n yêu c u ti p theo 4.2.3.3 Ph n m m nh p/xu t c l p thi t b M c dù m t s ph n m m nh p/xu t mô t thi t b nh ng ph n l n chúng c l p v i thi t b Ranh gi i xác gi a drivers ph n m m c l p thi t b c l p v m t h th ng, b i m t s hàm mà c thi hành theo ki u c l p thi t b có th c thi hành drivers lý hi u qu hay nh ng lý dó khác ó Giao ti p drivers ng nh t cho device t tên thi t b B o v thi t b Cung c p kh i c l p thi t b T ch c buffer Tài li u l u hành n i b - 13 - Giáo trình Nguyên lý h u hành – KS Tr n Ng c Thái, môn Tin h c – i h c DL H i Phòng nh v l u tr thi t b kh i C p phát gi i phóng thi t b t n hi n Báo l i Ch c n ng c b n c a ph n m m nh p/xu t c l p thi t b nh ng ch c n ng chung cho t t c thi t b cung c p m t giao ti p ng nh t cho ph n m m ph m vi ng i s d ng Tr c tiên ph i có ch c n ng t o m t ánh x gi a thi t b m t tên hình th c Ví d iv i UNIX, tên /dev/tty0 dành riêng mô t I-node cho m t file c bi t, I-node ch a ch a s thi t b chính, c dùng xác nh driver thích h p s thi t b ph , c dùng xác nh tham s cho driver cho bi t c hay ghi Th hai b o v thi t b , cho phép hay không cho phép ng i u hành có th có hay ch c n ng i s d ng truy xu t thi t b Các h Th ba cung c p kh i d li u c l p thi t b ví d nh ng a khác s có kích th c sector khác i u s gây khó kh n cho ph n m m ng i s d ng l p Ch c n ng cung c p kh i d li u logic c l p v i kích th c sector v t lý Th t cung c p buffer cho bàn phím Th n m h tr cho ng b hóa trình ho t ng c a h th ng Ví d buffer nh v l u tr thi t b kh i Th sáu c p phát gi i phóng thi t b t n hi n Cu i thông báo l i cho l p bên t l i device driver báo v 4.2.3.4 Ph n m m nh p/xu t ph m vi ng i s d ng H u h t ph n m m nh p/xu t u bên c a h u hành m t ph n nh c a chúng ch a th vi n liên k t v i ch ng trình c a ng i s d ng c nh ng ch ng trình thi hành bên h t nhân L i g i h th ng, bao g m l i g i h th ng nh p/xu t th d ch ng trình C có l nh ng c th c hi n b i hàm th vi n Ví count = write(fd, buffer, nbytes) ; Hàm th vi n write c ch liên k t d i d ng nh phân n m b nh thi hành T p h p t t c nh ng hàm th vi n rõ ràng m t ph n c a h th ng nh p/xu t Không ph i t t c ph n m m nh p/xu t u ch a hàm th vi n, có m t lo i quan tr ng khác g i h th ng spooling dùng khai thác t i a thi t b nh p/xu t h th ng a ch ng Các hàm th vi n chuy n tham s thích h p cho l i g i h th ng hàm th vi n th c hi n vi c nh d ng cho nh p xu t nh l nh printf C Th vi n nh p/xu t chu n ch a m t s hàm có ch c n ng nh p/xu t t t c ch y nh ch ng trình ng i dùng Tài li u l u hành n i b - 14 - Giáo trình Nguyên lý h u hành – KS Tr n Ng c Thái, môn Tin h c – i h c DL H i Phòng Ch c n ng c a spooling tránh tr ng h p m t ti n trình ang truy xu t thi t b , chi m gi thi t b nh ng sau ó không làm c m t kho ng th i gian nh v y ti n trình khác b nh h ng không th truy xu t thi t b ó M t ví d c a spooling device line printer Spooling cs d ng h th ng m ng nh h th ng e-mail ch ng h n TÓM T T I/O m t ph n quan tr ng không th thi u cc ah u hành, nh ng th ng không c quan tâm úng m c Trong này, ã kh o sát ph n c ng I/O, m i liên h gi a thi t b I/O v i b ki m soát thi t b Sau ó kh o sát b n c p c a ph n m m I/O : th t c ng t, u n thi t b , ph n m m c l p thi t b nh ng th vi n I/O môi tr ng ng i dùng i u n thi t b qu n lý t t c nh ng mô t chi ti t c a m t ho c nhi u thi t b Ph n m m c l p thi t b xây d ng vùng m nh v , ây nh ng vi c chung cho nhi u thi t b Câu h i ki m tra ki n th c T ch c c a h th ng qu n lý I/O nh th ? Có lo i thi t b I/O ? V i m i lo i cho ví d c th Vai trò c a b C ch ho t u n thi t b ? ng DMA nh th ? Có th th c hi n I/O mà không s d ng Nêu vai trò c a ph n m m u n thi t b không? T i sao? c l p thi t b Câu h i tr c nghi m H th ng qu n lý I/O c a h u hành : a M t c ch m i thi t b tin h c b M t ph n c a h u hành d Máy in H th ng qu n lý I/O c a m t h a Ph n c ng I/O ph n m m I/O b DMA c Bàn phím u hành bao g m : c Ki m soát ng t d a, b, c u sai DMA vi t t t c a : a Direct Management Access c Direct Memory Access b Direct Memory Application d Direct Mainboard Access Ph n m m c l p thi t b : a Do Microsoft vi t b Là m t ph n c a trình biên d ch c Là m t ph n c a h th ng qu n lý I/O d a, b, c u sai Tài li u l u hành n i b - 15 - Giáo trình Nguyên lý h 4.3 B O V u hành – KS Tr n Ng c Thái, VÀ AN TOÀN H môn Tin h c – i h c DL H i Phòng TH NG An toàn b o v h th ng ch c n ng khoông th thi u c a h u hành hi n i Trong h c này, s làm quen v i khái ni m v t ch c an toàn h th ng, c ng nh c ch b o v h tr vi c tri n khai chi n l c 4.3.1 M C TIÊU B O V H TH NG (PROTECTION) M c tiêu c a vi c b o v h th ng là: B o v ch ng l i c a ti n trình : có nhi u ti n trình ho t ng, l i c a m t ti n trình j ph i c ng n ch n không cho lan truy n h th ng làm nh h ng n ti n trình khác c bi t , qua vi c phát hi n l i ti m n thành ph n c a h th ng có th t ng ng tin c y h th ng ( reliability) Ch ng s truy xu t b t h p l : B o m b ph n ti n trình s d ng tài nguyên theo m t cách th c h p l c qui nh cho vi c khai thác tài nguyên Vai trò c a b ph n b o v h th ng cung c p m t ch vi c s d ng tài nguyên C n phân bi t khái ni m c ch chi n l ch : xác ph n c ng nh làm th áp d ng chi n l c: c qu n tr th c hi n vi c b o v , có th có c ch ph n m m ho c c ch Chi n l c: quy t nh vi c b o v c áp d ng nh th : nh ng c n c b o v , thao tác thích h p i t ng it ng h th ng h th ng có tính t ng thích cao , c n phân tách c ch chi n l c c s d ng h th ng Các chi n l c s d ng tài nguyên khác tùy theo ng d ng, th ng d thay i Thông th ng chi n l c c l p trình viên v n d ng vào ng d ng c a ch ng l i truy xu t b t h p l n tài nguyên, ó h th ng cung c p c ch giúp ng i s d ng có th th c hi n c chi n l c b o v c a 4.3.2 MI N B O V (DOMAIN OF PROTECTION ) 4.3.2.1 Khái ni m M t h th ng máy tính c xem nh m t t p i t ng (objects) M t i t ng có th m t b ph n ph n c ng ( CPU, b nh , a ) hay m t th c th ph n m m ( t p tin, ch ng trình, semaphore ) M i i t ng có m t nh danh nh t phân bi t v i i t ng khác h th ng, ch c truy xu t n thông qua thao tác c nh ngh a ch t ch c qui nh ng ngh a rõ ràng Các thao tác có th th c hi n c m t i t ng c xác nh c th tùy vào i ng có th ki m soát c tình hình s d ng tài nguyên h th ng, h u hành ch cho phép ti n trình c truy xu t n tài nguyên mà có quy n s d ng, h n n a ti n trình ch c truy xu t n tài nguyên c n thi t th i m hi n t i hoàn thành tác v (nguyên lý need-toknow) nh m h n ch l i truy xu t mà ti n trình có th gây h th ng M i ti n trình h th ng u ho t ng m t mi n b o v (protection domain) ó M t mi n b o v s xác nh tài nguyên ( i t ng) mà nh ng ti n trình ho t ng mi n b o v có th s d ng, thao tác h p l ti n trình có th th c hi n nh ng tài nguyên ó Tài li u l u hành n i b - 16 - Giáo trình Nguyên lý h u hành – KS Tr n Ng c Thái, môn Tin h c – i h c DL H i Phòng Ví d : 4.3.2.2 C u trúc c a mi n b o v Các kh n ng thao tác m t i t ng c g i quy n truy xu t (access right) M t mi n b o v m t t p quy n truy xu t, m i quy n truy xu t c nh ngh a b i m t b hai th t i t ng, {quy n thao tác} > Các mi n b o v khác có th giao m t s quy n truy xu t : Hình v 5.1 H th ng v i mi n b o v M i liên k t gi a m t ti n trình m t mi n b o v có th t nh hay ng : Liên k t t nh : su t th i gian s ng c a ti n trình, ti n trình ch ho t ng m t mi n b o v Trong tr ng h p ti n trình tr i qua giai n x lý khác nhau, m i giai n ti n trình có th thao tác nh ng t p tài nguyên khác b ng thao tác khác Tuy nhiên, n u s d ng liên k t t nh, rõ ràng t u mi n b o v ã ph i c t t t c quy n truy xu t qua giai n cho ti n trình , i u có th n cho ti n trình có d quy n m t giai n ó, vi ph m nguyên lý need-to-know có th tôn tr ng nguyên lý này, ó c n ph i có kh n ng c p nh t n i dung mi n b o v có th ph n ánh quy n t i thi u c a ti n trình mi n b o v t i m t th i m! Liên k t ng : c ch cho phép ti n trình chuy n t mi n b o v sang mi n b o v khác su t th i gian s ng c a ti p t c tuân theo nguyên lý need-to-know, thay s a i n i dung c a mi n b o v , có th t o mi n b o v m i v i n i dung thay i qua t ng giai n x lý c a ti n trình, chuy n ti n trình sang ho t ng mi n b o v phù h p theo t ng th i m M t mi n b o v có th c xây d ng cho: M t ng i s d ng : tr ng h p này, t p i t ng c phép truy xu t ph thu c vào nh danh c a ng i s d ng, mi n b o v c chuy n thay i ng i s d ng M t ti n trình : tr ng h p này, t p i t ng c phép truy xu t ph thu c vào nh danh c a ti n trình, mi n b o v c chuy n quy n u n c chuy n sang ti n trình khác M t th t c : tr ng h p này, t p c nh ngh a bên th t c, mi n b o v it ng c phép truy xu t bi n c c b c chuy n th t c c g i 4.3.3 MA TR N QUY N TRUY XU T ( ACCESS MATRIX) M t cách tr u t ng, có th bi u di n mô hình b o v ây nh m t ma tr n quy n truy xu t ( access matrix) Các dòng c a ma tr n bi u di n mi n b o v c t t ng ng v i i Tài li u l u hành n i b - 17 - Giáo trình Nguyên lý h u hành – KS Tr n Ng c Thái, môn Tin h c – i h c DL H i Phòng ng h th ng Ph n t acess[i,j] c a ma tr n xác nh quy n truy xu t mà m t ti n trình ho t ng mi n b o v Di có th thao tác i t ng Oj object F1 F2 F3 Máy in domain c D1 c D2 in c D3 x lý c c ghi ghi D4 Hình 5.2 Ma tr n quy n truy xu t ch b o v c cung c p ma tr n quy n truy xu t c cài t ( v i y thu c tính ng ngh a mô t lý thuy t), lúc ng i s d ng có th áp d ng chi n l c b o v b ng cách c t n i dung ph n t t ng ng ma tr n _ xác nh quy n truy xu t ng v i t ng mi n b o v , cu i cùng, h u hành s quy t nh cho phép ti n trình ho t ng mi n b o v thích h p Ma tr n quy n truy xu t c ng cung c p m t c ch thích h p nh ngh a th c hi n m t s ki m soát nghiêm nh t cho c ph ng th c liên k t t nh ng ti n trình v i mi n b o v : Có th ki m soát vi c chuy n i gi a mi n b o v n u quan ni m mi n b o v c ng m t ng h th ng, b sung c t mô t cho ma tr n quy n truy xu t i Khi ó ti n trình c phép chuy n t mi n b o v Di sang mi n b o v Dj n u ph n t access(i,j) ch a ng quy n « chuy n » ( switch) object F1 domain D1 D2 D3 D4 F2 F3 c Máy in D1 c D2 c ghi D4 chuy n in c D3 x lý c chuy n chuy n chuy n ghi Hình 5.3 Ma tr n quy n truy xu t v i domain m t Có th ki m soát vi c s a i n i dung ma tr n (thay n u quan ni m b n thân ma tr n c ng m t i t ng it ng i quy n truy xu t m t mi n b o v ) Các thao tác s a i n i dung ma tr n c phép th c hi n bao g m : chép quy n ( copy), chuy n quy n ( transfer), quy n s h u (owner), quy n ki m soát (control) Tài li u l u hành n i b - 18 - Giáo trình Nguyên lý h u hành – KS Tr n Ng c Thái, môn Tin h c – i h c DL H i Phòng Copy: n u m t quy n truy xu t R access[i,j] c ánh d u R* có th chép sang m t ph n t access[k,j] khác ( m r ng quy n truy xu t R i ng Oj nh ng mi n b o v Dk ) Transfer : n u m t quy n truy xu t R access[i,j] c ánh d u R+ có th chuy n sang m t ph n t access[k,j] khác ( chuy n quy n truy xu t R+ i t ng Oj sang mi n b o v Dk ) Owner : n u access[i,j] ch a quy n truy xu t owner ti n trình ho t ng mi n b o v Di có th thêm ho c xóa quy n truy xu t b t k ph n t c t j (có quy n thêm hay b t quy n truy xu t i t ng Oj nh ng mi n b o v khác) Control : n u access[i,j] ch a quy n truy xu t control ti n trình ho t ng mi n b o v Di có th xóa b t k quy n truy xu t ph n t dòng j (có quy n b b t quy n truy xu t mi n b o v Dj) object F3 F1 domain F2 D1 x lý D2 x lý D3 x lý object F1 ghi+ c* x lý (a) F3 F2 domain D1 x lý D2 x lý c* x lý D3 x lý c ghi+ (b) Hình 5.4 Ma tr n quy n truy xu t v i quy n copy , transfer (a) tr object F2 domain D1 F3 F1 owner ghi x lý D2 c* owner Tài li u l u hành n i b - 19 - c* c, (b) sau c p nh t Giáo trình Nguyên lý h u hành – KS Tr n Ng c Thái, môn Tin h c – i h c DL H i Phòng owner ghi* D3 x lý object F1 (a) F3 F2 domain owner D1 x lý D2 owner c* c* owner ghi* ghi* ghi D3 (b) Hình 5.5 Ma tr n quy n truy xu t v i quy n owner (a) tr object domain D1 D2 D3 D4 F1 F2 F3 c Máy in c in c ghi D2 D3 D4 chuy n x lý ghi Hình 5.6 Ma tr n quy n truy xu t ã s a 4.3.4 CÀI D1 c, (b) sau c p nh t chuy n control chuy n chuy n i n i dung so v i H5.3 nh quy n control T MA TR N QUY N TRUY XU T 4.3.4.1 B ng toàn c c Cách n gi n nh t cài t ma tr n truy xu t s d ng m t b ng bao g m b ba th t < mi n b o v , i t ng, quy n truy xu t > M i th c hi n thao tác M i t ng Oj mi n b o v Di, c n tìm b ng toàn c c m t b ba < Di, Oj, Rk > mà M ∈ Rk N u tìm th y, thao tác M c phép thi hành, n u không, x y l i truy xu t 4.3.4.2 Danh sách quy n truy xu t ( Access control list _ ACL) Có th cài t m i c t ma tr n quy n truy xu t nh m t danh sách quy n truy xu t i v i m t i t ng M i i t ng h th ng s có m t danh sách bao g m ph n t b hai th t Tài li u l u hành n i b - 20 - Giáo trình Nguyên lý h u hành – KS Tr n Ng c Thái, môn Tin h c – i h c DL H i Phòng , danh sách s xác nh quy n truy xu t c qui nh t ng mi n b o v có th tác ng i t ng M i th c hi n thao tác M i t ng Oj mi n b o v Di, c n tìm danh sách quy n truy xu t c a i t ng Oj m t b hai < Di,Rk > mà M ∈ Rk N u tìm th y, thao tác M c phép thi hành, n u không, x y l i truy xu t Ví d : M t mi n b o v h th ng UNIX c xác nh t ng ng v i m t ng i s d ng (uid) m t nhóm (gid) ó Gi s có ng i dùng : A,B,C,D thu c nhóm t ng ng system, staff, student, student Khi ó t p tin h th ng có th có ACL nh sau : File0 : ( A,*,RWX) File1 : ( A,system,RWX) File2 : ( A,*,RW-),(B,staff,R ),(D,*,RW-) File3 : ( *,student,R ) File4 : (C,*, -),(*,student,R ) Th c t , h th ng t p tin UNIX c b o v b ng cách m i t p tin c gán t ng ng bit b o v , t ng bit s mô t quy ntruy xu t R( c), W(ghi) hay X(x lý) c a ti n trình t p tin theo th t : ti n trình s h u ti n trình nhóm v i ti n trình s h u, ti n trình khác ây m t d ng ACL nh ng c nén thành bit 4.3.4.3 Danh sách ti m n ng c a mi n b o v (Capability list – C_List) M i dòng ma tr n quy n truy xu t t ng ng v i m t mi n b o v s m t danh sách ti m n ng (capabilities list) : c t ch c thành M t danh sách ti m n ng c a m t mi n b o v m t danh sách i t ng thao tác c quy n th c hi n i t ng ti n trình ho t ng mi n b o v M t ph n t c a C-List c g i m t ti m n ng (capability) m t hình th c bi u di n c nh ngh a m t cách có c u trúc cho m t i t ng h th ng quy n truy xu t h p l i t ng ki u ng i quy n xu t truy tr n Hình 5.7 Ti m n ng Ví d : Tài li u l u hành n i b - 21 - it ng Giáo trình Nguyên lý h u hành – KS Tr n Ng c Thái, Ti n trình ch có th th c hi n thao tác M c a Di có ch a ti m n ng t ng ng c a Oj it môn Tin h c – i h c DL H i Phòng ng Oj mi n b o v Di, n u C_List Danh sách ti m n ng c gán t ng ng v i t ng mi n b o v , th c ch t c ng m t i t ng c b o v b i h th ng, ti n trình c a ng i s d ng ch có th truy xu t n m t cách gián ti p tránh làm sai l c C_List H u hành cung c p th t c cho phép t o l p, h y b s a ng, ch ti n trình óng vai trò server (th ng ti n trình h n i dung C_List 4.3.4.4 i ti m n ng c a m t u hành) m i có th s a i i ch khóa chìa ây cách ti p c n k t h p gi a danh sách quy n truy xu t danh sách kh n ng M i i t ng s h u m t danh sách mã nh phân , c g i « khoá » (lock) C ng nh th , m i mi n b o v s s h u m t danh sách mã nh phân g i « chìa » (key) M t ti n trình ho t ng m t mi n b o v ch có th truy xu t n m t i t ng n u mi n b o v s h u m t chìa t ng ng v i m t khóa danh sách c a i t ng C ng nh C_List, danh sách « khóa » « chìa » truy xu t tr c ti p n chúng thay i n i dung ch u hành qu n lý, ng i s d ng không th 4.3.4.5 Thu h i quy n truy xu t Trong m t h th ng b o v ng, ôi h u hành c n thu h i m t s quy n truy xu t ng c chia s gi a nhi u ng i s d ng Khi ó t m t s v n nh sau : Thu h i t c kh c hay trì hoãn, trì hoãn i n ? N u lo i b m t quy n truy xu t m t s ng i s d ng? it Thu h i m t s quy n hay toàn b quy n m t ng, thu h i quy n t t c hay chi m t it ng ? Thu h i t m th i hay v nh vi n m t quy n truy xu t ? i v i h th ng s d ng danh sách quy n truy xu t, vi c thu h i có th th c hi n d dàng : tìm h y ACL quy n truy xu t c n thu h i, nh v y vi c thu h i c ht c hi n t c th i, có th áp d ng cho t t c hay m t nhóm ng i dùng, thu h i toàn b hay m t ph n, thu h i v nh vi n hay t m th i u c Tuy nhiên h s d ng C_List, v n thu h i g p khó kh n ti m n ng c phân tán kh p mi n b o v h th ng, v y c n tìm chúng tr c lo i b Có th gi i quy t v n theo nhi u ph ng pháp : Tái yêu c u (Reacquisiton): lo i b ti m n ng kh i m i mi n b o v sau t ng chu k , n u mi n b o v v n c n ti m n ng nào, s tái yêu c u ti m n ng ó l i S d ng tr n ti m n ng (Back-pointers) : v i m i i t ng, l u tr tr nh ng ti m n ng t ng ng i t ng Khi c n thu h i quy n truy xu t ng, l n theo tr c p nh t ti m n ng t ng ng Tài li u l u hành n i b - 22 - n i Giáo trình Nguyên lý h u hành – KS Tr n Ng c Thái, môn Tin h c – i h c DL H i Phòng S d ng tr gián ti p (Indirection) : ti m n ng không tr c ti p tr n i t ng, mà tr n m t b ng toàn c c h u hành qu n lý KHi c n thu h i quy n, s xoá ph n t ng ng b ng Khóa ( Key) : n u s d ng c ch khóa chìa, c n thu h i quy n, ch c n thay b t bu c ti n trình hay ng i dùng yêu c u chìa m i i khóa 4.3.5 An toàn h th ng (Security) B o v h th ng (protection) m t c ch ki m soát vi c s d ng tài nguyên c a ti n trình hay ng i s d ng i phó v i tình hu ng l i có th phát sinh t h th ng Trong ó khái ni m an toàn h th ng (security) mu n c p n m c tin c y mà h th ng trì ph i i phó không nh ng v i v n n i b , mà c v i nh ng tác h i n t môi tr ng 4.3.5.1 Các v n v an toàn h th ng H th ng c g i an toàn n u tài nguyên c s d ng úng nh quy c m i hoàn c nh Kém may m m i u hi m t c th c t ! Thông th ng, an toàn b vi ph m nguyên nhân vô tình hay c ý phá ho i Vi c ch ng phá ho i c ý r t khó kh n g n nh không th t hi u qu hoàn toàn B o m an toàn h th ng c p cao ch ng l i tác h i t môi tr ng nh ho ho n, m t n, phái ho i c n c th c hi n m c v t lý (trang b thi t b an toàn cho v trí t h th ng ) nhân s (ch n l c c n th n nh ng nhân viên làm vi c h th ng ) N u an toàn môi tr ng c b o m t t, an toàn c a h th ng s c trì t t nh c ch c a h u hành (v i s tr giúp c a ph n c ng) u ý r ng n u b o v h th ng có th t tin c y 100%, c ch an toàn h th ng c p ch v i hy v ng ng n ch n b t tình hu ng b t an h n t n an toàn t i 4.3.5.2 Ki m c cung nh danh tính (Authentication) m b o an toàn, h u hành c n gi i quy t t t v n ch y u ki m nh danh tính (authentication) Ho t ng c a h th ng b o v ph thu c vào kh n ng xác nh ti n trình ang x lý Kh n ng này, n l t nó, l i ph thu c vào vi c xác nh c ng i dùng ang s d ng h th ng có th ki m tra ng i dùng c cho phép thao tác nh ng tài nguyên Cách ti p c n ph bi n nh t gi i quy t v n s d ng password ki m nh úng danh tính c a ng i dùng M i ng i dùng mu n s d ng tài nguyên, h th ng s ki m tra password c a ng i dùng nh p vào v i password c l u tr , n u úng, ng i dùng m i c cho phép s d ng tài nguyên Password có th c b o v t ng i t ng h th ng, th m chí m t i t ng s có password khác ng v i nh ng quy n truy xu t khác ch password r t d hi u d s d ng v y c s d ng r ng rãi, nhiên y u m nghiêm tr ng c a ph ng pháp kh n ng b o m t password r t khó t c s hoàn h o, nh ng tác nhân tiêu c c có th oán password c a ng i khác nh nhi u cách th c khác 4.3.5.3 M i e d a t ch ng trình Trong môi tr ng mà m t ch ng trình c t o l p b i ng i l i có th c ng i khác s d ng, có th x y tình hu ng s d ng không úng, t ó d n n nh ng h u q a khó l ng Hai tr ng h p n hình : 4.3.5.3.1 Ng a thành Troy Tài li u l u hành n i b - 23 - Giáo trình Nguyên lý h u hành – KS Tr n Ng c Thái, môn Tin h c – i h c DL H i Phòng Khi m t ng i dùng A cho m t ch ng trình B vi t ho t ng d i danh ngh a c a ( mi n b o v c gán t ng ng cho ng i dùng A), ch ng trình có th tr thành m t « ng a thành Troy » ó o n l nh ch ng trình có th thao tác tài nguyên v i nh ng quy n t ng ng c a ng i A (mà có th ng i B v n b c m!), nhi u ch ng trình nh th ã « l i d ng hoàn c nh » gây tác h i ti c 4.3.5.3.2 Cánh c a nh ( Trap-door) M t m i e d a c bi t nguy hi m khó ch ng n t s vô tình hay ý ngh b t c a l p trình viên Khi xây d ng ch ng trình, l p trình viên có th l i m t « cánh c a nh » ph n m m mà ch có h có kh n ng s d ng , qua ó thâm nh p phá ho i h th ng ( ví d làm tròn s l nh ng tài kho n, thu l i riêng t ph n d ) V n r t khó i phó c n ph i ti n hành phân tích ch ng trình ngu n tìm ch s h 4.3.5.4 M i e d a t h th ng H u h t h u hành u cung c p ph ng ti n cho phép ti n trình ho t ng có th t o (spawn) nh ng ti n trình khác Trong môi tr ng nh th , tài nguyên h th ng t p tin c a ng i dùng có th b s d ng sai l c gây tác h i Hai ph ng pháp ph bi n phá ho i h th ng theo ph ng th c : 4.3.5.4.1 Các ch ng trình « sâu b » ( Worm) M t ch ng trình « sâu b » ch ng trình l i d ng c ch phát sinh ti n trình c a h th ng ánh b i h th ng Ti n trình « sâu bo »ï có kh n ng t ng phát sinh phiên b n c môi tr ng m ng, lan tràn nhi u máy tính khác nhau, sau ó chi m d ng tài nguyên h th ng làm ng ng tr hoàn toàn ho t ng c a ti n trình khác h th ng m ng Ví d : ch ng trình c a Robert Tappan Morris, 11/1988 lan truy n Internet 4.3.5.4.2 Các ch ng trình Virus Virus m t d ng phá ho i nguy hi m khác i v i h th ng thông tin Khác v i « sâu b » nh ng ch ng trình hoàn ch nh, virus ch nh ng n code có kh n ng lây truy n vào ch ng trình th ng khác t ó tàn phá h th ng Virus th ng hoành hành máy n, ch y u lây truy n gi a máy qua vi c trao i a m m 4.3.5.5 Giám sát m i e Nhìn chung vi c b o m an toàn h th ng r t khó có y u t ng i H u hành ch có th áp d ng m t s k thu t gi m b t kh n ng b phá ho i nh ghi nh n s ki n nh : c g ng nh p nhi u l n password sai s d ng password d ti n trình v i nh danh nghi ng không ti n trình không ch oán c y quy n c y quy n nh ng th m c h th ng ng trình kéo dài x lý m t cách ng Tài li u l u hành n i b - 24 - Giáo trình Nguyên lý h u hành – KS Tr n Ng c Thái, môn Tin h c – i h c DL H i Phòng b o v t p tin th m c không h p lý thay i kích th c c a ch ng trình h th ng Vi c ki m tra th ng k ghi nh n thông tin giúp h th ng phát hi n k p th i nguy c , cho phép phân tích , d oán cách i phó v sau TÓM T T Các i t ng h th ng ( có th ph n c ng nh CPU, b nh ; hay ph n m m nh t p tin, ch ng trình) c n ph i c b o v kh i s s d ng sai trái u có th th c hi n c b ng cách t i t ng vào nh ng mi n b o v thích h p v i quy n truy xu t c nh ngh a ó Quy n truy xu t m t it ng thao tác cphép th c hi n Mi n b o v t p quy n truy xu t m t s m t mi n b o v t i m t th i m it it ng ó ng M i ti n trình s ho t ng Ma tr n quy n truy xu t mô hình t ng quát cho toán b o v h th ng Ma tr n có th cài t nh m t m ng, danh sách quy n truy xu t ho c danh sách ti m n ng c Mô hình b o v ng cho phép ti n trình có th chuy n i mi n b o v th i gian x lý Có th t ch c mô hình b o v ng n u xem mi n b o v b n thân ma tr n quy n truy xu t c ng i t ng h th ng An toàn h th ng không ch quan tâm nguy c t môi tr ng n nguy c n i b h th ng, mà ph i i phó v i c V n quan tr ng nh t an toàn h th ng ki m nh danh tính c a ng i dùng xác nh úng quy n t ng ng c a h Ph ng pháp thông d ng nh t làm i u ki m tra password Ngoài h th ng ph i i phó v tác h i c a nh ng s t n công c ý t phía nh ng ch trình « sâu b », virus, lo i khe h ch ng trình ng Nhìn chung không th t cm c an toàn h th ng 100%, nh ng có th áp d ng bi n pháp h n ch t i a nguy c phá ho i h th ng C ng c h c Các câu h i c n tr l i c sau h c : Các khái ni m : quy n truy xu t, mi n b o v , ma tr n quy n truy xu t Các c ch b o v : ACL, Capalities Các chi n l c an toàn h th ng :ki m nh danh tính Tài li u l u hành n i b - 25 - [...]... domain F2 D1 x lý D2 x lý D3 x lý object F1 ghi+ c* x lý (a) F3 F2 domain D1 x lý D2 x lý c* x lý D3 x lý c ghi+ (b) Hình 5.4 Ma tr n quy n truy xu t v i quy n copy , transfer (a) tr object F2 domain D1 F3 F1 owner ghi x lý D2 c* owner Tài li u l u hành n i b - 19 - c* c, (b) sau c p nh t Giáo trình Nguyên lý h u hành – KS Tr n Ng c Thái, môn Tin h c – i h c DL H i Phòng owner ghi* D3 x lý object F1... chúng là h u hành có m i ti n trình th c hi n thao tác nh p xu t cho t i khi hoàn t t m i t o ra m t ng t Ti n trình có th t khóa l i b ng cách th c hi n l nh WAIT theo m t bi n u ki n ho c RECEIVE theo m t thông p Tài li u l u hành n i b - 12 - Giáo trình Nguyên lý h u hành – KS Tr n Ng c Thái, môn Tin h c – i h c DL H i Phòng Khi m t ng t x y ra, hàm x lý ng t kh i t o m t ti n trình m i x lý ng t Nó... m m c l p thi t b là c l p v m t h th ng, b i vì m t s hàm mà c thi hành theo ki u c l p thi t b có th c thi hành trên drivers vì lý do hi u qu hay nh ng lý dó khác nào ó Giao ti p drivers ng nh t cho device t tên thi t b B o v thi t b Cung c p kh i c l p thi t b T ch c buffer Tài li u l u hành n i b - 13 - Giáo trình Nguyên lý h u hành – KS Tr n Ng c Thái, môn Tin h c – i h c DL H i Phòng nh v l u... a t các ch ng trình Trong môi tr ng mà m t ch ng trình c t o l p b i ng i này l i có th c ng i khác s d ng, có th x y ra các tình hu ng s d ng không úng, t ó d n n nh ng h u q a khó l ng Hai tr ng h p n hình là : 4.3.5.3.1 Ng a thành Troy Tài li u l u hành n i b - 23 - Giáo trình Nguyên lý h u hành – KS Tr n Ng c Thái, môn Tin h c – i h c DL H i Phòng Khi m t ng i dùng A cho m t ch ng trình do B vi... ng không các ti n trình không các ch oán c y quy n c y quy n trong nh ng th m c h th ng ng trình kéo dài x lý m t cách áng ng Tài li u l u hành n i b - 24 - Giáo trình Nguyên lý h u hành – KS Tr n Ng c Thái, môn Tin h c – i h c DL H i Phòng b o v các t p tin và th m c không h p lý thay i kích th c c a các ch ng trình h th ng Vi c ki m tra th ng k và ghi nh n các thông tin này giúp h th ng phát hi n k... u l u hành n i b - 22 - n i Giáo trình Nguyên lý h u hành – KS Tr n Ng c Thái, môn Tin h c – i h c DL H i Phòng S d ng con tr gián ti p (Indirection) : các ti m n ng không tr c ti p tr n các i t ng, mà tr n m t b ng toàn c c do h u hành qu n lý KHi c n thu h i quy n, s xoá ph n t ng ng trong b ng này Khóa ( Key) : n u s d ng c ch khóa và chìa, khi c n thu h i quy n, ch c n thay b t bu c ti n trình. .. nó có quy n s d ng, h n n a ti n trình ch c truy xu t n các tài nguyên c n thi t trong th i m hi n t i nó hoàn thành tác v (nguyên lý need-toknow) nh m h n ch các l i truy xu t mà ti n trình có th gây ra trong h th ng M i ti n trình trong h th ng u ho t ng trong m t mi n b o v (protection domain) nào ó M t mi n b o v s xác nh các tài nguyên ( i t ng) mà nh ng ti n trình ho t ng trong mi n b o v này... hàm có ch c n ng nh p/xu t và t t c ch y nh ch ng trình ng i dùng Tài li u l u hành n i b - 14 - Giáo trình Nguyên lý h u hành – KS Tr n Ng c Thái, môn Tin h c – i h c DL H i Phòng Ch c n ng c a spooling là tránh tr ng h p m t ti n trình ang truy xu t thi t b , chi m gi thi t b nh ng sau ó không làm gì c trong m t kho ng th i gian và nh v y các ti n trình khác b nh h ng vì không th truy xu t thi t b.. .Giáo trình Nguyên lý h u hành – KS Tr n Ng c Thái, Ch c n ng c a b u khi n là giao ti p v i h v i thi t b Vi c thông tin thông qua h th ng môn Tin h c – i h c DL H i Phòng u hành vì h u hành không th truy xu t tr c ti p ng truy n g i là bus Công vi c c a b u khi n là chuy n i dãy các bit tu n t trong m t kh i các byte và th c hi n s a ch a n u c n thi t Thông th ng kh i các byte c t ch c thành... W(ghi) hay X(x lý) c a các ti n trình trên t p tin này theo th t : ti n trình s h u các ti n trình cùng nhóm v i ti n trình s h u, các ti n trình khác ây là m t d ng ACL nh ng c nén thành 9 bit 4.3.4.3 Danh sách ti m n ng c a mi n b o v (Capability list – C_List) M i dòng trong ma tr n quy n truy xu t t ng ng v i m t mi n b o v s m t danh sách ti m n ng (capabilities list) : c t ch c thành M t danh