Tải bản đầy đủ (.pdf) (201 trang)

GIÁO TRÌNH HỆ ĐIỀU HÀNH (OPERATING SYSTEM)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (3.73 MB, 201 trang )

ED
U
.V

N

HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
CƠ SỞ THÀNH PHỐ HỒ CHÍ MINH
KHOA CƠNG NGH THƠNG TIN

GIÁO TRÌNH

H

I U HÀNH

O

PE

N
.P

TI

T.

(OPERATING SYSTEM)

BIÊN SO N
NINH XN H I - HU NH TR NG TH A


N M 2008


L IM

U

N

H
i u Hành (Operating Systems) là m t thành ph n không th thi u trong m t h th ng máy
tính. M t máy tính m c dù đ t ti n, c u hình cao nh ng n u không có h đi u hành thì h u nh
không th s d ng đ c. H đi u hành đi u khi n m i ho t đ ng c a máy tính, giúp vi c s d ng
máy tính tr nên đ n gi n, d dàng và hi u q a h n r t nhi u. Do v y môn h c “H đi u hành” là
môn h c quan tr ng và r t c n thi t trong ch ng trình đào t o chuyên nghành tin h c h cao
đ ng và k s .

đ a ch Email:

T.

M i s góp ý ho c th c m c xin g i v


ED
U
.V

Giáo trình “H đi u hành” đ c biên so n theo ch ng trình đào t o chuyên nghành tin h c h
cao đ ng và k s c a B giáo d c và đào t o. Giáo trình đ c chia thành 6 ch ng, ch ng 1, 2,

3, 4 do gi ng viên Ninh Xuân H i biên so n, ch ng 5, 6 do gi ng viên Hu nh Tr ng Th a biên
so n. Tuy r ng chúng tôi đã có nhi u c g ng trong công tác biên so n nh ng ch c ch n giáo trình
v n còn nhi u thi u sót, nên r t mong đ c b n đ c c ng nh các đ ng nghi p đóng góp ý ki n đ
giáo trình ngày càng hoàn thi n, nh m m c đích ph c v t t h n cho vi c d y và h c tin h c đang
ngày càng phát tri n n c ta.
ho c

GV. biên so n

Ninh Xuân H i - Hu nh Tr ng Th a

O

PE

N
.P

TI

Ngày 21 Tháng 11 N m 2008

2


CH

NG I

GI I THI U H

Ch

ng “GI I THI U V

H

I U HÀNH

I U HÀNH ” s gi i thi u và gi i thích các v n đ sau:

1.1 H đi u hành là gì, các khái ni m c a h đi u hành.
1.2 L ch s phát tri n c a h đi u hành
1.3 Các lo i h đi u hành
1.4 Các d ch v c a h đi u hành.

N

1.5 C u trúc c a h đi u hành

ED
U
.V

1.6 Nguyên lý thi t k h đi u hành

1.1 CÁC KHÁI NI M
1.1.1 H đi u hành là gì?

H đi u hành (operating systems) là ch ng trình đóng vai trò trung gian gi a ng i s
d ng và ph n c ng c a máy tính. H đi u hành che d u s ph c t p, đa d ng c a ph n c ng,

giúp vi c s d ng máy tính tr nên đ n gi n, hi u qu . Nhi m v c a h đi u hành là qu n lý tài
nguyên c a máy tính, th c thi các ch ng trình ng d ng, h tr các ch c n ng m ng, vv …

ch

T.

1.1.2 Các thành ph n c a m t h th ng máy tính

M t h th ng máy tính đ c chia thành 4 thành ph n sau: ph n c ng, h đi u hành,
ng trình ng d ng/ch ng trình h th ng, ng i s d ng.

TI

+ Ph n c ng (hardware) : CPU, b nh , các thi t b nh p/xu t,…

N
.P

+ H đi u hành (operating systems): đi u khi n và ph i h p vi c s d ng ph n c ng cho nhi u
ng d ng v i nhi u ng i s d ng khác nhau.
+ Ch ng trình ng d ng và ch ng trình h th ng (system and applications programs): là các
ch ng trình gi i quy t nh ng v n đ c a ng i s d ng nh là ch ng trình d ch, h qu n tr c
s d li u, ch ng trình trò ch i, ch ng trình th ng m i,…
i s d ng (user): ng

i s d ng ho c máy tính.

O


PE

+ Ng

Hình 1.1: Các thành ph n c a m t h th ng máy tính

3


1.1.3 Các thành ph n c a m t h th ng nh p/xu t
M t h th ng nh p/xu t g m ba thành ph n sau:
+ H th ng b nh đ m (buffer-caching system)
+ Ch

ng trình đi u khi n thi t b (Drivers for specific hardware devices).

+ Ch

ng trình giao ti p v i ch

Ch

ng trình giao ti p v i ch

ng trình đi u khi n thi t b

ng trình đi u khi n thi t b

H th ng b nh đ m


N

Ch

ng trình đi u khi n thi t b (A general device-driver interface).

1.1.4 Các thành ph n c a h đi u hành
H đi u hành g m có ba thành ph n sau:

ED
U
.V

Hình 1.2: Các thành ph n c a m t h th ng nh p/xu t

+ B c p phát tài nguyên (Resource allocator): Qu n lý và c p phát tài nguyên.
+ Ch ng trình ki m soát (Control program): Ki m soát vi c th c thi ch
ho t đ ng c a các thi t b nh p/xu t.

ng trình và ki m soát

+ Ph n nhân (Kernel): là ch ng trình “lõi” c a h đi u hành, đ c th c thi tr c tiên và t n t i
trong b nh cho đ n khi t t máy (các ch ng trình khác g i là ch ng trình ng d ng).
B c p phát tài nguyên

Ch

ng trình ki m soát

T.


Ph n nhân

1.2 L CH S

TI

Hình 1.3: Các thành ph n c a h đi u hành

PHÁT TRI N C A H

I U HÀNH

N
.P

+ Giai đo n 1 (1945 – 1955): đã có máy tính l n nh ng ch a có h đi u hành.
+ Giai đo n 2 (1956 – 1965): h th ng x lý theo lô (Batch systems)
+ Giai đo n 3 (1966 – 1980): h th ng x lý đa ch
x lý đa nhi m (Multitasking systems).

ng (Multiprogramming systems) , h th ng

PE

+ Giai đo n 4 (1981 - 2007 ): h th ng đa x lý (Multiprocessor systems), h th ng x lý phân tán
(Distributed systems), h th ng x lý th i gian th c (Real-time systems), h th ng nhúng
(Embedded systems).

O


1.3 PHÂN LO I H TH NG MÁY TÍNH

M t h th ng máy tính g m hai ph n là h đi u hành và ph n c ng t
hành.

