Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 27

Cu 1: Single Unix Specification 3 The Single UNIX Specification, Version 3 Work commenced in late 1998 on the Single UNIX

Specification, Version 3. The core of the Single UNIX Specification, Version 3, collectively known as the Base Specifications, was developed, and is maintained, by a joint working group of members of the IEEE Portable Applications Standards Committee, members of The Open Group, and members of ISO/IEC Joint Technical Committee 1. This joint working group is known as the Austin Group.1 The Austin Group arose out of discussions amongst the parties which started in early 1998, leading to an initial meeting and formation of the group in September 1998. This represented a seachange in attitude regarding development of two related specifications by three development organizations, which to date had been developed separately, often with the same standards developers involved. The purpose of the Austin Group has been to revise, combine, and update the following standards: ISO/IEC 9945-1, ISO/IEC 9945-2, IEEE Std 1003.1, IEEE Std 1003.2, and the Base Specifications of The Open Group Single UNIX Specification. After two initial meetings, an agreement was signed in July 1999 between The Open Group and the Institute of Electrical and Electronics Engineers (IEEE), Inc. to formalize the project, with the first draft of the revised specifications being made available at the same time. Under this agreement, The Open Group and IEEE agreed to share joint copyright of the resulting work. The Open Group has provided the chair and secretariat for the Austin Group. This unique development has combined both the industry-led efforts and the formal standardization activities into a single initiative, and included a wide spectrum of participants including commercial, academia, government, and the open source communities. The approach to specification development was one of ``write once, adopt everywhere'', with the resulting set of specifications being approved as IEEE Std 1003.1-2001 (POSIX), ISO/IEC 9945:2002 (parts 1 to 4), and The Open Group Base Specifications, Issue 6. This set of specifications forms the core of the Single UNIX Specification, Version 3. The Base Specifications, Issue 6 consist of the following Technical Standards: Base Definitions, Issue 6 (XBD) Shell and Utilities, Issue 6 (XCU) System Interfaces, Issue 6 (XSH) Rationale (Informative) The revision of the Base Specifications has tried to minimize the number of changes required to implementations which conform to the earlier versions of the approved standards to bring them into conformance with the current standard. Specifically, the scope of this work excluded doing any ``new'' work, but rather collecting into a

single document what had been spread across a number of documents, and presenting it in what had been proven in practice to be a more effective way. Some changes to prior conforming implementations were unavoidable, primarily as a consequence of resolving conflicts found in prior revisions, or which became apparent when bringing the various pieces together. However, since the revision now references the 1999 version of the ISO C standard, there are a number of unavoidable changes that have been made which will affect applications portability. In addition to the Base Specifications, the Single UNIX Specification, Version 3 includes the X/Open Curses, Issue 4, Version 2 specification. Updates to X/Open Curses, Issue 4, Version 2 have been limited to production of a Corrigendum to allow it to exist in a Base Specifications, Issue 6 environment. Cu 2: Kernel ca Linux a. Nu cc chc nng chnh ca Linux Kernel: Kernel l mt tp hp file thi hnh v d liu c np bi h thng ti thi im khi ng. Kernel chi phi mi hot ng trn h thng: - Truy cp phn mm vo cc thit b phn cng - Lp k hoch tin trnh ngi s dng - Qun l b nh - Qun l cc thao tc vo ra a b. Trnh by tm tt cc bc trin khai mt Linux kernel mi: Bc 1: - chy make config (hoc make menuconfig, make xconfig) - chy make dep tp hp cc phn ph thuc i vi tng file ngun - chy make clean xa b cc file i tng c - chy make bzImage xy dng li kernel Bc 2: sao chp /arch/i386/boot/bzImage n /boot/vmlinuz-2.4.19-16 Bc 3: sao chp System.map n /boot/System.map-2.4.19-16 Bc 4: sao chp config n /boot/config-2.4.19-16 Bc 5: chy make module Bc 6: chy make module_install Bc 7: son tho ni dung file /etc/lilo.conf nh sau: image=/boot/vmlinuz-2.4.19-16 label=My New Kernel read-only

Bc 8: thc hin lnh /sbin/lilo -v Bc 9: khi ng li h thng bng lnh /sbin/reboot Cu 3: H thng tp tin trn Linux a. Lit k v miu t cc th mc chnh ca Linux: - Trong cc th mc ng dng ca Unix th ngi ta chia ra lm hai loi th mc chnh : + Th mc tnh (Static) cc file hay cc th mc con trong n cng l static + Th mc ng (Dynamic) - Trong Static gm cc th mc sau: + BIN +LBIN +LIB + Share + Newconfig + /etc + /dev + /tmp - Cc Th mc Dynamic : +/usr +/sbin +/opt /home lu cc file ngi s dng /bin cc lnh Unix c bn cn thit nht, file chng trnh thc thi v file khi ng h thng /usr/bin cc lnh c dng bi ngi s dng c bit v dng qun tr h thng

/boot l ni m kernel v cc file khc c dng trong khi khi ng /etc cha cc file cu hnh ton cc ca h thng /var cc file qun tr nh file bn ghi, c cc tin ch s dng /var/spool lu tm thi cc file s c in, do UUCP truyn i /usr/lib cc th vin chun nh libc.c /usr/lib/X11 cc sn phm h thng X Window System, th mc ny cha cc th vin c cc my khch X s dng. Ngoi ra, n cn cha cc font ch, cc file ti nguyn mu v nhiu phn quan trng khc ca gi X. /usr/include v tr chun bao gm cc file c dng trong chng trnh C nh <stdio.h> /usr/src l v tr ngun ca nhng chng trnh c ci t trong h thng /usr/local cc chng trnh v file d liu c ngi qun tr h thng b sung thm mt cch cc b

/etc/skel cc file khi ng mu m bn c th t trong th mc ch dnh cho nhng ngi mi dng /dev cha cc file thit b b. Tho lp (mount, unmout) mt h thng tp tin vo Linux vo cy th mc: - Lnh mount kt gn cc phn vng hay nhng thit b a vt l thnh mt th mc trong cy th mc thng nht ca h iu hnh bt u t gc c c php nh sau: Mount t vfstype devicefile mdir Devicefile: l ng dn n file thit b ( thng lu trong th mc /dev, v d a A : l file thit b /dev/fd0, a CD-rom l /dev/cdrom, cc phn vng l /dev/hda1, /dev/hda2..) Tham s -t s kt gn theo kiu h thng file trn thit b do vfstype qui nh Mdir l ng dn cn kt gn vo h thng file ca Linux (msdos, ntfs, ext2, nfs, iso9660) V d: kt gn a A trong Linux c cc file theo h thng bng FAT ca DOS: to th mc kt gn: $ mkdir /dos gi lnh mount: $mount t msdos /dev/fd0 /dos - Lnh unmount tho kt gn c c php nh sau: unmount ng dn n th mc V d: tho kt gn a A: $ unmount /dos c. Duy tr h thng tp tin khi khi ng, mi khi b cp in bt thng: - Cc bn ci t Linux thng cung cp trnh Boot Loader mang tn LILO. Khi kt thc qu trnh ci t Linux, bn thng c hi c mun ci t trnh Boot Loader hay khng, lc ny bn nn chn: Ci t trnh Boot Loader (LILO) ln a mm: LILO s c ci t ln sector u tin ca a mm. LILO ghi nh thng tin v phn vng m ht nhn Linux ci t trn a cng.

