View
219
Download
0
Category
Preview:
Citation preview
7/21/2019 SinhVienIT.net HDH Chuong 1
1/57
7/21/2019 SinhVienIT.net HDH Chuong 1
2/57
Ni dung1.1. Hiuhnh l g?
1.3. Cutrc hiuhnh1.2. Cutrc hthngmy tnh
2
7/21/2019 SinhVienIT.net HDH Chuong 1
3/57
1.1. H iu hnh l g?1.1.1. Cc thnhphncahthngmy tnh
3
7/21/2019 SinhVienIT.net HDH Chuong 1
4/57
7/21/2019 SinhVienIT.net HDH Chuong 1
5/57
nh nghaHH l chng trnh trung gian giaphncng
my tnh v ngi s dng, c chc nng iukhinphncngv cung cpcc dchvcbncho cc ngdng.
Mctiu caHHl lm cho ngisdng: Thcthi ddng cc ngdngcamnh
Thao tc iukhinmy tnh trnn thuntin.
Qunl v cppht ti nguyn hthngmtcch hiuqu.
5
7/21/2019 SinhVienIT.net HDH Chuong 1
6/57
6
7/21/2019 SinhVienIT.net HDH Chuong 1
7/57
Cc chc nng chnh ca HH Phn chia thi gian x l trn CPU (nh thi)
Phi hp v ng b hot ng gia cc qu trnh
Qun l ti nguyn h thng hiu qu
Kim sot qu trnh truy cp, bo v h thng Duy tr s nht qun ca h thng, kim sot li v phc
hi h thng khi c li xy ra.
Cung cp giao din lm vic thun tin cho ngi dng
7
7/21/2019 SinhVienIT.net HDH Chuong 1
8/57
Lchs pht trin My tnh ln(mainframes)
Xl b (batch)
achng(multiprogrammed)
anhim(time-sharing, multitasking)
(Mainframe)Batch systems
I/O: card cl,bngt(tapes), line printer
Cnc ngivnhnh (user operator)
Gimsetup timebngcch ghp nhm cng vic(batching) Vd: ghp cc cng viccng sdngtrnh bin dchFortran
Tngnplnltcc chngtrnh
8
7/21/2019 SinhVienIT.net HDH Chuong 1
9/57
7/21/2019 SinhVienIT.net HDH Chuong 1
10/57
Lch s pht trin h iu hnh (tt)
10
7/21/2019 SinhVienIT.net HDH Chuong 1
11/57
Lch s pht trin h iu hnh (tt) (Mainframe)Time-sharing systems
Multiprogrammed systems khng cung cpkhnngtngtchiuquviusers
CPU lun phin thcthi giacc cng vic
Mi cng vic c chia mtphn nh thi gian CPU (time slice,quantum time)
Cung cp tng tc gia user v h thng vi thi gian p ng(response time) nh(1 s)
Mt cng vicchcchimCPU khi n nm trong bnh
chnh.
Khi cn thit,mtcng vicno c thcchuyn tbnhchnh ra thitblu tr (swapping), nhngbnhchnhcho cng vickhc.
11
7/21/2019 SinhVienIT.net HDH Chuong 1
12/57
Lch s pht trin h iu hnh (tt) Yu cuiviHHtrong hthngtime-sharing
nhthicng vic(job scheduling) Qunlbnh(memory management)
Virtual memory
Qunl cc qu trnh (process management) nhthiCPU ngbcc qu trnh (synchronization)
Giao tipgiacc qu trnh (process communication)
Trnh deadlock
Qunl hthngfile, hthnglutr Cppht hpl cc ti nguyn
Bov(protection)
12
7/21/2019 SinhVienIT.net HDH Chuong 1
13/57
1.13
Lch s pht trin h iu hnh (tt) My bn(desktopsystem, personal computer)
Nhiu thitb I/O: bn phm, chut, mn hnh, myin,
Phcvngidng nl.
Mctiu chnh caHH Thuntincho user v khnngtngtc cao.
Khng cntiuhiusutsdngCPU v thitbngoivi.
Nhiu h iu hnh khc nhau (MS Windows, MacHH,Solaris, Linux,).
7/21/2019 SinhVienIT.net HDH Chuong 1
14/57
Lch s pht trin h iu hnh (tt)
Hthngsong song NhiuCPU
Chia scomputer bus, clock uim
System throughput: cng nhiu processor th cng nhanhxong cng vic
Multiprocessor system t tn km hn multiple single-processor system: v c thdng chung ti nguyn (a,)
tin cy: khi mtprocessor hng th cng viccancchia sgiacc processor cn li
14
7/21/2019 SinhVienIT.net HDH Chuong 1
15/57
Lch s pht trin h iu hnh (tt)
Phn loihthngsong song a x l i xng (symmetric multiprocessor -
SMP) Mi processor vn hnh mt identical copy ca h iu
hnh Cc copy giao tipvinhau khi cn
axl btixng(asymmetric multiprocessor) Miprocessor thcthi mtcng vickhc nhau Master processor nh thi v phn cng vic cho cc
slave processors
15
7/21/2019 SinhVienIT.net HDH Chuong 1
16/57
Lch s pht trin h iu hnh (tt)
Hthngphn b(distributed system, loosely-coupledsystem) Miprocessor c bnh ring, cc processor giao tipqua
cc knh ninhmng,bus tccao, leased line
Ngidng chthymththngnnht
uim Chia sti nguyn (resource sharing)
Chia sscmnhtnh ton (computational sharing)
tin cycao (high reliability)
sn sngcao (high availability): cc dchvcah thngccung cplin tccho d mtthnhphnhardware trnn hng
16
7/21/2019 SinhVienIT.net HDH Chuong 1
17/57
Lch s pht trin h iu hnh (tt)
Hthngphnb(tt)
Cc m hnh hthngphnb Client-server
Server: cung cpdchv
Client: c thsdngdchvcaserver
Peer-to-peer(P2P) Ccpeer(my tnh trong hthng)ungang hng nhau
Khng c csdliutptrung
Cc peer l ttr
Vd: Gnutella
(Napster khng phi l hthngP2P ngnghav c csdliutptrung)
17
7/21/2019 SinhVienIT.net HDH Chuong 1
18/57
Lch s pht trin h iu hnh (tt) Hthngthigian thc(real-time system)
Sdngtrong cc thitbchuyn dngnhiukhincc thnghimkhoa hc,iukhin trong y khoa, dy chuyncngnghip,thitbgia dng
Rngbucvthigian: hard v soft real-timePhn loi Hard real-time
Hnch(hockhng c)bnhph,ttcdliunmtrongbnhchnh (RAM hocROM)
Yu cuv thigian png/x l rtnghim ngt, thngsdng
trong iukhincng nghip,robotics, Soft real-time
Thng c dng trong lnhvc multimedia, virtual reality vi yucummdohnvthigian png
18
7/21/2019 SinhVienIT.net HDH Chuong 1
19/57
1.2. Cu trc h thng my tnh
Kintrc cbncahthngmy tnh
Cchvnhnh cahthngCutrc hthngxutnhp(I/O)
Cutrc v phn cphthnglutr
19
7/21/2019 SinhVienIT.net HDH Chuong 1
20/57
Kin trc c bn ca h thng mytnh
CPU
Disk controller USB controller Graphics adapter
MEMORY
DisksMouse
Keyboard
PrinterMonitor
m d liu (local buffer)
20
7/21/2019 SinhVienIT.net HDH Chuong 1
21/57
Chu trnh hot ng ca CPU
StartFetch NextInstruction
ExecuteInstruction
HALT
1. Chu trnh n gin (khng c ngt)
StartFetch NextInstruction
ExecuteInstruction
HALT
2. Chu trnh c iu khin ngt
Check for interrupt;Process interruptInterrupts
enabled
Interruptsdisabled
21
7/21/2019 SinhVienIT.net HDH Chuong 1
22/57
Ngt
Phn loi: ngtdo Program:trn shc,chia cho 0, truy cpbnhbthpphp Timer:cho php CPU thcthi mttc vno theo nhk I/O:ktthc tc vI/O, xyra litrong I/O Hardware failure:Hhngngun,limemory parity, Trap (software interrupt):yu cudchvhthng(gisystem call),
Lc thi gian khi process c yu cu cc tc v I/O
22
7/21/2019 SinhVienIT.net HDH Chuong 1
23/57
Qu trnh x l ngt
i
i+1
0
M
User
Program
Interrupt
handler
0
21 00ffe23f
N
Interrupt vector
table
int. 0x21
0
00ffe23f interrupt
0x21 routine
ret
ffffffff
1
2
3
23
7/21/2019 SinhVienIT.net HDH Chuong 1
24/57
Qu trnh x l ngt (tt)
C ngt
I/O interrupts
Khng c ngt
24
7/21/2019 SinhVienIT.net HDH Chuong 1
25/57
Cu trc h thng I/O
7/21/2019 SinhVienIT.net HDH Chuong 1
26/57
1.A.26
Cc k thut thc hin I/O
Polling gidliura mtthitbI/O (thng qua I/O
port), CPU ghi byte d liu vo thanh ghi dliu(data register), sau thitlpmtbit (bit1) cathanh ghi iukhin(control register)bo hiucho I/O controller.
(PIO:programmed I/O)
I/O controller c byte d liu t thitb I/O,xa bit iukhin (bit 0). CPU tip tcgibyte k.
I/O controller khng gy ra ngtmi khi xongvic. CPUphidng cchpollingkimtratrngthi thitbI/O
Truyndliutngbyte mt
PIO
7/21/2019 SinhVienIT.net HDH Chuong 1
27/57
1.A.27
Cc k thut thc hin I/O (tt)
Interrupt-driven I/O
CPU khng poll m I/O controller s gy rangtmikhi snsng cho tc vI/O.
Trong lc thitbI/O thcthi lnh,CPU c ththcthi cng vickhc.
Polling v interrupt-driven I/O utiu tnthigian xl caCPUbiv CPUphicopy bytedliucc/ghimemory.
Thch hpcho cc thitbI/O c tckhngcao (keyboard, mouse)
X
X
7/21/2019 SinhVienIT.net HDH Chuong 1
28/57
Cc k thut thc hin I/O (tt)
Synchronous Asynchronous
Phngphp thchinI/O
- - -: bypassing
kernel kernel
28
7/21/2019 SinhVienIT.net HDH Chuong 1
29/57
Cc k thut thc hin I/O (tt)
Cc hng i (wait queue) I/O
Asynchronous I/O
29
7/21/2019 SinhVienIT.net HDH Chuong 1
30/57
1.A.30
Cc k thut thc hin I/O (tt)
Direct Memory Access (DMA) CPU gi yu cu n module DMA (= DMA
controller)
Module DMA chuynmtkhidliugiabnhv thitbI/O m khng cnCPU can thip.
Khi xong mttc vginhnth pht khimtngt.
CPU chtham gia vo giai onkhiuv ktthccavictruynnhndliu
Trong khi angtruynnhndliu,CPU c ththcthi cng vickhc
Thch hpcho cc thitbc tccao (a)
7/21/2019 SinhVienIT.net HDH Chuong 1
31/57
7/21/2019 SinhVienIT.net HDH Chuong 1
32/57
1.A.32
H thng lu tr Lutrl mttrong nhngdngthcI/O quan trng
Bnhchnh(main memory, primary memory)
CPU chc thtruy cptrctipthanh ghi (registers) v bnhROM,
RAM
Bnhph(secondary storage)
Hthnglutrthng tin bnvng(nonvolatile storage)
at(magnetic disks): amm,acng,bngt
aquang (optical disk): CD-ROM, DVD-ROM
Flash ROM: USB disk
7/21/2019 SinhVienIT.net HDH Chuong 1
33/57
1.A.33
Phn cp h thng lu tr
Tc cao
Gi thnh thpDung lng ln
vd: file-system data
7/21/2019 SinhVienIT.net HDH Chuong 1
34/57
C ch caching
Caching nptrcdliuvo thitblutrtccao hn
Tisaophidng cache?
Chnh lchlngiatcCPU v tcbnhRAM, a,
Khai thc nguyn l ccb(locality) Kch thccache nhphiqunl cache: thay nidung cache
Trong cchcaching, mtdliuc thclutrnhiuniphibomtnh nhtqun dliu: cache coherency problem
A: d liu34
7/21/2019 SinhVienIT.net HDH Chuong 1
35/57
1.A.35
Bo v phn cng dual mode
Cchdual-mode:cncphncnghtr User modethcthi viquynhncauser bnh thng Kernel mode (cn gil supervisor mode, system mode, monitor mode) c ton
quyntruy xutti nguyn hthng
Phncngc thm mode bitkimsot mode hinhnh: mode bit = 0: kernel mode
mode bit = 1: user mode
Khi c ngthocc lixyra, hthngschuynsang kernel mode.
7/21/2019 SinhVienIT.net HDH Chuong 1
36/57
B h B h
7/21/2019 SinhVienIT.net HDH Chuong 1
37/57
Bo v phn cng B nh
Vd: bo v b nh dng 2 thanh ghi
- Truy cp b nh ngoi vng xc nh bi thanhghi base v thanh ghi limit s sinh ra trap
- Lnh np gi tr cho cc thanh ghi base vthanh ghi limit u l privileged instruction
(a)
(b)
37
7/21/2019 SinhVienIT.net HDH Chuong 1
38/57
Ti
7/21/2019 SinhVienIT.net HDH Chuong 1
39/57
1.A.39
Timer
C th s dng timer thc hin c ch time-
sharing. Thit lp timer gy ngtnhkNms (N: time slice,
quantum time) v nhthiCPU sau milnngt.
C th dng timer tnh thi gian tri qua(elapse time)
C T H i H h
7/21/2019 SinhVienIT.net HDH Chuong 1
40/57
Cu Trc H iu Hnh
Cc thnhphncahiuhnh
Cc dchvhiuhnh cung cp
Giao tipgiatintrnh v hiuhnh
Cc chngtrnh hthng(system programs)
Cutrc logic cahthng
My o(virtual machine)
40
C th h h h i h h
7/21/2019 SinhVienIT.net HDH Chuong 1
41/57
Cc thnh phn ca h iu hnh Qunl tintrnh (process management)
tintrnh vs. chngtrnh
Mt tin trnh cn cc ti nguyn ca h thng nh CPU, b
nh,file, thitbI/O,hon thnh cng vic.
Cc nhimvcathnhphn Tov hytintrnh
Tmngng/tiptcthcthi (suspend/resume) tintrnh
Cung cpcc cch
ngbhotngcc tintrnh (synchronization)
giao tipgiacc tintrnh (interprocess communication)
khngchdeadlock
41
C th h h h i h h (tt)
7/21/2019 SinhVienIT.net HDH Chuong 1
42/57
Cc thnh phn ca h iu hnh (tt)Qunlbnhchnh
c hiusutsdngCPU v thigian pngtt,hiuhnh cndng giithutqunlbnhthchhp
Cc nhimvcathnhphn Theo di, qunl cc vng nhtrngv cppht
Quytnhsnpchngtrnh no khi c vng nhtrng
Cppht v thu hicc vng nh
42
C th h h h i h h (tt)
7/21/2019 SinhVienIT.net HDH Chuong 1
43/57
Cc thnh phn ca h iu hnh (tt)Qunl file (file management)
Hthngfile (file system) File
Thmc
Cc dchvm thnhphncung cp Tov xo file/thmc.
Cc tc vxl file/thmc(rename, copy, move, new,)
nh xfile/thmcvo thitblu trthcptngng
Sao luvphchidliu
43
C th h h h i h h (tt)
7/21/2019 SinhVienIT.net HDH Chuong 1
44/57
Cc thnh phn ca h iu hnh (tt)Qunl hthngI/O (I/O system management)
Che ducc ctrngringbitcatngthitbI/O
C chcnng
Cch: buffering, caching, spooling
Cung cp giao din chung n cc trnh iu khin thitb(device-driver interface)
Trnh iukhin thitb (device driver) cho michng loi
thitbphncngkhc nhau.
44
C th h h h i h h (tt)
7/21/2019 SinhVienIT.net HDH Chuong 1
45/57
1.B.45
Cc thnh phn ca h iu hnh (tt)Qun l h thng lu tr th cp (secondary
storage management) Bnhchnh: kch thcnh, l mi trngcha tin
khngbnvngcnhthnglutrthcplu
trbnvngcc dliu,chngtrnh
Phngtinlutrthng dngl at,aquang
Nhimvcathnhphn
Qunl vng trng(free space management)
Cppht khng gian lutr(storage allocation)
nhthia(disk scheduling)
C th h h h i h h (tt)
7/21/2019 SinhVienIT.net HDH Chuong 1
46/57
Cc thnh phn ca h iu hnh (tt) Hthngbov
Khi hthngcho php nhiuuser hay nhiutintrnh Kimsot tintrnh ngidng ngnhp/xutv sdngh
thng
Kimsot victruy cpcc ti nguyn trong hthng
Bo m ch nhng ngi dng/tin trnh quyn hn micphp sdngcc ti nguyn tngng
Cc nhimvcathnhphn
Cung cpcchkimsot ngnhp/xut(login, log out) Phn nh c s truy cp ti nguyn hp php v bt hp php
(authorized/unauthorized)
Phngtinthi hnh cc chnh sch (enforcement of policies) Chnh sch:cnbovdliucaai iviai
46
C th h h h i h h (tt)
7/21/2019 SinhVienIT.net HDH Chuong 1
47/57
Cc thnh phn ca h iu hnh (tt) Trnh thng dchlnh
L giao dinchyugiangidng v HH V d: shell, mouse-based window-and-menu
Khi user login command line interpreter(shell) chy,v chnhn lnh tngidng,
thcthi lnhv trktquv
Lin hchtchvicc thnh phnkhc cahiuhnh thcthi cc yu cucangidng
Cc nhm lnhtrnh thng dchlnh To,hy,xem thng tin tintrnh, hthng iukhintruy cpI/O Qunl, truy cphthnglutrthcp Qunl, sdngbnh Truy cphthngfile
47
Cc dch h i hnh
7/21/2019 SinhVienIT.net HDH Chuong 1
48/57
Cc dch v h iu hnh Mtsdchvchyum ngidng hay chngtrnh
cn Thcthi chngtrnh Thchincc tc vI/O do yu cucachngtrnh Cc tc vln hthngfile
c/ghihay to/xafile Cchgiao tip,trao ithng tin giacc tintrnh
Shared memory Message passing
Pht hinli Trn thitbI/O: dliuh,htgiy, Chng trnh ngdng: chia cho 0, truy cpnachbnhkhng
cphp
48
Cc dch v h iu hnh (tt)
7/21/2019 SinhVienIT.net HDH Chuong 1
49/57
Cc dch v h iu hnh (tt) Cc chcnngkhc (gip hiuhnh chyhuhiu)
Cppht ti nguyn (resource allocation) Ti nguyn: CPU,bnhchnh, tape drives,
HHc cc routine tngng
Kton (accounting)
V dtnh ph
Bov(protection)
Cc tintrnh lnhau khng cnhhngnhau
Kimsot ccc truy cpvo ti nguyn An ninh (security)
Chcc user cphp sdnghthngmitruy cpcti nguyncahthng(vd: thng qua password)
49
Giao tip gia tin trnh v h iu hnh
7/21/2019 SinhVienIT.net HDH Chuong 1
50/57
Giao tip gia tin trnh v h iu hnh System call
Cung cpgiao dingiatintrnh v hiuhnh Vd: open, read, write file
Thng thngdngthvinnhphn (binary libraries)
Trong cc ngn nglptrnh cpcao, mtsthvinlptrnh
cxy dngdatrn cc thvinhthng(v dWindowsAPI, thvinGNU C/C++ nhglibc, glibc++,)
Baphngphp truyntham skhi sdngsystem call Truynthng squa thanh ghi
Truyntham sthng qua mtvng nh,achcavng nhcgi
nhiuhnh qua thanh ghi
Truyntham squa stack
50
Cc chng trnh h thng
7/21/2019 SinhVienIT.net HDH Chuong 1
51/57
Cc chng trnh h thng Chng trnh h thng (system program, phn bit vi
application program) gm Qunl hthngfile: nhcreate, delete, rename, list
Thng tin trngthi: nhdate, time, dung lngbnhtrng
Sonthofile: nhfile editor Htrngn nglptrnh: nhcompiler, assembler, interpreter
Np,thcthi, gip tm lichngtrnh: nhloader, debugger
Giao tip: nhemail, talk, web browser Ngi dng ch yu lm vic thng qua cc system
program (khng lm victrctipvicc system call)
51
Cu trc logic ca h thng
7/21/2019 SinhVienIT.net HDH Chuong 1
52/57
1.B.52
Cu trc logic ca h thng
Hthngn(monolithic) MS-DOS: khi thitk,do giihnvdung lngbnhnn
khngphn chia module(modularization), chaphn chia rchcnnggiaccphncahthng.
MS-DOS, xem nhcphn lp(layered):
Cu trc logic ca h thng (tt)
7/21/2019 SinhVienIT.net HDH Chuong 1
53/57
Cu trc logic ca h thng (tt)Hthngn(monolithic)
UNIX: gmhaiphn cc system program v kernel (file system, CPU scheduling, memory
management, v mtschcnngkhc)
Xem nh cphn lp:
signals
terminal handling
character I/O systemterminal drivers
file system
swapping
block I/O systemdisk and tape drivers
1.A.53
Cu trc logic ca h thng (tt)
7/21/2019 SinhVienIT.net HDH Chuong 1
54/57
Cu trc logic ca h thng (tt)ThitkHH: phn chia module theo cchphn
lp(layered). Vd: hiuhnh OS/2
54
Cu trc logic ca h thng (tt)
7/21/2019 SinhVienIT.net HDH Chuong 1
55/57
Cu trc logic ca h thng (tt) Thit k HH: phn chia module theo microkernel
(CMU Mach HH, 1980) ChuynmtschcnngcaHH tkernel space sang userspace
Thu gn kernel microkernel, microkernel ch bao gm ccchc nng ti thiu nh qun l tin trnh, b nh v c chgiao tipgiacc tintrnh
Giao tipgiacc module qua cchtruynthng ip
Application
Fileserver
X-application
X-window
server
POSIX
applicationPOSIXserver
Microkernel
mt module
55
My o
7/21/2019 SinhVienIT.net HDH Chuong 1
56/57
My oTHHlayer nmy o(virtual machine)
Non-virtual machinesystem model
Virtual machine system model
processes
kernel
hardware
processes
processes
processes
kernel kernel kernel
VM1 VM2 VM3
Virtual-machineimplementation
hardware
programminginterface
56
My o (tt)
7/21/2019 SinhVienIT.net HDH Chuong 1
57/57
My o (tt)
Hinthc nimVM Lm th no thc thi mt
chng trnh MS-DOS trnmt h thng Sun vi h iu
hnh Solaris?1. Tomtmy oIntelbn trn h
iu hnh Solaris v h thngSun
2. Cc lnh Intel (x86) c myoIntel chuynthnh lnhtngngcahthngSun.
Sun hardware
Solaris kernel
VM interpretation
Intel x86 VM
Intel x86 Application
Recommended