ng ng đ th c thi h đi u

1.3.1 H th ng x lý theo lô (Batch Systems)
ây là h đi u hành đ u tiên, thô s nh t.
i v i h đi u hành này thì t i m t th i đi m ch có
m t công vi c trong b nh , khi th c hi n xong m t công vi c, công vi c khác s đ c t đ ng
n p vào và cho th c thi. H đi u hành có m t ch ng trình, g i là b giám sát, th ng trú trong
b nh chính, giám sát vi c th c hi n dãy các công vi c theo th t và t đ ng.

4


đ a ch th p dành cho h

ED
U
.V

Hình 1.4: mô hình t ch c b nh c a h đi u hành x lý theo lô

N

Cách b trí b nh c a h đi u hành x lý theo lô nh sau: ph n b nh
đi u hành, ph n còn l i dành cho m t ch ng trình c a ng i dùng.


Xem m t ví d v cách th c làm vi c v i h th ng x lý theo lô:
- L p trình viên mang phi u ghi ch
- Máy s đ c ch

ng trình đ n máy 1401

ng trình t phi u và ghi ch

ng trình vào b ng t

- L p trình viên đem b ng t t i máy 7094 đ th c hi n tính toán và k t q a đ

c ghi vào b ng t

TI

T.

- L p trình viên đem b ng t ch a k t q a t i máy 1402 đ in

N
.P

Hình 1.5: ví d v cách th c x lý công vi c v i h đi u hành x lý theo lô

1.3.2 H th ng x lý đa ch

ng (MultiProgramming Systems)


PE

T i m t th i đi m có nhi u công vi c trong b nh và khi m t công vi c đang th c hi n, n u có
yêu c u nh p/xu t thì CPU không ngh mà h đi u hành s chuy n sang th c hi n công vi c khác.

O

Ví d trong b nh hi n có ba ch ng trình th c hi n ba công vi c. N u công vi c 1 yêu c u
nh p/xu t thì công vi c 1 t m ng ng, công vi c 2 (ho c công vi c 3) s đ c th c hi n. Khi thao
tác nh p/xu t c a công vi c 1 xong thì công vi c 1 s đ c th c hi n ti p, công vi c 2 s t m
ng ng,…

Hình 1.6: mô hình t ch c b nh c a h th ng x lý đa ch

ng

5


* Các ch c n ng c a h đi u hành trong h th ng x lý đa ch

ng

+ L p l ch CPU (CPU scheduling): ch n m t trong nh ng công vi c trong b nh cho th c thi
(cho s d ng CPU). Khi ch n c n tránh tr ng h p m t công vi c ch trong b nh quá lâu.
+ Qu n lý b nh (Memory management): c n ph i qu n lý ph n b nh nào đã c p phát và c p
cho công vi c nào (b nh c p phát cho m i công vi c ph i riêng bi t), ph n b nh nào ch a c p,
khi m t công vi c th c thi xong c n thu h i ph n b nh đã c p cho công vi c đó. N u m t công
vi c truy xu t đ n ph n b nh đã c p cho công vi c khác thì ph i ng n c m. N u b nh b phân
m nh quá nhi u, c n d n b nh , vv…


ED
U
.V

N

+ C p phát thi t b (Allocation of devices): tình tr ng thi t b r nh hay không r nh, thi t b đã c p
cho công vi c nào, công vi c nào c n đ a vào hàng đ i đ ch . Thi t b nào có th dùng chung và
t i đa bao nhiêu công vi c s d ng chung thi t b cùng lúc, thi t b nào không th dùng chung,…
và ph i tránh b t c ngh n (các công vi c ch vô h n đ đ c c p tài nguyên).
+ Cung c p các hàm x lý nh p/xu t (I/O routines): Các hàm nh p/xu t s che d u s ph c t p
và đa d ng c a các thi t b nh p/xu t, qu n lý vi c s d ng chung các thi t b nh p/xu t.

1.3.3 H th ng x lý đa nhi m (Multitasking Systems)

TI

T.

H th ng x lý đa nhi m là h th ng m r ng c a h th ng x lý đa ch ng. i v i h đi u hành
trong h th ng x lý đa nhi m, vi c chuy n đ i công vi c không ch công vi c đang th c thi có
yêu c u nh p/xu t, mà khi công vi c đang th c thi h t th i gian qui đ nh s d ng CPU thì vi c
chuy n đ i công vi c c ng s x y ra. M i công vi c đ c th c hi n luân phiên qua c ch chuy n
đ i CPU, th i gian m i l n chuy n đ i di n ra r t nhanh nên ng i s d ng có c m giác là các
công vi c đang đ c thi hành cùng lúc. H th ng x lý đa nhi m còn g i là h th ng chia x th i
gian (Time-Sharing Systems).

N
.P


Ví d h th ng có môt CPU và hi n có ba công vi c A, B, C trong b nh . Ba công vi c này s
đ c th c hi n luân phiên: công vi c A th c hi n trong kho ng th i gian q (quantum) thì t m
ng ng, đ n l t công vi c B th c hi n trong kho ng th i gian q, r i đ n l t công vi c C. Sau đó
l i đ n l t A, … l p l i vi c th c thi các công vi c cho đ n khi t t c các công vi c hoàn t t.
task

O

PE

C
B

A

time

Hình 1.7: các công vi c A,B,C s d ng cpu luân phiên trong h th ng x lý đa nhi m

1.3.4 H th ng đa x lý (Multiprocessor Systems)
Máy tính có nhi u b x lý cùng chia x h th ng đ ng truy n d li u, đ ng h , b nh và các
thi t b ngo i vi. M i CPU s th c hi n m t công vi c và khi đó các công vi c s th c s di n ra
đ ng th i. H th ng đa x lý còn g i là h th ng x lý song song (Parallel Systems).

6


Hình 1.7: mô hình h th ng đa x lý: có nhi u cpu nh ng s d ng chung b nh


*

u đi m c a h th ng đa x lý

+ S h ng hóc c a m t b x lý s không nh h

ng đ n toàn b h th ng.

ED
U
.V

+ Vi c liên l c gi a các công vi c d dàng b ng cách s d ng b nh dùng chung.

N

+ H th ng s th c hi n r t nhanh do th c hi n các công vi c đ ng th i trên các b x lý khác
nhau

* Phân lo i h th ng đa x lý

+ H th ng đa x lý đ i x ng (Symmetric MultiProcessing (SMP)): m i b x lý ch y v i m t
b n sao c a h đi u hành và các b x lý là ngang c p. Các h đi u hành hi n nay đ u h tr
SMP.
+ H th ng đa x lý b t đ i x ng (Asymmetric multiprocessing): Có m t b x lý chính (master

T.

processor) ki m soát, phân vi c cho các b x lý khác (slave processors).