d. Cc loi h thng tp tin (file system) m Linux h tr: H thng file Loi Din gii H thng file m rng th hai (Second Extended filesystem) ext2 H thng file Linux ph bin nht H thng file Minix minix H thng file Minix i u, him khi c s dng H thng file ROM romfs H thng file ch c (read-only) rt nh, ch yu dng cho

a RAM H thng file mng (NFS) NFS cho php truy cp cc file t xa trn mng H thng file UMSDOS umsdos ci t Linux trn vng chia MS-DOS H thng file DOS-FAT msdos truy cp file MS_DOS H thng file VAFT vfat truy cp file Windows 95/98 H thng file NT ntfs truy cp WindowsNT H thng file HPFS hpfs h thng file /2 H thng file /proc proc cung cp tin trnh thng tin cho ps H thng file ISO 9660 iso9660 c hu ht CD-ROM s dng H thng file Joliet iso9660 phn m rng cho h thng file ISO 9660 c th x l tn file Unicode H thng file Xenix xenix truy cp file t Xenix H thng file System V sysv truy cp file t bin th h thng V H thng file Coherent coherent truy cp cc file t Coherent H thng file UFS ufs truy cp cc file t h thng file UFS, ging nh file trn SunOS hoc BSD H thng file ADFS adfs truy cp file t cc vng chia Acn H thng file AFFS affs truy cp file t cc vng chia h thng file AmigaOS chun H thng file Apple Mac hfs truy cp file t Apple Macintosh H thng file QNX4 qnx4 truy cp file t cc vng chia QNX4 H thng file Novell ncpfs truy cp file t server Novell H thng file SMB smbfs truy cp file t Windows cho cc nhm lm vic hoc my ch Windows NT

Cu 4: Samba Samba l mt dch v cho php Windows c c cc ti nguyn mng ca Linux, V Windows share ti nguyn ra mng theo c ch Server Message Block (SMB) nn Linux chi ch ly ch Samba lm tn service lun. Trn Linux nu bn active dch v Samba th bn c th to cc share resource m Windows c th truy cp c. Rt tin nu nh chng ta c nhiu my tnh cng chy song song Windows v Linux. Trc y cha c Samba, vic chia x cc ti nguyn gia Linux v Windows fi thng wa FTP, m cu hnh FTP th hi nng hn so vi Samba. Vic cu hnh Samba th cng n gin thi, ch cn ch ra cc user no trn Windows c php truy xut vo cc ti nguyn c share, share ti nguyn no ra mng, tn workgroup ca Samba server v active service ln l xong. Khi cu hnh v active xong Samba service, bn c th vo Network Neighborhood ca Windows search cc ti nguyn trn cc my Linux.

Samba thc cht cha vi chng trnh phc v cho nhng mc ch khc nhau nhng c lin quan n nhau. Ht nhn ca samba l hai Daemon co nhim v sau: - smbd Chu trch nhim iu khin cc ti nguyn c chia s gia server samba v cc client ca n. N cung cp cc dch v v file, in v trnh duyt cho cc client SMB thng qua mt hay nhiu mng. smbd s l tt c cc trao i gia server samba v cc client mng ca n. -nmbd : L mt server dch v tn n gin bt chc cc chc nng my ch dch v tn, chy vi giao thc WIN v NETBIOS. Daemon ny lng nghe cc yu cu ca my ch dch v tn v cung cp cc thng tin thch hp khi c gi ti . N cn cung cp cc danh sch duyt NetworkNeighbourhood v tham gia vo la chn cc i tng mng trong . Giao thc NETBEUI c hng IBM pht trin vo nm 1985 da trn giao thc NETBIOS. n c thit k dng cho mng LAN nh v cho php mt my tnh c tn di n 15 k t. Khi tham gia mi trng mng th Mdaemon nmbd ca samba s m nhn giao tip vi cc my khc thng qua giao thc NETBEUI. Nhng khi mt my chy Unix c tn y l sangdv.edu.vn th NETBEUI ch hiu tn my l sangdv phn 9 byte cn li l cc k t trng. Cc tp tin cu hnh (hay chnh l cc lnh) ca SAMBA: - smbclient: mt client ca unix theo kiu ftp, c th dng tin ch ny kt ni vi ti nguyn c share - smbtar: lu tr cc ta nguyn c chia s, tng t nh lnh tar ca unix - mklookup: Chng trnh cung cp NETBIOS thng qua vic tm tn bng TCP/IP - smbpasswd: Cho php ngi qun tr thay i mt khu m ho ca Samba - smbstatus : Bo co cc kt ni mng hin thi ti cc ti nguyn uc chia s trn samba - testparrm: chng trnh n gin lm cho file samba c hiu lc

Cau 5: NFS (Network Filesystem) 1. Gii thieu ve NFS He thong file mang NFS, la mot dch vu c dung kha pho bien. NFS c xay dng tren viec goi thu tuc t xa, cho phep s dung cac file cac client xa giong nh chung tren cuc bo. NFS bao gom chng trnh client tren may can s dung cac file va chng trnh server cung cap cac file. NFS c s dung tren nhieu he thong khac nhau, viec truy cap cac file la trong suot oi vi ngi s dung. NFS co cac u iem sau: - D lie danh cho ngi s dung co the at tren mot tram tap trung, cac tram khac co the thiet lap th muc nay khi khi ong. Mot v du ien hnh la khi dung NIS (Network Information System), tat ca cac tai khoan cua ngi s dung c lu tren may chu, th muc /home tren may chu c thiet lap tren cac tram luc khi ong. Khi co ngi dung co the ang nhap vao bat ky tram nao nhng th muc home cua ho khong thay oi. - D lieu chiem nhieu dung lng a co the c gi tai mot tram va phan phoi cho cac tram khac.

Thong tin quan tr mang c tap trung tai mot tram. Khong can phai dung rpc e thiet lap cac file cau hnh giong het nhau tren tat ca cac tram. 2. NFS hoat ong nh the nao Mot chng trnh client co the thiet lap mot th muc cua mot tram xa tren mot th muc cua mnh bang lenh mount giong nh oi vi cac thiet b lu tr. Ch lu y cach thc e ch ra th muc tren mot tram xa la hostname:/dirname, v du tren tram may1 ta thc hien: $ mount -t nfs may2:/home /users Lenh mount se ket noi vi chng trnh mountd tren tram may2 thong qua cac thu tuc RPC. Mountd kiem tra xem th muc /home co c phep thiet lap xa hay khong. Neu co mountd se tra ve mot file handle e s dung cho cac yeu cau truy cap en th muc /users tren may1. Khi ngi s dung truy cap fileyten NFS, mot li mi goi RPC se c gi ti nsfd (NFS deamon) tren may chu. Tham so cua thu tuc nay la file handle, ten file can truy cap, uid va gid. Cac tham so nay c e xac nh quyen truy cap cua ngi dung. e tranh viec sa va oc cac file trai phep, uid va gid phai trung nhau tren ca may client va server. 3. Chuan b cho NFS Trc khi s dung NFS, cho du la server hay client th kernel he thong phai ho tr NFS. e kiem tra ta co the truy cap vao Kernel thong qua giao dien /proc/filesystem: $ cat /proc/filesystems minix ext2 msdos nodev proc nodev nfs Neu nfs khong c liet ke trong danh sach he thong file, ta can bien dch lai kernel vi tuy chon la co ho tr nfs
Cau 6: Access Permissions Trong mi tp tin v th mc Linux c mt ch s hu v mt nhm, cng nh mt tp hp quyn truy cp, Bn c th thay i cc quyn truy cp, quyn s hu tp tin v th mcnhm cung cp truy cp nhiu hn hay t hn. Khi to ra mt tp tin, mc nh bn l ch nhn tp tin v user ca bn hin th ct th 3 trong danh sch tp tin, bn thuc nhm no khi to tp tin th ct th 4 L ch s hu tp tin tp tin bn c quyn thay i quyn truy cp tp tin, tt nhin

nu bn chuyn quyn s dng tp tin cho ngi dng khc bn s khng cn quyn s hu tp tin na C 3 loi quyn truy cp khc nhau trn tp tin hay th mc: Read , Write (w) v Execute(x) Vi quyn Read bn c th xem c ni dung tp tin hoc nu l th mc th c th lit k ni dung th mc bng lnh ls Vi quyn Write bn c th sa i ni dung hay xo tp tin hoc nu l th mc th c th ghi, chuyn, hay xo cc tp tin c trong th mc Vi quyn Execute bn c th gi thi hnh tp tin bng cch g tn tp tin hoc nu l th mc th c th vo trong th mc bng lnh cd Da trn 3 loi quyn ny, Linux chia ngi dng h thng thnh 3 loi quyn: c, ghi v thi hnh cho ch s hu, c, ghi v thi hnh cho ngi dng cng nhm vi ch s hu, c, ghi v thi hnh cho ngi dng khc,cc quyn ny c ghi ln lt theo th t

Lnh cho xem quyn hn ca tp tin, th mc V d: Khi lit k danh sch th mc bng lnh ls l bn thy c rt nhiu thng tin hin th ngoi tn tp tin. -rwxr-xr-x 2 tparker group 4512 May 9 09:20 book1 C 7 trng d liu trong danh sch th mc ny. Ln lt t tri sang phi l Tp hp quyn truy cp S lin kt User ID s hu tp tin (tparker) Nhm s hu tp tin Kch thc tp tin Ngy gi to tp tin Tn tp tin K t u tin bo hiu y l tp tin bnh thng, nu l th mc k t u tin s l d (directory) 9 k t tip theo chia thnh 3 b 3 th hin quyn truy cp tp tin cho ch s hu (owner) , nhm (group) , khc (other) nu thiu vng 1 quyn s c lp bng k t Thay i quyn s hu tp tin

Bn c th thay i quyn s hu tp tin thng qua lnh chown (change ownership) chown <owner> <filename> Trc khi chuyn quyn s hu tp tin, Linux se kim tra xem User ID c tn ti hay khng? bn c th s dng k t i din chuyn quyn s hu nhiu file mt lc Thay i quyn truy cp tp tin c th thay i quyn truy cp tp tin, bn s dng lnh chmod (change mode of a file) chmod <specification> file c 2 cch ghi c t quyn truy cp, dng h thng m s cho cc quyn truy cp (gi l xc lp tuyt i) hoc dng h thng ch ci (xc lp tng trng) - Xc lp tuyt i, s dng b s bt phn 0 hay --1 hay --x 2 hay -w3 hay -wx 4 hay r-5 hay r-x 6 hay rw7 hay rwx Bn phi ch r con s no p dng cho ch s hu, nhm, hay khc VD chmod 345 myfile - Xc lp tng i Bn c 4 nhm k t tng trng l u (user), g (group), o (other), a (all) K t ny i vi du + b sung quyn hoc i vi du - loi b quyn VD Chmod ugo-rw myfile b quyn c ghi cho user, group, other Thay i quyn truy cp th mc Tng t nh vi quyn truy cp cho tp tin, ch nu th mc khng c quyn execute s khng th vo trong th mc vi lnh cd Cu 8: User va password

- Khi chng tao to mt user th Unix s to ra trong th mc /etc cc file + /etc/passwd : CHa thng tin v user gm c passwd. Ni dung file ny l: user1:x:1001:20:111-1111:/home/user1:/usr/bin/sh user2:x:1002:20:222-2222:/home/user2:/usr/bin/sh Trong x: l dng m ho ca passwd, 1001 l m ID ca user, 20 l m User group, 111 l cc comments, /home/user1 l Home directory ca user cn /user/bin/sh l shell + /etc/shadow: l file du file passwd. Ni dung file ny nh sau: user1:haha:12269:70:140:70:35:: Trong : User1 l user; haha l m ho ca pass, 12269 l s ca cc ngy tnh t 1/1/1970 m pass c thay i, 70 l s ngy nh nht phi thay i pass, 140 l ngy ln nht m Pass khng cn hiu lc, 70 (tip) l s ngy m ngi s dng c cnh bo trc khi pass ht hiu lc. 35 l s ngy ti a cho php khng hot ng sau khi pass ht hiu lc. :: sau cng l khng s dng + /etc/group l file nh ngha user nm trong group no. Ni dung file ny l: users::10: admin::1001:user1,sangdv oracle::1002:user1,user2,maianh Trong : Admin, oracle l tn group; 1001, 1002 l groupID; user1,user.... l cc user trong group .

Cu 9 Trnh by v h thng tp tin v ng dn a. Tn tp tin v ng dn Tn tp tin: D liu lu tr trn my tnh di dng cc tp tin . Tp tin l mt c ch tru tng ca h iu hnh nhm cung cp mt cch thc lu tr cng nh truy cp thng tin trn a. Nh vo tp tin m ngi dng khng cn phi bit chi tit thng tin c lu tr u, phi ly thng tin nh th no... Khi tin trnh to ra mt tp tin, n buc phi cung cp cho tp tin mi to ra mt ci tn. Khi tin trnh ny kt thc, tp tin c to ny vn tn ti v c th c s dng bi cc tin trnh khc. Cc h iu hnh khc nhau c cc quy tc khc nhau trong vic t tn tp tin. Tuy nhin hu ht cc h thng u chp nhn tn tp tin l mt xu k t bao gm cc ch ci v ch s v d myfile, mydoc2. Cc k t c bit nh %, !, # ... thng khng c chp nhn. Chiu di tn tp tin cng khc nhau gia cc h iu hnh. Mt s h thng ch chp nhn tn tp tin c 8 k t trong khi mt s khc c th chp nhn tn tp tin di ti 255 k t. Vic phn bit ch