1.3.5 H th ng x lý phân tán (Distributed Operating Systems)

N
.P

TI

T ng t nh h th ng đa x lý nh ng m i b x lý có b nh riêng. Các b x lý liên l c v i
nhau thông qua các đ ng truy n d n m ng. M ng LAN, WAN v i h đi u hành Windows,
UNIX chính là các h th ng x lý phân tán.

* Phân lo i h th ng x lý phân tán: có hai lo i
+ Peer-to-peer: h th ng m ng ngang hàng, các máy tính ngang c p, không có máy nào đóng vai
trò qu n lý tài nguyên dùng chung.

O

PE

+ Client-server: có m t máy đóng vai trò qu n lý các tài nguyên dùng chung g i là máy server
(máy ch ), các máy khác g i là máy client (máy khách). Client mu n s d ng tài nguyên dùng
chung ph i đ c server c p quy n. Mô hình h th ng client-server:

Hình 1.8: mô hình h th ng x lý phân tán

*

u đi m c a h th ng x lý phân tán

+ Dùng chung tài nguyên: máy in, t p tin …

+ T ng t c đ tính toán: phân chia công vi c đ tính toán trên nhi u v trí khác nhau
+ An toàn: N u m t v trí b h ng, các v trí khác v n ti p t c làm vi c.
+ Truy n thông tin d dàng: download/upload file, g i/nh n mail,…

7


1.3.6 H th ng x lý th i gian th c (Real-Time Systems)
H th ng s cho k t qu chính xác trong kho ng th i gian nhanh nh t. H th ng th
nh ng ng d ng chuyên d ng nh là h th ng đi u khi n trong công nghi p.

ng dùng cho

* Các lo i h th ng x lý th i gian th c
c hoàn t t đúng th i
u tiên riêng và s

ED
U
.V

+ H th ng x lý th i gian th c m m (Soft real-time): m i công vi c có m t đ
đ c thi hành theo đ u tiên.

N

+ H th ng x lý th i gian th c c ng (Hard real-time): các công vi c đ
đi m qui đ nh.

1.3.7 H th ng nhúng (Embedded Systems)


H đi u hành đ c nhúng trong các thi t b gia d ng, các máy trò ch i,... Do các thi t b gia d ng
có b nh ít, b x lý t c đ th p, kích th c màn hình nh nên h đi u hành này c n đ n gi n,
nh g n, có tính đ c tr ng cho t ng thi t b . Ví d h đi u hành dùng cho máy PDAs (Personal
Digital Assistants), Mobil phones,… H th ng nhúng còn đ c g i là h th ng c m tay (Handheld
Systems).

H đi u hành thông th

I U HÀNH

T.

1.4 CÁC D CH V C A H

ng c n cung c p các d ch v sau:

TI

- Qu n lý ti n trình
- Qu n lý b nh chính (RAM)
- Qu n lý b nh ph (DISK)

N
.P

- Qu n lý h th ng nh p xu t
- Qu n lý h th ng t p tin
- B o v h th ng


- H th ng dòng l nh

PE

- Qu n lý m ng

- Các l i g i h th ng (system calls).

O

1.4.1 D ch v qu n lý ti n trình (Process Management)

Ti n trình là m t ch ng trình đang thi hành. Trong b nh , t i m t th i đi m có th có nhi u ti n
trình, m t s ti n trình là c a h đi u hành, m t s ti n trình là c a ng i s d ng. Khi ti n trình
đ c t o ra ho c đang thi hành s đ c h đi u hành cung c p các tài nguyên đ ti n trình ho t
đ ng nh là CPU, b nh , t p tin, các thi t b nh p/xu t… Khi ti n trình k t thúc, h đi u hành s
thu h i l i các tài nguyên đã c p phát. M t ti n trình khi th c thi l i có th t o ra các ti n trình con
và hình thành cây ti n trình.

* Các ch c n ng c a d ch v qu n lý ti n trình
+ T o và h y các ti n trình c a ng

i s d ng và c a h đi u hành.

8


+ T m ng ng và th c hi n l i m t ti n trình.
+ Cung c p c ch đ ng b các ti n trình.
+ Cung c p c ch liên l c gi a các ti n trình.

+ Cung c p c ch ki m soát t c ngh n.

1.4.2 D ch v qu n lý b nh chính (Main Memory Management)

ED
U
.V

* Các ch c n ng c a d ch v qu n lý b nh chính

N

T i m t th i đi m, trong b nh chính có th có nhi u ti n trình, h đi u hành c n ph i qu n lý
ph n b nh đã c p cho m i ti n trình đ tránh xung đ t.

+ L u gi thông tin v các v trí trong b nh đã s d ng và ti n trình nào đang s d ng.
+ Quy t đ nh ch n ti n trình đ n p vào b nh chính khi b nh chính có ch tr ng.
+ C p phát b nh cho ti n trình và thu h i b nh khi ti n trình th c thi xong.

1.4.3 D ch v qu n lý b nh ph (Secondary Management)

T.

l u tr d li u lâu dài, d li u c n l u trên đ a d ng t p tin, ngoài ra đ a còn l u gi các ti n
trình khi b nh RAM không còn đ , vùng nh này g i là b nh o.

* Các ch c n ng c a d ch v qu n lý b nh ph

+ Qu n lý vùng tr ng trên đ a (Free space management)


TI

+ Xác đ nh v trí c t gi d li u (Storage allocation).

N
.P

+ L p l ch cho đ a (Disk scheduling).

1.4.4 D ch v qu n lý h th ng nh p/xu t (I/O System Management)
H đi u hành c n che d u nh ng đ c thù c a các thi t b ph n c ng, b ng cách cung c p các ch c
n ng x lý nh p xu t đ n gi n, không ph thu c vào chi ti t c a m i lo i thi t b .

O

PE

1.4.5 D ch v qu n lý h th ng t p tin (File Management)

Máy tính có th l u tr thông tin trong nhi u d ng thi t b v t lý khác nhau nh b ng t , đ a t ,
đ a quang, ... M i d ng có có kh n ng l u tr , t c đ truy n d li u và cách truy xu t khác nhau.
H đi u hành c n đ ng nh t cách truy xu t h th ng l u tr , đ nh ngh a m t đ n v l u tr là t p
tin.

* Các ch c n ng c a d ch v qu n lý h th ng t p tin
+ H tr các thao tác trên t p tin và th m c (t o/xem/xoá/sao chép/di chuy n/đ i tên).
+ Ánh x t p tin trên h th ng l u tr ph .
+ Sao l u t p tin trên các thi t b l u tr .

9



1.4.6 D ch v b o v h th ng (Protection System)
H đi u hành c n cung c p c ch đ đ m b o r ng tài nguyên ch đ c truy xu t b i nh ng ti n
trình có quy n. Ví d đ m b o r ng ti n trình ch đ c thi hành trong ph m vi đ a ch c a nó ho c
đ m b o r ng không có ti n trình nào đ c chi m CPU…

1.4.7 L i g i h th ng (system call)

ED
U
.V

N

L i g i h th ng là t p l nh do h đi u hành cung c p dùng đ giao ti p gi a ti n trình c a ng i
dùng và h đi u hành, l i g i h th ng còn g i là ng t. Các l i g i h th ng có th đ c chia
thành các lo i nh là t p l nh qu n lý ti n trình, t p l nh qu n lý t p tin, t p l nh qu n lý thi t b ,
t p l nh dùng đ liên l c gi a các ti n trình. M i l i g i h th ng có m t s hi u duy nh t dùng đ
phân bi t l i g i này v i l i g i khác. Các đ a ch n i ch a mã l nh c a các ng t (l i g i h th ng)
đ c l u trong m t b ng g i là b ng vect ng t.
Khi ti n trình dùng l i g i h th ng, c n cung c p tham s cho l i g i h th ng. Có ba ph
pháp mà ti n trình dùng đ chuy n tham s cho h đi u hành:
- Chuy n tham s vào thanh ghi

ng

- L u tr tham s trong m t b ng trong b nh và ghi đ a ch b ng vào thanh ghi
- L u tr tham s vào stack và tham s đ


c l y ra b i h đi u hành .

O

PE

N
.P

TI

T.

Ví d chuy n đ a ch b ng X (b ng ch a các tham s ) vào thanh ghi, g i ng t 13. Ng t 13 là l i
g i h th ng do h đi u hành cung c p.

Hình 1.9: truy n tham s d ng b ng cho ng t 13

Qu n lý ti n trình
L i g i hàm

Mô t

Pid=fork()

T o m t ti n trình con gi ng ti n trình cha

Pid=waitpid(pid, &statloc, options)
Exit(status)


i m t ti n trình con k t thúc
K t thúc vi c th c thi ti n trình và tr v tr ng thái

10


Qu n lý T p tin
L i g i hàm

Mô t

Fd=open(file,how,…)

M m t file đ đ c, ghi ho c c hai
óng m t file đã m tr

S=close(fd)

c đó

Ghi d li u t buffer vào file

Position=lseek(fd,offset,whence)

Di chuy n con tr file

S=stat(name,&buf)

L y thông tin tr ng thái c a file


ED
U
.V

N= write(fd,buffer,nbytes)

N

c d li u t file vào vùng đ m

N=read(fd,buffer,nbytes)

Qu n lý H th ng file và th m c
L i g i hàm

Mô t

S=mkdir(name,mode)

T o th m c m i

S=rmdir(name)

Xóa th m c r ng

S=link(name1,name2)

T om tđ it

S=unlink(name)


Xóa đ i t

S=mount(special,name,flag)

Kích ho t h th ng file

c đó

T.

ng name1 tr

ng th m c

TI

S=unmount(special)

ng m i name2 tr vào đ i t

Ng ng kích ho t h th ng file

N
.P

Hình 1.10: M t s l i g i h th ng

1.4.8 H th ng thông d ch dòng l nh (Command-Interpreter System)


PE

Là t p l nh c b n cùng trình thông d ch l nh đ ng i s d ng giao ti p v i h đi u hành. Các
l nh c b n nh l nh qu n lý ti n trình, qu n lý nh p xu t, qu n lý b nh chính, qu n lý b nh
ph , qu n lý t p tin và các l nh b o v h th ng… Các l nh trong h th ng thông d ch dòng l nh
th c ra c ng s g i các các l i g i h th ng.

O

1.4.9 Qu n lý m ng (Networking)

Cung c p các ch c n ng phân quy n, chia x tài nguyên m ng, liên l c gi a các ti n trình trên
m ng, …

1.5 C U TRÚC H

I U HÀNH

1.5.1 C u trúc đ n gi n
H đi u hành không đ c chia thành nh ng l p (ph n) rõ r t, m t l p có th g i hàm thu c b t k
l p nào khác. H đi u hành này đ n gi n, d thi t k , d cài đ t nh ng khó b o v , khó m r ng,
và khó nâng c p. Ví d h đi u hành MSDOS là h đi u hành có c u trúc đ n gi n: ch ng trình

11


ED
U
.V


N

ng d ng có th truy xu t tr c ti p các hàm nh p/xu t trong ROM BIOS đ ghi tr c ti p lên màn
hình hay b đi u khi n đ a.

Hình 1.11: C u trúc c a h đi u hành MS-DOS (c u trúc đ n gi n)

O

PE

N
.P

TI

T.

H đi u hành UNIX phiên b n đ u tiên c ng có c u trúc đ n gi n và đ c chia thành hai ph n:
ph n system calls và ph n kernel. Ph n kernel cung c p t t c các d ch v c a h đi u hành. Các
ph n có th g i l n nhau.

Hình 1.12: c u trúc c a h đi u hành UNIX phiên b n đ u tiên (c u trúc đ n gi n)

1.5.2 C u trúc phân l p
H đi u hành đ c chia thành nhi u l p, m i l p đ c xây d ng d a vào nh ng l p th p h n.
L p d i cùng là ph n c ng, l p trên cùng là l p giao ti p v i ng i s d ng. M i l p ch s
d ng nh ng hàm do l p d i cung c p. H t nhân l p k l p ph n c ng, dùng các l nh c a ph n
c ng đ t o các l i g i h th ng.


12


ED
U
.V

N

Xem mô hình phân l p hình 1.12: L p M th a k m t s hàm c a l p M-1 và có th có thêm
m t s hàm c a riêng mình. Nh ng hàm mà l p M-1 đ t thu c tính n thì l p M không đ c th a
k .

Hình 1.13: mô hình c u trúc phân l p
Ch c n ng

5

Thao tác

4

Ch

3

Qu n lý Xu t/Nh p

N
.P


1
0

ng trình ng

i dung

TI

2

T.

T ng

Truy n thông Thao tác-Ti n trình
Qu n lý b nh
a ch

ng

Hình 1.14: c u trúc phân l p c a h đi u hành THE

PE

1.5.3 C u trúc máy o

O


V i h đi u hành máy o, m t máy đ c gi l p thành nhi u máy, tài nguyên c a h th ng nh là
CPU, b nh , đ a,… đ c chia x đ t o các máy o. M i máy o đ c cô l p v i máy o khác
nên tài nguyên dùng chung đ c b o v nh ng c ng d n đ n vi c không đ c chia x tài nguyên
tr c ti p.

13


N
ED
U
.V

Hình 1.15: Mô hình c u trúc máy o