hoa v ch thng trong tn tp tin cng khc nhau trong cc h thng khc nhau. i vi mt s h thng v d nh UNIX, cc tp tin c tn myfile, Myfile hay MYFILE l cc tp tin khc nhau trong khi vi mt s khc v d nh MSDOS, y l tn ca cng mt file.Trong phn ln cc h thng tp tin, tn tp tin c th bao gm hai phn l phn tn v phn m rng. Hai phn ny c ngn cch bi mt du chm. Phn m rng nm pha sau du chm u tin trong tn tp tin v c th cha cc du chm. Phn ny thng ni ln mt c im g ca tp tin. V d tp tin myfile.c.gz biu th cho mt tp tin chng trnh ngun c c nn. Sau y l mt s tn m rng in hnh c s dng trong nhiu h iu hnh. Tn m ngha rng File.bak File lu tr (backup) File.bas File.c File.dat File.doc File.ftn File.hlp File.html Chng trnh ngun BASIC Chng trnh ngun C tp tin d liu (data) Ti liu, (document) vn bn ngun

Chng trnh FORTRAN Trang siu vn bn (Hyper Text Language)

Vn bn tr gip (Help) Marking

File.java File.class File.pas File.txt

Chng trnh ngun java File cha m my o java Chng trnh ngun PASCAL File vn bn thng thng (Text)

i vi mt s h thng, vic t tn tp tin v m rng ch mang tnh quy c ch khng bt buc v d nh trong UNIX, file file.dat li c th l mt file thc thi c (executable). Tuy nhin, trong mt s h thng khc, tn tp tin li mang tnh cht bt buc. ng dn: Trong cc h thng file t chc theo cu trc th mc phn cp, mi file c xc nh bi mt ng dn (path name). ng dn chnh l mt tn m t ng i theo cc th mc ti mt file v thng c dng dir1/dir2/../dirn/file. Khi mt file c m, h iu hnh s tin hnh tm kim theo ng dn ti th mc cha file sau xc nh file nh tn file trong cc mc nhp ca th mc ny. ng dn c chia lm hai dng; ng dn tuyt i (absolute path name) v ng dn tng i (relative path name). ng dn tuyt i l ng n t th mc gc ti file v d nh /usr/sbin/login. ng dn tng i lin quan ti khi nim th mc hin thi (current directory) hay th mc lm vic (working directory). Ngi dng c th ch ra v tr ca file trong h thng t th mc hin thi. V d nu th mc hin thi l /home/ftp th hai ng dn /home/ftp/pub/myfile v /pub/myfile u ch n mt file. b. Quyn s dng tp tin Tt c cc tp tin v th mc ca Linux u c ngi s hu v quyn truy nhp. C th i cc tnh cht ny cho php nhiu hay t quyn truy nhp hn i vi mt tp tin hay th mc. Quyn ca tp tin cn cho php xc nh tp tin c l mt chng trnh (application) hay khng (khc vi MSDOS v MSWindows xc nh tnh cht ny qua phn m rng ca tn tp tin) . V d vi lnh ls l chng ta c th thy -rw-rr 1 fido users 163 Dec 7 14:31 myfile Ct u ch ra quyn truy cp tp tin

Ct 2 ch s lin kt (link) i vi tp tin hay th mc Ct 3, 4 ch ch s hu v nhm s hu Ct 5 ch di ca tp tin Ct 6 ch thi gian thay i cui cng Ct 7 l tn tp tin hay th mc Trong v d trn, cc k t -rw-rr biu th quyn truy cp ca tp tin myfile. S hu ca myfile l fido v nhm s hu myfile l users . di ca myfile l 163 bytes. Thi im myfile thay i cui cng l 7/12 ca nm hin hnh vo lc 14:31. Linux cho php ngi s dng xc nh cc quyn c (read), vit (write) v thc hin (execute) cho tng i tng s hu (the owner), nhm (the group), v nhng ngi cn li ("others" hay everyone else).
Quyn c cho php c ni dung ca tp tin. i vi th mc quyn c

cho php s dng lnh ls xem ni dung ca th mc. Quyn vit cho php thay i ni dung hay xa tp tin. i vi th mc, quyn vit cho php to ra, xa hay thay i tn cc tp tin trong th mc khng ph thuc vo quyn c th ca tp tin trong th mc. Nh vy quyn vit ca th mc s v hiu ha cc quyn truy cp ca tp tin trong th mc Quyn thc hin cho php gi chng trnh ln b nh bng cch nhp t bn phm tn ca tp tin. i vi th mc, ch c th "vo" th mc bi lnh cd nu c quyn thc hin vi th mc .
Xem xt li v d trn : -rw-rr 1 fido users 163 Dec 7 14:31 myfile

K t u tin ca quyn l k t "" m ch rng l mt tp tin bnh thng. Nu myfile l mt th mc, ta s thy vo d k t d. Ngoi ra cn c c cho thit b ngoi vi dng k t (nh bn phm), b cho thit b ngoi vi dng block (nh a cng). Chn k t tip theo chia thnh 3 nhm, cho php xc nh quyn ca ba nhm s hu (owner), nhm (group) v cn li (other). Mi cp ba ny cho php xc nh quyn c, vit v thc hin theo th t k trn. Quyn c vit tt l "r" v tr u tin, quyn vit vit tt bng "w" v tr th hai v v tr th ba l quyn thc hin k hiu bng ch "x" . Nu mt quyn khng c cho, ti v tr s c k t "-" .

Trong trng hp ca tp tin myfile, s hu c quyn rw tc l c v vit. Myfile khng phi l mt chng trnh. Nhm cng vi cn li ch c quyn c tp tin (read-only). Hnh sau cho ta thy r hn cch "c" quyn truy cp i vi tp tin. Quyn truy cp c bn ca tp tin

Song song vi cch k hiu miu t bng k t nh trn, quyn thao tc tp tin cn c th cho di dng 3 s . i vi myfile, quyn l 644. Cc k hiu bng s lin quan n vic thay i cc quyn sau ny. Cc s c th nhn tt c cc gi tr t 0 n 7. S u tin miu t quyn ca s hu, s th hai cho nhm v s th ba cho cn li. Mi s l tng ca cc quyn theo quy tc sau :
read permission Write permission Execute permission 4 2 1

V vy, mt tp tin vi quyn 751 c ngha l s hu c quyn read, write, v execute bng 4+2+1=7, Nhm c quyn read v execute bng 4+1=5, v cn li c quyn execute bng 1. Nu chng ta xem k, chng ta s thy mi s t 0 n 7 u tng ng vi mt t hp duy nht cc quyn truy nhp tp tin. 0 or -: No permissions at all 4 or r: read-only 2 or -w-: write-only (rare) 1 or x: execute