1.5.4 C u trúc Client-Server

*

N
.P

TI

T.

H đi u hành đ c chia thành nhi u ph n (g i là các ti n trình server), m i ti n trình th c hi n
m t d ch v nh là d ch v qu n lý t p tin, qu n lý ti n trình, qu n lý b nh , … Các ti n trình
yêu c u (g i là ti n trình client) s g i yêu c u đ n m t ti n trình server, ti n trình server th c
hi n và g i k t qu tr l i cho ti n trình client. H t nhân ch có nhi m v ki m soát quá trình liên

l c gi a các ti n trình client và server.

u đi m c a c u trúc client-server

+ H t nhân r t nh , ch g m các l nh c b n, nên d b o v , d nâng c p.
+ M i d ch v c a h đi u hành do m t ti n trình server đ m nh n, các ti n trình này đ c l p v i
nhau nên khi m t ti n trình server b l i, h th ng v n ho t đ ng.

PE

+ Các ti n trình server đ c th c hi n ch đ ng i dùng (user-mode), không ph i
nhân (kernel-mode), nên không truy xu t tr c ti p ph n c ng.

ch đ h t

O

+ C u trúc client-server r t thích h p v i mô hình h th ng phân tán. Các ti n trình server có th
th c thi các máy khác nhau.

Hình 1.17: Mô hình h đi u hành client-server trên m t máy

14


1. 6 NGUYÊN LÝ THI T K H

N

ED

U
.V

Hình 1.18: Mô hình h đi u hành client-server trên nhi u máy

I U HÀNH

+ H đi u hành c n d vi t, d s a l i, d nâng c p (nên vi t h đi u hành b ng ngôn ng c p cao
vì d vi t và d s a l i h n là vi t b ng ngôn ng assembly).
+ H đi u hành c n d cài đ t, d b o trì, không có l i và hi u q a.

+ H đi u hành c n d s d ng, d h c, an toàn, có đ tin c y cao và th c hi n nhanh.
+ H đi u hành c n có tính kh chuy n cao (th c hi n đ
nhau).

c trên m t nhóm các ph n c ng khác

TI

TÓM T T

T.

+ H đi u hành c n có ch ng trình SYSGEN (System Generation) thu th p thông tin liên quan
đ n ph n c ng đ thi t l p c u hình h đi u hành cho phù h p v i m i máy tính.

PE

N
.P


M t h th ng máy tính g m có ph n c ng, h đi u hành và các ch ng trình ng d ng. H đi u
hành giúp cho vi c s d ng máy tính hi u qu , đ n gi n h n. H đi u hành có nhi u lo i nh ng
thông d ng là lo i h đi u hành đa nhi m, phân tán. H đi u hành cung c p các d ch v c b n
nh d ch v qu n lý ti n trình, d ch v qu n lý b nh , d ch v qu n lý t p tin, d ch v qu n lý
nh p/xu t,… và m t t p các l i g i h th ng (ng t). H đi u hành c n thi t k sao cho d s a l i,
d cài đ t, d b o trì, không có l i, d s d ng, d h c, đ tin c y cao, th c hi n nhanh và có tính
kh chuy n cao.

CÂU H I – BÀI T P
1. Nêu m c đích chung c a h đi u hành

O

2. Phân bi t h th ng đa ch

ng và h th ng đa nhi m

3. Nêu các v n đ mà h th ng đa ch

ng/đa nhi m c n gi i quy t

3. Phân bi t h th ng đa nhi m và h th ng đa x lý
4. Phân bi t h th ng đa x lý và h th ng x lý phân tán
5. Nêu m c đích c a h th ng b nh đ m (buffer-caching system) trong h th ng nh p/xu t
6. Ch ng trình đi u khi n thi t b (Drivers for specific hardware devices) do h đi u hành cung
c p hay do hãng s n xu t thi t b cung c p?
7. Ch ng trình giao ti p v i ch ng trình đi u khi n thi t b (general device-driver interface) do
h đi u hành hay do hãng s n xu t hay do ngôn ng l p trình hay do ng i l p trình cung c p?


15


8. Ph n nhân (kernel) c a h đi u hành MS-DOS g m nh ng ch

ng trình nào?

9. Nêu khuy t đi m c a h đi u hành có c u trúc đ n gi n.

TÀI LI U THAM KH O
[1]. Gary J. Nutt, University of Colorado. Centralized And Distributed Operating Systems.
Second Edition, 2000.

N

[2]. Robert Switzer. Operating Systems, A Practical Approach. Prentice-Hall International, Inc.
1993.

ED
U
.V

[3]. Andrew S. Tanenbaum. Modern Operating Systems. Prentice-Hall International, Inc. Second
Edition, 2001.
[4]. Abraham Silberschatz & Peter Baer Galvin. Operating System concepts. John Wiley & Sons,
Inc. Fifth Edition, 1999.
[5]. H. M. Deitel. Operating Systems. Addison-Wesley Inc. Second Edition, 1999.

[6] C m nang l p trình h th ng cho máy vi tính IBM-PC t p 1 và 2, tác gi Michael Tischer.


O

PE

N
.P

TI

T.

[7]. Tr n H nh Nhi & Lê Kh c Nhiên Ân & Hoàng Ki m. Giáo trình h đi u hành (t p 1 & 2).
HKHTN 2000.

16


CH

NG 2

QU N LÝ NH P/XU T VÀ QU N LÝ H TH NG T P TIN
Ch ng “QU N LÝ NH P/XU T VÀ QU N LÝ H TH NG T P TIN” s gi i thi u và gi i
thích các v n đ sau:

2.1.1 Phân lo i và đ c tính c a thi t b nh p/xu t
2.1.2 B đi u khi n thi t b nh p/xu t
ng trình th c hi n nh p/xu t và t ch c h th ng nh p/xu t

2.1.4 C ch nh p/xu t và c ch DMA

2.1.5 Các thu t toán l p l ch di chuy n đ u đ c
2.1.6 H s đan xen và ram disk
2.2 Qu n lý h th ng t p tin

ED
U
.V

2.1.3 Các ch

N

2.1. Qu n lý nh p/xu t

2.2.1 Các khái ni m v đ a c ng, t p tin, th m c, b ng th m c
2.2.2 Các ph

ng pháp cài đ t h th ng t p tin.

ng pháp qu n lý danh sách các kh i tr ng

2.2.4 Ph

ng pháp qu n lý s an toàn c a h th ng t p tin

T.

2.2.3 Ph

TI


2.2.5 Gi i thi u m t s h th ng t p tin: MSDOS/Windows, UNIX.

2.1. QU N LÝ NH P/XU T

N
.P