6 or rw-: read and write 5 or r-x: read and execute 3 or -wx: write and execute (rare) 7 or rwx: read, write, and execute Cc quyn mc nh khi to tp tin. Khi mt tp tin hay th mc c to ra, permission mc nh s c xc nh bi cc quyn tr bt bi cc quyn hin th bng umask
[root@pascal tuanna]# su -l natuan bash-2.05a$ umask 0022 bash-2.05a$ echo tao mot file > /tmp/aaa bash-2.05a$ ls -la /tmp/ total 376 drwxrwxrwt 5 root root 40960 Dec 24 10:59 . drwxr-xr-x 21 root root 4096 Dec 15 08:14 .. -rw-r--r-- 1 natuan wheel 13 Dec 24 10:59 aaa bash-2.05a$

Trong v d trn, quyn mc nh lc u xc nh bi umask=002. Khi , tp tin tmp to ra s c quyn l 664 v chnh l b n 6 ca umask. Quyn thc hin chng trnh cn c gn c bi ngi s dng hay cc chng trnh bin dch. Sau ta i gi tr ca umask thnh 022 v tp tin to ra c quyn 644. Gi tr mc nh ca cc quyn thng c gn mi khi ngi s dng login vo h thng thng qua cc tp tin khi to bin mi trng nh .profile, .bashrc. ng trn quan im bo mt h thng, gi tr 024 l tt nht, n cho ngi cng nhm c quyn c v khng cho quyn no vi nhng ngi khc. Lnh chown, chgrp v chmod : y l nhm lnh c s dng rt ph bin, cho php thay quyn truy cp ca tp tin hay th mc. Ch c ch s hu v superuser mi c quyn thc hin cc lnh ny.

Cch dng lnh : chmod quyn_truy_cp_mi tn_file.


darkstar:~$ ls -l myfile -rw-rr 1 fido users 114 Dec 7 14:31 myfile darkstar:~$ chmod 345 myfile darkstar:~$ ls -l myfile wxrr-x 1 fido users 114 Dec 7 14:31 myfile

V d thay i v hin th cho thy s thay i quyn truy cp tp tin myfile . Ch l ta c quyn cp pht quyn thc hin (execute) m khng cn bit l tp tin c phi l mt chng trnh hay khng. Phng php thay i tuyt i ny c mt s u im v n l cch nh quyn tuyt i, kt qu cui cng khng ph thuc vo quyn truy cp trc ca tp tin. ng thi, d ni "thay quyn tp tin thnh by-nm-nm" th d hn l "thay quyn tp tin thnh c-vit-thc hin, c-thc hin, c-thc hin" Bn cng c th thay i quyn truy nhp mt cch tng i v d nh. ch ra nhm quyn no cn thay i, bn c th s dng u (user), g (group), o (other), hay a (all). Tip theo l du + thm quyn v bt quyn. Cui cng l bn thn cc qyuyn vit tt bi r,w,x. V d nh b sung quyn thc hin cho nhm v cn li, ta nhp vo dng lnh darkstar:~$ chmod go+x myfile y l cch thay i tng i v kt qu cui cng ph thuc vo quyn c trc m lnh ny khng lin quan n. Trn quan im bo mt h thng, cch thay i tuyt i dn n t sai st hn. Thay i quyn truy cp ca mt th mc cng c thc hin ging nh i vi mt tp tin. Ch l nu bn khng c quyn thc hin (execute) i vi mt th mc, bn khng th thay i th mc cd vo th mc . Mi ngi s dng c quyn vit vo th mc u c quyn xa tp tin trong th mc , khng ph thuc vo quyn ca ngi i vi tp tin. V vy, a s cc th mc c quyn drwxr-xr-x. Nh vy ch c ngi s hu ca th mc mi c quyn to v xa tp tin trong th mc. Ngoi ra, th mc cn c mt quyn c bit, l cho php mi ngi u c quyn to tp tin trong th mc, mi ngi u c quyn thay i ni dung tp tin trong th mc, nhng ch c ngi to ra mi c quyn xa tp tin. l sticky bit cho th mc. Th mc /tmp thng c sticky bit bt ln drwxrwxrwt 7 root root 16384 Oct 21 15:33 tmp

Ta thy ch t cui cng trong nhm cc quyn, th hin cho sticky bit ca /tmp. c sticky bit, ta s dng lnh chmod 1????????? tn_th_mc. Cch dng lnh chown: chown tn_user tn_tp_tin chown tn_user tn_th_mc chown -R tn_user tn_th_mc Dng lnh cui cng vi t chn R (recursive) cho php thay i ngi s hu ca th mc tn_th_mc v tt c cc th mc con ca n. iu ny cng ng vi lnh chmod, chgrp. c. ngha ca lnh Ln: Lnh ln c dng to cc lin kt ln s<source> <destination>: to ra mt lin kt mm t tp tin ngun(source) ti tp tin ch(destination) ln <source> <destination>: to ra mt lin kt cng t tp tin ngun(source) ti tp tin ch(destination) d. Cc tp tin c bit: C nm kiu tp tin chnh trong Linux (cn c gi l h thng tp tin), trong hai kiu tp tin file v directory l hai kiu thng gp ging nh trong cc h iu hnh Kiu tp tin file Kiu th mc (directory) Kiu lin kt(link): Kiu ng dn(named pipe) Kiu tp tin thit b (Device) d. Cc th mc chun ca Linux /etc : cha cu hnh h thng my cc b /usr/bin: cha cc cu lnh ngi dng

/dev: Cc tp tin thit b(device file) /usr/man: Cc hng dn s dng kiu trc tuyn /usr/include: Cc tp tin chun cho C /var/log: Cc tp tin ng nhp h thng v ng mc ngi dng /usr/src: th mc cha m ngun
/usr/lib: cc tp tin th vin cho chng trnh ngi dng
Cu 10: Qun l a tin trnh - Ch MultiTasking trn Linux Tn trnh c hiu l 1 chng trnh ang thc thi, mi tin trnh c mt b m chng trnh xc nh lnh thc hin k tip, cc gi tr thanh ghi, ngn xp cha cc d liu tm thi v cc ti nguyn khc. Unix l mt hh a nhim c ngha l n cho php nhiu tin trnh chy ng thi. Mt tin trnh trong Unix c th chy ch Process mode hoc kernel mode, thng thng tin trnh chy ch process mode nhng khi n gi mt system call yu cu thc thi mt dch v kernel (vd truy xut phn cng) th n s c chuyn sang chy ch Kernel mode - Cc loi tin trnh: o Interactive (tin trnh tng tc) : mt tin trnh c khi chy v c iu khin t lp giap din vi ngi dng ca h thng shell. Tin trnh tng tc c th chy ch nn (backgroud) hay ch bnh thng(foreground) o Batch (tin trnh l) l nhng tin trnh khng lin quan n thit b u cui (terminal) nhng chng s sp xp theo hng c thc hn tun t v chy ch nn o Daemon : l nhng tin trnh thng c khi chy khi Linux khi ng v chng chy ch nn cho n khi c yu cu o Real-time : vd nh nhng chng trnh video v m thanh, iu khin robot, cc chng trnh thu nhn tn hiu t nhng b cm bin vt l. Linux khng h tr hu ht cc trnh ng dng i hi thi gian thc v kernel ca n l nonpreemptive (khng u tin) o Time-sharing : cc tin trnh cng chia s thi gian s dng CPU, mt CPU ch c th chy mt tin trnh ti mt thi im. Thi gian chia s cho cc tin trnh l ngn n c gim gic nh ang c chy mt mnh trn CPU. H iu hnh s

dng b lp lch scheduler thc hin cng vic phn chia thi gian s dng CPU cho cc tin trnh - Kch hot tin trnh : o & : mt tin trnh s chy ch nn nu ta thm k t & vo sau tn n khi gi lnh, s PID ca tin trnh s c hin th trn mn hnh o | : l k hiu ca ng dn ni kt gia 2 tin trnh, u ra chun ca tin trnh 1 l u vo chun ca tin trnh 2 vd : tt1 | tt2 $ ls | more o Lnh at : ch php thc hin mt tin trnh vo thi im nhp trong dng lnh vd : $ at 1:23 ls <ctrl+D> o Lnh cron : cho php thc hin cc tin trnh theo chu k vi c php c ghi trong tp tin crontabs Pht gi ngy-ca-thng thng-ca-nm ngy-ca-tun lnh-thc-thi vd 0 8 * * 1 ls | more o Lnh batch : h thng s t quyt nh khi no tin trnh c chy da trn mc ti ca h thng vd : & batch ls | more <ctrl+D> - i hng dng lnh (Redirect) Khi cho mt tin trnh chy truy xt n tp tin th shell t ng to ra 3 b m t file (File Description) o Vo chun (stdinput) fd=0 o Ra chun (stdoutput) fd=1 o Li chun (stderror) fd=2 Thng thng vo chun l bn phm, ra chun v li chun l mn hnh - i hng u ra chun (redirect stdoutput) Ta c th i hng cc s liu tahy v ra mn hnh s ra 1 tp tin nh sau $ lnh > tn file Nu file cha tn ti n s c to ra, nu tn ti n s b xo ni dung

& lnh >> tn file D liu s c ghi vo cui file - i hng u ra li chun (Redirect stderror) o i hng vo mt file $ lnh 2> tnfile hoc $ lnh 2>> tn file o i hng vo file s liu vo u ra chun $ lnh > file 2>&1 o i hng vo file rng $ lnh 2> /dev/null - i hng u vo chun (Redirect stdinput) o S liu vo chun t mt file $ lnh < tn file o i hng cc lnh t u vo chun $ lnh << chui d liu cn c chui $ vd : $ cat > file1 << OK aaa bbb OK - i hng kp u ra chun Lnh tee cho php i hng kp u ra chun : va hng d liu ra mn hnh va hng d liu vo tp tin $ lnh | tee tnfile (dng tu chn tee a ghi ni d liu vo cui file) - Theo di v bo co mi trng a nhim o Lnh who cho bit ai ang ng nhp h thng lc ny Lnh who khng c i s v hn th 3 ct thng tin cho tng ngi dng trn h thng. Ct 1 hin th tn ng nhp, ct 2 l tn thit b u cui m ngi dng s dng, ct 3 l ngy gi ng nhp o Lnh finger : hin th thng tin v mt hay nhiu ngi dng bao gm: ng nhp, dng ch gii, th mc c nhn v shell k c thng tin v phin lm vic ca ngi

dng o Lnh ps : cho bit thng tin v cc tin trnh ang chy bao gm : s PID ca mi tin trnh ,tin trnh xut pht t thit b u cui no, trng thi ca tin trnh, thi gian h thng dnh cho tin trnh, tn ca chng trnh to ra tin trnh, tn ngi dng to ra tin trnh, %CPU, %b nh - Chm dt tin trnh o Lnh kill loi b cc tin trnh khng th dng bng phng php khc $ kill <PID> Lnh kill s gi tn hiu SIGKILL n tin trnh yu cu tin trnh ngng hot ng khi tin trnh nhn c tn hiu SIGSTOP n s kt thc v gi n tin trnh cha ca n tn hiu SIGCHILD

Cu 11: Unix File System va ext2 file system Linux h tr rt nhiu loi h thng tp tin nh ext2, ext3, MS-DOS, proc. H thng tp tin c bn ca Linux l ext2 v ext3 (hin ti l ext3). H thng tp tin ny cho php t tn tp tin ti a 256 k t v kch thc ti a l 4 terabytes. MS-DOS dng truy cp trc tip nhng tp tin MS-DOS. Bn cnh Linux cn h tr v cho php t tn tp tin di i vi nhng tp tin MS-DOS v nhng partition FAT32. Proc l mt h thng tp tin o (/proc) ngha l khng dnh dung lng a phn phi cho n. Ngoi ra cn c nhng h thng tp tin khc nh iso9660, UMSDOS, Network File System (NFS). Khi to mt h thng tp tin, nhng loi khc c to trong h thng tp tin, bao gm 3 phn: - Superblock - Inode - Storageblock Superblock l mt cu trc c to ti v tr bt u h thng tp tin. N lu tr thng tin v h thng tp tin nh: - Kch thc v cu trc h thng tp tin. - Ngy v thi gian cp nht h thng tp tin cui cng. - Thng tin trng thi ca h thng tp tin. Inode l nhng thng tin v nhng tp tin v th mc c to ra trong h thng tp tin. Nhng chng khng lu tn tp tin v th mc thc s. Mi tp tin to ra s c phn b mt inode lu thng tin sau: - Loi tp tin v quyn hn truy cp tp tin. - Ngi s hu tp tin. - Kch thc ca tp tin v s hard link n tp tin. - Ngy v thi gian chnh sa tp tin ln cui cng. - V tr lu ni dung tp tin trong h thng tp tin. Storageblock l vng lu d liu thc s ca tp tin v th mc. N chia thnh nhng datablock. D liu lu tr vo a trong cc datablock. Mi block thng cha 1024 k t. Ngay khi tp tin ch c 1 k t th cng phi cp pht 1 block lu n. Khng c k t kt thc tp tin.