2.1.1 Phân lo i và đ c tính c a thi t b nh p/xu t
* Phân lo i thi t b nh p/xu t:
+ Thi t b kh i: thông tin đ c đ c/ghi theo t ng kh i có kích th
đ nh, ví d đ a là m t thi t b kh i.

c c đ nh và có đ a ch xác

PE

+ Thi t b tu n t : thông tin đ c g i/nh n theo dãy tu n t các bit, không có đ a ch , ví d màn
hình, bàn phím, máy in, card m ng, chu t là thi t b tu n t .

O

+ Thi t b khác: có m t s các thi t b không phù h p v i hai lo i trên, ví d đ ng h không là
thi t b kh i, c ng không là thi t b tu n t .
*

c tính c a thi t b nh p/xu t:

+ T c đ truy n d li u: ví d bàn phím : 0.01 KB/s, chu t 0.02 KB/s ...
+ Dung l


ng l u tr , th i gian truy xu t m t đ n v d li u.

+ Công d ng: dùng đ nh p hay xu t
+

n v truy n d li u: truy n theo kh i ho c ký t

+ Bi u di n d li u: đi u này 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 ra l i, cách mà thi t b báo l i...

17


ng c a m t s thi t b nh p/xu t

N

Hình 2.1: th i gian truy xu t và dung l

ED
U
.V

2.1.2 B đi u khi n thi t b nh p/xu t (I/O controller)

Là ph n c ng đi u khi n tr c ti p thi t b nh p/xu t, CPU không th truy xu t tr c ti p thi t b
nh p/xuât mà ph i thông qua b đi u khi n thi t b , dùng h th ng đ ng truy n g i là bus. Ví d
b đi u khi n màn hình đ c các ký t c n hi n th trong b nh và đi u khi n các tia c a CRT
( ng phóng đi n t c a màn hình) đ xu t ký t trên màn hình. Thi t b nh p/xu t và b đi u

khi n ph i tuân theo cùng chu n giao ti p nh chu n ANSI, IEEE hay ISO…

N
.P

TI

T.

B đi u khi n thi t b nh p/xu t có th đi u khi n đ c nhi u thi t b , ví d m t b đi u khi n
màn hình (video controller) có th đi u khi n nhi u màn hình.

Hình 2.2: CPU truy xu t các thi t b nh p/xuât thông qua b đi u khi n thi t b

O

PE

M i b đi u khi n có m t s thanh ghi đ liên l c v i CPU, các thanh ghi này đ c gán m t đ a
ch xác đ nh nh là m t ph n c a b nh chính, g i là ánh x b nh nh p/xu t. Ví d :
B đi u khi n
nh p/xu t

a ch nh p/xu t

Vect ng t

(đ a ch c a các thanh ghi)

ng h


040 - 043

8

Bàn phím

060 - 063

9

RS232 ph

2F8 - 2FF

11

a c ng

320 - 32F

13

18


378 - 37F

15


Màn hình mono

380 - 3BF

-

Màn hình màu

3D0 - 3DF

-

am m

3F0 - 3F7

14

RS232 chính

3F8 - 3FF

12

N

Máy in

ED
U

.V

Hình 2.3: b ng đ a ch các thanh ghi c a m t s b đi u khi n nh p/xu t.

CPU th c hi n nh p/xu t b ng cách ghi l nh, cùng các tham s lên các thanh ghi c a b đi u
khi n, sau đó CPU s th c hi n công vi c khác. Khi b đi u khi n th c hi n xong, s phát sinh
m t ng t đ báo hi u cho CPU bi t và đ n l y k t qu (k t qu c ng đ c b đi u khi n l u trong
các thanh ghi).

2.1.3 Các ch
* Các ch

ng trình th c hi n nh p/xu t và t ch c h th ng nh p/xu t

ng trình th c hi n nh p/xu t:

+ Ch ng trình nh p/xu t c a ng
nh p/xu t đ c l p thi t b .

i dùng (user program): th c hi n các l i g i đ n ch

ng trình

T.

+ Ch ng trình nh p/xu t đ c l p thi t b : còn g i là l i g i h th ng nh p/xu t ho c ng t
nh p/xu t, do h đi u hành cung c p, ch ng trình nh p/xu t đ c l p thi t b cung c p m t giao
ti p đ ng nh t cho ch ng trình nh p/xu t c a ng i dùng.

O


PE

N
.P

TI

+ Ch ng trình đi u khi n thi t b (Device drivers): do h đi u hành ho c nhà s n xu t thi t b
cung c p, ch ng trình này ph thu c vào thi t b , s nh n nh ng yêu c u nh p/xu t c a ch ng
trình nh p/xu t đ c l p thi t b . N u device driver đang b n, yêu c u đó s đ c đ a vào hàng
đ i, ng c l i nó s th c hi n ngay yêu c u, b ng cách chuy n l nh vào thanh ghi c a b đi u
khi n thi t b (I/O controller).

Hình 2.4: S giao ti p gi a các ch

ng trình th c hi n nh p/xu t

19


* T ch c h th ng nh p/xu t
th ng qu n lý nh p/xu t đ c phân chia thành 5 l p là: ti n trình ng i dùng (user processes),
ng trình nh p/xu t đ c l p thi t b (device-independent software), ch ng trình đi u khi n
t b (device drivers), ch ng trình ki m soát ng t (interrupt handlers), ph n c ng (hardware).
i l p có ch c n ng riêng và có th giao ti p v i l p khác.

ED
U
.V


N

H
ch
thi
M

+ Ti n trình ng

T.

Hình 2.5: mô hình phân l p c a h th ng qu n lý nh p/xu t

i dùng (user processes): đ nh d ng nh p/xu t, th c hi n l i g i nh p/xu t.

TI

+ Ch ng trình nh p/xu t đ c l p thi t b (Device-independent software): đ t tên, b o v , t ch c
kh i, t ch c b đ m, c p phát,…

N
.P

+ Ch ng trình đi u khi n thi t b (Device driver): thi t l p giá tr các thanh ghi thi t b , ki m tra
tr ng thái thi t b ,…
+ Ch ng trình ki m soát ng t (Interrupt handlers): thông báo cho ch
khi thao tác nh p/xu t hoàn t t.

ng trình đi u khi n thi t b


+ Ph n c ng nh p/xu t (I/O Hardware): th c hi n thao tác nh p/xu t

O

PE

Ví d ti n trình ng i dùng (user processes) mu n đ c m t kh i d li u trên đ a, s g i yêu c u
nh p/xu t đ n ch ng trình nh p/xu t đ c l p thi t b (device-independent software), ch ng
trình này s tìm ki m kh i trong b đ m nh p/xu t, n u kh i c n đ c ch a có trong b đ m, nó s
g i ch ng trình đi u khi n thi t b (device driver). Ch ng trình đi u khi n thi t b g i yêu c u
đ n đ a c ng và ti n trình ng i dùng s t m ng ng cho đ n khi thao tác đ c đ a hoàn t t, đ a s
phát sinh m t ng t thông báo đã đ c xong, g i tín hi u ng t cho ch ng trình ki m soát ng t.
Ch ng trình ki m soát ng t ghi nh n tr ng thái c a thi t b và đánh th c ti n trình c a ng i
dùng đ ti p t c th c hi n.

20


N

2.1.4 C ch nh p/xu t và c ch DMA
* C ch nh p/xu t:

ED
U
.V

Hình 2.6: khi thao tác đ c đ a hoàn t t, b đi u khi n đ a s phát sinh m t ng t.


- B x lý phát sinh m t l nh I/O đ n các thi t b I/O, sau đó ch cho đ n khi thao tác I/O hoàn
t t r i m i ti p t c x lý, ho c:
- B x lý phát sinh m t l nh I/O đ n các thi t b I/O, sau đó ti p t c vi c x lý cho t i khi nh n
đ c m t ng t t thi t b I/O báo là đã hoàn t t nh p/xu t, b x lý t m ng ng vi c x lý hi n t i
đ chuy n qua x lý ng t, ho c:
- S d ng c ch DMA

T.

* C ch DMA (Direct Memory Access):

N
.P

TI

Xét quá trình đ c đ a, CPU g i cho b đi u khi n đ a (disk controller) l nh đ c đ a và các thông
s nh đ a ch trên đ a c a kh i, đ a ch trong b nh RAM n i s c t kh i đ c đ c, s byte c n
đ c, sau đó CPU ti p t c x lý công vi c khác. B đi u khi n s đ c kh i trên đ a, t ng bit cho t i
khi toàn b kh i đ c đ a vào buffer c a b đi u khi n (local buffer). Ti p theo b đi u khi n
phát ra m t ng t đ báo cho CPU bi t là thao tác đ c đã hoàn t t. CPU đ n l y d li u trong buffer
chuy n vào b nh chính (RAM) b ng cách t o m t vòng l p đ c l n l t t ng byte. Thao tác này
làm lãng phí th i gian c a CPU.

O

PE

t i u, b đi u khi n th ng đ c cung c p thêm kh n ng truy xu t b nh tr c ti p (DMA).
Ngh a là sau khi b đi u khi n đã đ c toàn b d li u t thi t b vào buffer c a nó, b đi u khi n

chuy n byte đ u tiên vào b nh chính t i đ a ch đ c mô t b i đ a ch b nh DMA. Sau đó nó
t ng đ a ch DMA và gi m s bytes ph i chuy n. Quá trình này l p l i cho t i khi s bytes ph i
chuy n b ng 0, và b đi u khi n t o m t ng t. Nh v y b đi u khi n t chuy n kh i vào trong b
nh chính.

Hình 2.7: C ch DMA

21


2.1.5 Các thu t toán l p l ch di chuy n đ u đ c

ED
U
.V

N

truy xu t các kh i trên đ a, tr c tiên ph i di chuy n đ u đ c đ n track thích h p, thao tác này
g i là seek và th i gian đ hoàn t t thao tác này g i là seek time. M t khi đã đ n đúng track, còn
ph i ch cho đ n khi kh i c n thi t đ n d i đ u đ c, th i gian ch này g i là latency time. Cu i
cùng là chuy n d li u t đ a vào b nh chính, th i gian này g i là transfer time. T ng th i gian
cho d ch v đ a chính là t ng c a ba kho ng th i gian trên (seek time + latency time + transfer
time). Trong đó seek time và latency time là m t nhi u th i gian nh t, do đó đ gi m thi u th i
gian truy xu t, h đi u hành c n đ a ra các thu t toán l p l ch d i đ u đ c sao cho t i u.

Hình 2.8: mô hình đ a c ng
2.1.5.1 Thu t toán FCFS (first-come, first-served)

N

.P

TI

T.

Thu t toán s d i đ u đ c theo th t đúng v i th t các kh i c n đ c, thu t toán d l p trình
nh ng ch a t t. Ví d c n ph i đ c các kh i theo th t nh sau: 98, 183, 37, 122, 14, 124, 65, và
67. Gi s hi n t i đ u đ c đang v trí 53, thu t toán s d i đ u đ c l n l t đi qua các kh i 53,
98, 183, 37, 122, 14, 124, 65, và 67

Hình 2.9: Các b

c di chuy n đ u đ c theo thu t toán FCFS

O

PE

2.1.5.2 Thu t toán SSTF (shortest-seek-time-first)

Thu t toán s di chuy n đ u đ c l n l t đ n các kh i c n đ c theo v trí g n v i v trí hi n hành
c a đ u đ c nh t. Ví d c n đ c các kh i nh sau: 98, 183, 37, 122, 14, 124, 65, và 67. Gi s
hi n t i đ u đ c đang v trí 53, thu t toán s d i đ u đ c l n l t đi qua các kh i 53, 65, 67, 37,
14, 98, 122, 124 và 183.

Hình 2.10: Các b

c di chuy n đ u đ c theo thu t toán SSTF


22


2.1.5.3 Thu t toán SCAN

ED
U
.V

N

Thu t toán s di chuy n đ u đ c v m t phía c a đ a và t đó di chuy n qua phía kia. Ví d c n
đ c các kh i nh sau: 98, 183, 37, 122, 14, 124, 65, và 67. Gi s hi n t i đ u đ c đang v trí
53, đ u đ c l n l t đi qua các kh i: 53, 37, 14, 65, 67, 98, 122, 124 và 183

c di chuy n đ u đ c theo thu t toán SCAN

Hình 2.11: Các b
2.1.5.4 Thu t toán C-SCAN

TI

T.

Thu t toán này t ng t nh thu t toán SCAN, ch khác là khi nó di chuy n đ n m t đ u nào đó
c a đ a, nó s l p t c tr v đ u b t đ u c a đ a. L y l i ví d trên, khi đó th t truy xu t các
kh i s là 53, 65, 67, 98, 122, 124, 183, 14, 37

N
.P


Hình 2.12: Các b

c di chuy n đ u đ c theo thu t toán C-SCAN

Thu t toán SCAN và C-SCAN thích h p cho nh ng h th ng ph i truy xu t d li u kh i l ng
l n. Thu t toán l p l ch ph thu c vào s kh i và ki u kh i c n truy xu t, ví d n u s kh i c n
truy xu t là liên t c thì FCFS là thu t toán t t.

PE

2.1.6 H s đan xen và Ram Disks

O

* H s đan xen (Interleave)