- Datablock ca tp tin thng thng lu inode ca tp tin v ni dung ca tp tin. - Datablock ca th mc lu danh sch nhng entry bao gm inode number, tn ca tp tin v nhng th mc con. Cc loi tp tin: Trong Linux tp tin dng cho vic lu tr d liu. N bao gm c th mc v cc thit b lu tr. Mt tp tin d liu, hay mt th mc u c xem l tp tin. Khi nim tp tin cn m rng dng cho cc thit b nh my in, a cng ngay c b nh chnh cng c coi nh l mt tp tin. Cc tp tin trong Linux c chia lm 3 loi chnh: - Tp tin cha d liu bnh thng. - Th mc. - Tp tin thit b Ngoi ra Linux cn dng link v pipe nh l cc tp tin c bit. Tp tin d liu: y l tp tin theo nh ngha truyn thng, n l d liu lu tr trn cc thit b lu tr nh a cng, CD-ROM Bn c th a bt c d liu no vo tp tin ny nh on source chng trnh, tp tin vn bn hay tp tin thc thi dng m my, cc lnh ca Linux cng nh tt c cc tp tin c to ra bi ngi dng. Th mc: Th mc khng cha d liu m ch cha cc thng tin ca nhng tp tin v th mc con trong n. Th mc cha hai trng ca mt tp tin l tn tp tin v inode number. Tp tin thit b: H thng Unix v Linux xem cc thit b nh l cc tp tin. Ra vo d liu trn cc tp tin ny chnh l ra vo d liu cho thit b. V d khi chng ta chp d liu ra a A: th s chp vo tp tin /dev/fd0 hoc khi chng ta thc hin vic in th d liu vi my in c a vo tp tin tng ng cho my in. Lin kt (link) tp tin: Mt lin kt, hiu theo cch n gin nht l to ra mt tn tp tin th hai cho mt tp tin. L do c bn ca vic to lin kt l nhn tp tin ln nhiu ln. Nu c bt k s thay i no trn mt tp tin s nh hng ngay n tp tin cn li. Trong Unix c 2 hnh thc lin kt hon ton khc nhau, l hard link v soft link hay symbolic link. Hard link cho php to mt tn mi cho tp tin. Cc tn ny c vai tr hon ton nh nhau v tp tin ch b hon ton xa b khi hard link cui cng ca n b xa. Lnh ls l cho php hin th s hard link n tp tin. Symbolic link c chc nng ging nh shortcut ca MS Windows. Khi ta c/ghi soft link, ta c/ghi tp tin; khi ta xa symbolic link, ta ch xa symbolic link v tp tin c gi nguyn. Link c to bi lnh ln . T chn ln s cho php to symbolic link. V d [tuanna@pascal tuanna]$ls -l -rw------- 1 tuanna pkt 517 Oct 27 12:00 mbox drwxr-xr-x 2 tuanna pkt 4096 Aug 31 17:50 security [tuanna@pascal tuanna]$ln s mbox mybox [tuanna@pascal tuanna]$ln s security securproj [tuanna@pascal tuanna]$ln l -rw------- 1 tuanna pkt 517 Oct 27 12:00 mbox lrwxrwxrwx 1 tuanna pkt 4 Oct 27 17:57 mymail -> mbox lrwxrwxrwx 1 tuanna pkt 8 Oct 27 17:57 secrproj -> security drwxr-xr-x 2 tuanna pkt 4096 Aug 31 17:50 security [tuanna@pascal tuanna]$ Chng ta c th thy kh r kt qu ca symbolic link qua th d trn. Symbolic link rt c nhiu ng dng. V d nh mt tp tin XXX ca mt chng trnh YYY nm trong th mc /var/ZZZ. Nu phn mnh ca /var/ZZZ b qu y, ta

c th "s tn" XXX qua mt th mc khc thuc phn mnh khc v to mt link th vo m chng trnh YYY vn khng h "hay bit" v n vn truy cp n /var/ZZZ/XXX nh thng l. Do ta c th tm tc li hardlink va Symbolic link nh sau: Hardlink: l mt lin kt trong cng h thng tp tin vi hai inode entry tng ng tr n cng mt ni dung vt l (cng inode number v chng tr n cng d liu). Symbolic Link: l mt lin kt khc m khng s dng inode entry cho vic lin kt. Bn s dng lin kt ny khi mun to ra nhng driver thit b, nh /dev/modem thay cho /dev/cual. Ty chn s ca lnh cho php to ra mt symbolic link. Lu : khi xa tp tin gc, ni dng ca tp tin hard link khng b nh hng nhng ni dung tp tin symbolic link khng xem c. o Hard link : mt tn tp tin bao gm tn th mc c gi l mt hardlink. Cng mt tp tin nhng c th c nhiu hard link khc nhau trong cng mt th mc hay khc th mc Hn ch ca hard link: + Ngi dng khng c php to hard link n mt th mc v nh vy s lm cho cu trc cy th mc c vng lp do vy s dn n vic khng th xc nh v tr ca 1 tp tin da vo tn ca n + Cc lin kt ch c th c to ra gia cc file trong cng h thng tp tin, y l hn ch nghim trng khi Unix c th h tr nhiu h thng tp tin khc nhau o Soft link : khc phc hn ch ca hard link, soft link c gii thiu. Soft link l nhng tp tin c kch thc nh cha ng dn c nh n mt tp tin khc (nh shortcut trong Window) thuc bt k h thng tp tin no thm ch n 1 tp tin cha tn ti o Link count : l 1 trng trong cu trc ca inode c dng lu tr s kt ni hard link n tp tin * Gii thiu h thng file ext2 Gii thiu h thng file ext2 c gii thiu vo u nm 1993 v c thit k ring cho Linux. N c nhiu tnh nng tng cng khc phc cc hn ch ca cc h thng file khc. Bng so snh tham kho: Tnh nng | Minix | EXT | EXT 2 ---------------------------------------------------------------------------Kch thc h thng file ln nht | 64 MB | 2 GB | 4 TB Kch thc file ln nht | 64 MB | 2 GB | 2 GB Chiu di ti a tn file | 30 k t | 255 k t | 255 k t Kch thc block tu bin | Khng | Khng | C * Qun tr h thng file Ext2 Filesystem caching: Nhm tng hiu sut ca ton h thng file ext2, cache c dng lu gi cc d

liu c dng thng xuyn. Thng tin ca filesystem c cache trong b nh, i khi c tham kho ti nh l mt b m a, bi v vic truy cp vo b nh th nhanh hn nhiu so vi cc a vt l. C hai qu trnh c v ghi u c cache d liu trn RAM. H thng buffers a cng ln th filesystem p ng cng nhanh cho cc thao tc c ghi. Do RAM l b nh tm thi, buffer s c ghi vo a khi my hot ng, hay khi filesystem c unmount. Lnh sync c th dng p kernel ghi tt c cc buffers vo cc file trn a. Lnh ny c th s dng khng cn tham s. V d: vi l do ny c th gii thch v sao khi chp file vo a mm ta thy h thng chy rt nhanh tuy nhin lc ny thc s file cha c ghi vo a mm. nu th bn s thy khong 5 giy sau n mm mi bt u sng. Nu trc ta c tng l chp xong file m rt a mm ra th s khng c file no c ghi vo a c. Cu 12: User mode va Kernel mode HH chy trong mt mi trng c bit, gi l ch nhn (kernel mode hay supervisor mode). Ch ny c h tr bi kin trc ca CPU ( bi cc lnh my c bit) v n ngn ngi dng truy nhp vo phn cng (qun l phn cng chun xc cho nhiu ngi dng ng thi_cn gi l h c bo v (protected mode)). Cc trnh ng dng chy trong ch ngi dng (user mode). Vic kt ni gia hai ch chy trnh c thc hin bi Gi h thng (system call). y xut hin mt thut ng mi, l kernel, vy kernel l g, l phn m ct yu nht ca cc chng trnh h thng, n kim sot cc tp, khi ng v cho chy cc chng trnh ng dng ng thi, cp b nh cng nh cc ti nguyn khc cho cc chng trnh ca ngi dng. Bn thn kernel khng lm g nhiu nhng cung cp cc cng c nguyn thu (primitive functions) m cc tin ch khc, cc dch v khc ca HH c xy dng. Do cc chng trnh h thng, cc trnh ng dng s dng cc dch v ca HH, v chnh l user mode. Tuy nhin c s khc bit l cc trnh ng dng th tn dng nhng tin ch h thng cho, cn cc trnh h thng l s cn thit my tnh chy c. Gi h thng (hay gi cc dch v ca h thng, GHT), l mt giao din lp trnh gia HH v ng dng. N c thc hin bng cch t cc thng s vo nhng ch c nh ngha r rng (vo cc thanh ghi ca CPU hay t vo stack) v sau thc hin mt lnh by t bit (trap intruction) ca CPU. - Lnh ny chuyn ch chy my t user mode vo kernel mode v t iu khin chuyn cho HH (1). - Tip theo HH kim tra s hiu v cc thng s ca GHT xc nh GHT no s thc hin (2). - T trong bng vi ch s (s hiu ca GHT), HH ly ra con tr tr n qui trnh (procedure) thc hin GHT (3). Khi thc hin xong GHT, iu khin chuyn tr li cho chng trnh ca ngi dng. T y c th thy cu trc c bn ca GHT nh sau: 1. Mt chng trnh chnh kch hot dch v h thng bng mt GHT. 2. By (TRAP) chuyn GHT vo nhn HH, nhn xc nh s hiu ca dch v. 3. Thc hin dch v. 4. Kt thc dch v v tr v ni pht sinh GHT. * User mode v Kernel mode C t nht 2 ch thc thi khc nhau i vi CPU cp phn cng l ch c quyn (Privileged mode) v ch khng c quyn (Nonprivileged mode). Unix gi

2 ch l Kernel mode v User mode, khi mt tin trnh chy trong ch Kernel mode n c php truy xut trc tip n cu trc d liu ca Kernel hoc gii nhng chng trnh kernel khc. Ngc li 1 tin trnh chy trong ch User mode th khng th truy cp n cu trc d liu ca kernel cng nh cc chng trnh kernel System call l nhng chng trnh c cu trc c bit c tin trnh s dng gi n kernel mt yu cu thng qua mt interrupt phn mm. C th xem system call l nhng cu ni gip cc tin trnh chy ch user mode c th giao tip vi cc thit b phn cng nh CPU, a, my in Khi mt tin trnh ch user mode gi n kernel mt yu cu thng qua mt system call th n s c chuyn sang chy ch kernel mode, khi n c th truy xut n cu trc d liu ca kernel hoc gi cc th tc kernel truy xut n cc thit b phn cng. Trong Linux, system call phi c gi vi vic thc thi cu lnh hp ng int $0x80 C mt s tin trnh ch c quyn gi l kernel thread vi nhng c tnh sau: - Chy trong ch kernel mode trong khng gian a ch ca kernel - Khng giao tip vi ngi dng v vy khng cn n cc tht b u cui - Thng c to ra trong sut qu trnh h thng khi ng v c gi hot ng tr li khi h thng c shutdown Cau 13: Preemtive va Non Preemtive Kernel thng c chi thnh 2 nhm - preemptive hoc non-preemptive kernels. Non-preemptive kernels Trong nhng h thng non-preemptive, mt tin trnh khi bt u thc hin s lun lun c thc hin ngoi tr mt trong 2 iu sau xy ra

1. Tin trnh ang thc hin b chm dt 2. Tin trnh ang thc hin b a vo trng thi ch, v d: gi hm wait hay delay hoc i mt s kin khc chc chn xy ra

Khi mt trong 2 iu ny xy ra, kernel thc hin mt context switch c ngha l kernel nm bt ton b qu trnh thc hin t mt tin trnh ny ti mt tin trnh khc. Tin trnh khi chun b chy s c mc u tin cao nht

iu g c th c cnh bo khi mt tin trnh bt c chy, n lun lun tip tc chy ngoi tr chnh n t dng chy mt tin trnh khc. iu ny c ngha l nu mt tin trnh c u tin thp khi bt u chy th mt tin trnh c u tin cao c th phi i mt khong thi gian trc khi c bt u

Preemptive kernels

Trong nhng h thng preemptive, lch biu kernel s nh ngh nhng khong thi gian gi l tick,mi ln n c gi nu c mt tin trnh sn sng chy c mc u tin cao hn tin trnh ang chy, th lch biu s thc hin mt context switch, c ngha l mt tin trnh c th c y ln u tin chy trc ti mt thi im trong code, iu ny c ngha rng s c th to nn s giao tip gia cc tin trnh, v nm bt c mi ti nguyn h thng S dng mt preemptive kernel s gii quyt vn mt tin trnh mc u tin cao hn phi i mt tin trnh mc u tin thp hn trong b x l thay v tin trnh mc u tin cao s c chy v tin trnh mc u tin thp hn s tr thnh trng thi i (vn thiu 1 ca cu 13 ) Cu 14: DNS Domain name Server Co s d liu phn tn ca DNS c ch mc bi domain name, v bn cht mi domain name ch l mt phn trong mt h thng cy nghch o (domain name space), nh hnh v bn di. Cu trc cy c th t tng t nh h thng file ca UNIX. Cy c mt im gc root v c th r nhnh nhng im giao nhau (node), chiu su ca cy ti a l 127 cp. Domain name Mi node trong cy c mt nhn (ti a 63 k t). Tn domain name y ca mt node trong cy l mt chui cc nhn i t node n root. Trong DNS, nhng node ngang hng vi nhau c cng mt node cha phi c tn khc nhau. Domains:Domain ch l mt nhnh con ca domain name space. Domain name ca mt domain tng t nh domain name ca mt node v tr cao nht ca domain . Tng t trong h thng filesystem, mc cao nht trong th mc /usr, ta c mt node /usr.Mt domain name c th nm trong nhiu nhnh, v cng c th trong nhiu domain, v d, domain name pa.ca.us l mt phn ca ca.us domain v cng l mt phn ca domain us Name Servers and Zones Name server l chng trnh lu nhng thng tin v domain name space. Name server c y cc thng tin v nhng phn ca domain name space (c gi l mt zone), nhng thng tin c load t file hoc t name server khc. Sau name server s ni rng n c u quyn cho zone . Name server cng c th authoritative cho nhiu zone. Types of Name Servers: Ngi ta chia lm 2 loi: primary master v secondary master. - Primary master name server ca mt zone ly d liu ca zone t mt file trn my. - Secondary master name server (slave) ca mt zone ly d liu ca zone t name server khc c y quyn cho n. Khi secondary c khi ng, n s tm master name server ca n v ly d liu v my, qu trnh ny c gi l zone transfer. Slave thng lu d liu ny vo mt file, v sau nu slave c khi ng li th n s c d liu t file ny v kim

tra xem d liu c cn s dng c na hay khng, nu khng n s thc hin ng tc zone transfer na ly d liu mi hn. iu ny trnh cho slave thc hin vic zone transfer trong khi d liu vn khng thay i.

You might also like