B đi u khi n đ a ph i th c hi n hai ch c n ng là đ c/ghi d li u và chuy n d li u vào h th ng.
đ ng b hai ch c n ng này, các sector đ c đánh s sao cho các sector có s hi u liên ti p
nhau không n m k bên nhau mà có m t kho ng cách, kho ng cách này đ c xác đ nh b i quá
trình format đ a và g i là h s đan xen.

Hình 2.13: (a) interleave=0, (b) interleave=1, (c) interleave=2

23


Ví d gi s h th ng có 17 sector/track, và interleave = 4 thì các sector đ
nh sau: 1, 14, 10, 6, 2, 15, 11, 7, 3, 16, 12, 8, 4, 17, 13, 9, 5
Cách đ c l n l


c b trí theo th t

t nh sau :

L n 1: 1, 2, 3, 4, 5
L n 2: 6, 7, 8, 9, 10
L n 3: 11, 12, 13, 14, 15
c v n là t 1 đ n 17

ED
U
.V

Nh v y sau b n l n th t các sector đ c đ

N

L n 4: 16, 17

* Ram disk:

H đi u hành có th dùng m t ph n c a b nh chính đ l u tr các kh i đ a, ph n b nh này g i
là Ram Disk . Ram Disk c ng đ c chia làm nhi u kh i, m i kh i có kích th c b ng kích th c
c a kh i trên đ a. Khi driver nh n đ c l nh đ c/ghi kh i, s tìm trong b nh Ram Disk v trí c a
kh i, và th c hi n vi c đ c/ ghi trong đó thay vì t đ a . RAM disk có u đi m là cho phép truy
xu t nhanh, không ph i ch quay hay tìm ki m, thích h p cho vi c l u tr nh ng ch ng trình
hay d li u đ c truy xu t th ng xuyên.

2.2.1


a c ng (hard disk)

TI

2.2.1.1

a c ng, t p tin, th m c

T.

2.2 QU N LÝ H TH NG T P TIN

O

PE

N
.P

a c ng đ c đ nh d ng thành các vòng tròn đ ng tâm g i là rãnh (track), m i rãnh đ c chia
thành nhi u ph n b ng nhau g i là cung (sector). M t kh i (cluster) g m m t ho c nhi u cung và
d li u đ c đ c/ghi theo đ n v kh i. Vi c s d ng đ n v kh i đ t ng hi u qu trong vi c
đ c/ghi và gi m chi phí qu n lý s đ a ch trên đ a. Ngoài ra khi đ a c ng l n, có th chia thành
nhi u phân vùng (partition), m i phân vùng g m m t s t tr (cyclinder) liên ti p. M t t tr là
t p h p các rãnh cùng bán kính.

sector

track


Hình 2.14: mô hình t ch c đ a

2.2.1.2 File (t p tin)
File là m t t p h p thông tin đ c đ t tên và l u tr trên đ a. File là đ n v l u tr thông tin nh
nh t trên đ a c a h đi u hành. File có th l u tr ch ng trình hay d li u, file có th là dãy tu n
t các byte không c u trúc ho c có c u trúc dòng (k t thúc b ng kí t enter), ho c c u trúc m u tin
có chi u dài c đ nh hay thay đ i. C u trúc file do h đi u hành ho c ch ng trình qui đ nh. File
có th truy xu t tu n t (đ c các byte theo th t t đ u file), ho c truy xu t ng u nhiên (đ c/ghi
t i m t v trí b t k trong file).

24


* Thu c tính file (file attributes)
Thu c tính c a file là các thông tin liên quan đ n file, s thu c tính c a file tùy theo h đi u hành,
nh ng th ng thì file có các thu c tính sau:
+ Tên file (file name)

+ Ki u file (file type)

ED
U
.V

N

Tên file dùng đ phân bi t file này v i file khác, UNIX phân bi t tên file ch th ng v i tên file
ch hoa nh ng WINDOWS thì không phân bi t. Trong UNIX tên file có th có nhi u phân cách
(ví d prog.c.Z), WINDOWS ch có m t phân cách. H đi u hành dùng ph n m r ng đ nh n

d ng ki u c a file và các thao tác có th th c hi n trên ki u file đó, ví d ph n m r ng là *.exe,
*.com thì h đi u hành hi u là file ki u nh phân có th th c thi nh ng n u không th c thi đ c
thì là do c u trúc file không đúng qui đ nh c a file *.exe, *.com.
Có hai lo i file là file v n b n và file nh phân. File v n b n ch a các dòng v n b n cu i dòng có
ký t xu ng dòng (kí t enter). File nh phân g m dãy các byte, có c u trúc tùy theo ch ng trình
t o ra file. Ví d file .com, .exe, .wav, .bmp,…. h đi u hành ch th c thi đ c file .com, .exe n u
nó có c u trúc đúng qui đ nh.
+ V trí file: Danh sách các kh i (cluster) trên đ a đã c p cho file.
+ Kích th

c file: Kích th

c hi n th i, kích th

c t i đa c a file tính b ng bytes/words/blocks,…

+ Ngày gi t o file, ng i t o file: Ngày, gi t o file; ngày, gi c p nh t file g n nh t; ngày, gi
s d ng file sau cùng, ng i t o file.

T.

+ Loai file: file n, ch đ c, h th ng, l u tr , file/th m c

Ý ngh a
Ai có th truy xu t file và b ng cách nào
M t kh u c n có đ truy xu t file
ID c a ng i t o file
Ng i s h u hi n t i
0: cho phép đ c/ghi; 1: ch cho phép đ c
0: bình th ng; 1: không xu t hi n khi li t kê

0: file bình th ng, 1: file h th ng
0: đã backup, 1: c n đ c backup.
0: file dùng mã ASCII, 1: file dùng mã nh phân
0: ch cho phép truy xu t tu n t ; 1: cho phép truy xu t ng u
0: bình th ng, 1: file b h y khi ti n trình k t thúc
0 : không khóa, khác 0: khóa
S bytes trong m t m u tin
offset c a khóa trong t ng m u tin
S byte c a khóa trong m u tin
Ngày gi t o file
Ngày gi truy xu t file g n nh t
Ngày gi c p nh t n i dung file g n nh t
S byte c a file
S bytes t i đa cho phép c a file

O

PE

N
.P

Thu c tính
Protection
Password
Creator
Owner
Read-only flag
Hidden flag
System flag

Archive flag
ASCII/binary flag
Random Access flag
Temporary flag
Lock flags
Record length
Key position
Key length
Creation time
Time of last access
Time of last change
Current size
Maximum size

TI

+ B o v file: Dùng account (username, password), owner/creator ho c dùng quy n đã c p cho
user, group trên file hay th m c, g m các quy n sau: quy n đ c (Read), ghi (Write), xóa
(Delete), th c thi (Execute), li t kê (List), thêm (Append)...

Hình 2.15: M t s thu c tính c a file/th m c

25


×