Luận văn
Hệ thống thời gian thực
SVTH: TRấèN DUY HOA
1
MUC LUC
Chỷỳng I Hẽ THệậNG THI GIAN THC..................................................... 4
1.1. Hùồ thửởng thỳõi gian thỷồc:....................................................................... 4
1.1.1. Giỳỏi thiùồu vùỡ hùồ thửởng thỳõi gian thỷồc :............................................ 4
1.1.2. Khaỏi niùồm hùồ thửởng thỳõi gian thỷồc :................................................4
1.1.3. Caỏc loaồi hùồ thửởng thỳõi gian thỷồc:....................................................5
1.2. Hùồ iùỡu haõnh cho hùồ thửởng thỳõi gian thỷồc :............................................ 6
1.2.1. Sỳ lỷỳồc vùỡ hùồ iùỡu haõnh :............................................................... 6
1.2.2. Quan niùồm tiùởn trũnh, tiùớu trũnh :..................................................... 7
CAC CHNG TRềNH NG DUNG Hẽ IẽèU HANH PHấèN CNG..........8
User 1........................................................................................................ 8
User n User 2 ............................................................................................. 8
1.2.3. Hùồ iùỡu haõnh thỳõi gian thỷồc :..........................................................8
Hẽ IẽèU HANH WINDOWS VA VấậN ẽè THI GIAN THC................... 9
1.3. Ngửn ngỷọ lờồp trũnh cho hùồ thửởng thỳõi gian thỷồc:...................................10
1.3.1. Tửớng quan vùỡ ngửn ngỷọ lờồp trũnh cho hùồ thửởng thỳõi gian thỷồc:........10
1.3.2. Sỳ lỷỳồc vùỡ ngửn ngỷọ lờồp trũnh C:...................................................10
1.4. Quan niùồm thỳõi gian trong hùồ thửởng thỳõi gian thỷồc: ..............................11
1.4.1. ửỡng hửỡ hùồ thửởng:........................................................................11
1.4.2. Caỏc loaồi ửỡng hửỡ hùồ thửởng:............................................................11
1.4.3. Quan niùồm vùỡ sỷồ rỳõi raồc thỳõi gian:.................................................12
1.4.4. Raõng buửồc vùỡ thỳõi gian:................................................................12
1.5. Vờởn ùỡ iùỡu phửởi cửng viùồc : ...............................................................13
1.6. Vờởn ùỡ ửỡng bửồ hoaỏ: ...........................................................................14
1.6.1. Cỳ chùở ửỡng bửồ hoaỏ:.....................................................................14
1.6.2 Phỷỳng phaỏp ửỡng bửồ trùn mửi trỷỳõng Windows:............................14
1.7. Mửồt sửở yùu cờỡu cuóa hùồ thửởng thỳõi gian thỷồc :........................................15
1.7.1. Hùồ thửởng lỳỏn vaõ phỷỏc taồp:.............................................................15
SVTH: TRÊÌN DUY HOÂ
2
1.7.2. Xûã l trïn sưë thûåc:........................................................................15
1.7.3. Thûåc sûå an toân vâ àấng tin cêåy:....................................................16
1.7.4. Giao tiïëp trûåc tiïëp vúái thiïët bõ phêìn cûáng: ......................................16
1.7.5. Thûåc hiïån trïn mưi trûúâng vâ ngưn ngûä lêåp trònh hiïåu quẫ:.............16
1.7.6. Ngûúâi sûã dng àiïìu khiïín : ...........................................................16
1.8. Vâi vđ d vïì Hïå thưëng thúâi gian thûåc :..................................................16
1.8.1. Vđ d 1:........................................................................................16
1.8.2. Vđ d 2:........................................................................................16
1.8.3. Vđ d 3:........................................................................................17
1.8.4. Ngoâi ra côn cố rêët nhiïìu RTS khấc nhau......................................17
1.9. Phûúng phấp phên tđch thiïët kïët Hïå thưëng thúâi gian thûåc :.....................17
1.9.1. Sú lûúåc vïì phûúng phấp thiïët kïë phêìn mïìm:..................................17
1.9.2. Thiïët kïë ûáng dng thúâi gian thûåc :.................................................18
1.9.3. Mư hònh àưëi tûúång :..........................................................................19
1.9.4. Sú àưì trẩng thấi (State chart, state diagram):..................................20
1.9.5. Mẩng Petri vâ àưì thõ Petri (Petri net and Petri graph):.....................20
SVTH: TRÊÌN DUY HOAÂ
3
SVTH: TRÊÌN DUY HOÂ
4
Chûúng I
HÏÅ THƯËNG THÚÂI GIAN THÛÅC
1.1. Hïå thưëng thúâi gian thûåc:
1.1.1. Giúái thiïåu vïì hïå thưëng thúâi gian thûåc :
Trong nhûäng nùm gêìn àêy, cấc hïå thưëng àiïìu khiïín theo thúâi gian thûåc lâ
mưåt trong nhûäng lơnh vûåc thu ht nhiïìu sûå ch trong giúái khoa hổc nghiïn cûáu
vïì khoa hổc mấy tđnh. Trong àố, vêën àïì àiïìu hânh thúâi gian thûåc vâ vêën àïì lêåp
lõch lâ àùåc biïåt quan trổng. Mưåt sưë ûáng dng quan trổng ca hïå thưëng thúâi gian
thûåc (RTS) àậ vâ àang àûúåc ûáng dng rưång rậi hiïån nay lâ cấc dêy chuìn sẫn
xët tûå àưång, rưbưët, àiïìu khiïín khưng lûu, àiïìu khiïín cấc thđ nghiïåm tûå àưång,
truìn thưng, àiïìu khiïín trong qn sûå...Thïë hïå ûáng dng tiïëp theo ca hïå thưëng
nây sệ lâ àiïìu khiïín rưbưët cố hoẩt àưång giưëng con ngûúâi, hïå thưëng kiïím soất
thưng minh trong cấc nhâ mấy cưng nghiïåp, àiïìu khiïín cấc trẩm khưng gian,
thùm dô àấy àẩi dûúng...
1.1.2. Khấi niïåm hïå thưëng thúâi gian thûåc :
Mưåt hïå thưëng thúâi gian thûåc (RTS – Realtime Systems) cố thïí àûúåc hiïíu
nhû lâ mưåt mư hònh xûã l mâ tđnh àng àùỉn ca hïå thưëng khưng chó ph thåc
vâo kïët quẫ tđnh toấn lưgic mâ côn ph thåc vâo thúâi gian mâ kïët quẫ nây phất
sinh ra.
Hïå thưëng thúâi gian thûåc àûúåc thiïët kïë nhùçm cho phếp trẫ lúâi (response) lẩi
cấc ëu tưë kđch thđch phất sinh tûâ cấc thiïët bõ phêìn cûáng trong mưåt râng båc
thúâi gian xấc àõnh. ÚÃ àêy ta cố thïí hiïíu thïë nâo lâ mưåt RTS bùçng cấch hiïíu thïë
nâo lâ mưåt tiïën trònh, mưåt cưng viïåc thúâi gian thûåc. Nhòn chung, trong nhûäng
RTS chó cố mưåt sưë cưng viïåc àûúåc gổi lâ cưng viïåc thúâi gian thûåc, cấc cưng viïåc
nây cố mưåt mûác àưå khêín cêëp riïng phẫi hoân têët, vđ d mưåt tiïën trònh àang cưë
gùỉng àiïìu khiïín hóåt giấm sất mưåt sûå kiïån àang xẫy ra trong thïë giúái thûåc. Búãi
vò mưỵi sûå kiïån xët hiïån trong thïë giúái thûåc nïn tiïën trònh giấm sất sûå kiïån nây
phẫi xûã l theo kõp vúái nhûäng thêy àưíi ca sûå kiïån nây. Sûå thay àưíi ca sûå kiïån
SVTH: TRÊÌN DUY HOÂ
5
trong thïë giúái thûåc xẫy ra rêët nhanh, mưỵi tiïën trònh giấm sất sûå kiïån nây phẫi
thûåc hiïån viïåc xûã l trong mưåt khoẫn thúâi gian râng båc gổi lâ deadline, khoẫn
thúâi gian râng båc nây àûúåc xấc àõnh búãi thúâi gian bùỉt àêìu vâ thúâi gian hoân têët
cưng viïåc. Trong thûåc tïë, cấc ëu tưë kđch thđch xẫy ra trong thúâi gian rêët ngùỉn
vâo khoẫng vâi mili giêy, thúâi gian mâ hïå thưëng trẫ lúâi lẩi ëu tưë kđch thđch àố
tưët nhêët vâo khoẫng dûúái mưåt giêy, thûúâng vâo khoẫng vâi chc mili giêy,
khoẫng thúâi gian nây bao gưìm thúâi gian tiïëp nhêån kđch thđch, xûã l thưng tin vâ
trẫ lúâi lẩi kđch thđch. Mưåt ëu tưë khấc cêìn quan têm trong RTS lâ nhûäng cưng
viïåc thúâi gian thûåc nây cố tìn hoân hay khưng ? Cưng viïåc tìn hoân thò râng
båc thúâi gian êën àõnh theo tûâng chu k xấc àõnh. Cưng viïåc khưng tìn hoân
xẫy ra vúái râng båc thúâi gian vâo lc bùỉt àêìu vâ lc kïët thc cưng viïåc, râng
båc nây chó àûúåc xấc àõnh vâo lc bùỉt àêìu cưng viïåc. Cấc biïën cưë kđch hoẩt
cưng viïåc khưng tìn hoân thûúâng dûåa trïn k thåt xûã l ngùỉt ca hïå thưëng
phêìn cûáng.
Vïì mùåt cêëu tẩo, RTS thûúâng àûúåc cêëu thânh tûâ cấc thânh tưë chđnh sau :
- Àưìng hưì thúâi gian thûåc : Cung cêëp thưng tin thúâi gian thûåc.
- Bưå àiïìu khiïín ngùỉt : Quẫn l cấc biïën cưë khưng theo chu k.
- Bưå àõnh biïíu : Quẫn l cấc qua trònh thûåc hiïån.
- Bưå quẫn l tâi ngun : Cung cêëp cấc tâi ngun mấy tđnh.
- Bưå àiïìu khiïín thûåc hiïån : Khúãi àưång cấc tiïën trònh.
Cấc thânh tưë trïn cố thïí àûúåc phên àõnh lâ thânh phêìn cûáng hay mïìm ty
thåc vâo hïå thưëng vâ nghơa sûã dng. Thưng thûúâng, cấc RTS àûúåc kïët húåp
vâo phêìn cûáng cố khẫ nùng tưët hún so vúái hïå thưëng phêìn mïìm cố chûác nùng
tûúng ûáng vâ trấnh àûúåc chi phđ quấ àùỉt cho viïåc tưëi ûu hoấ phêìn mïìm. Ngây
nay, chi phđ phêìn cûáng ngây câng rễ, chổn lûåu ûu tiïn phêìn cûáng lâ mưåt xu
hûúáng chung.
1.1.3. Cấc loẩi hïå thưëng thúâi gian thûåc:
Cấc RTS thûúâng àûúåc phên thânh hai loẩi sau Soft reatime system vâ
Hard realtime system : Àưëi vúái Soft realtime system, thúâi gian trẫ lúâi ca hïå
thưëng cho ëu tưë kđch thđch lâ quan trổng, tuy nhiïn trong trûúâng húåp râng båc
nây bõ vi phẩm, tûác lâ thúâi gian trẫ lúâi ca hïå thưëng vûúåt quấ giúái hẩn trïỵ cho
phếp, hïå thưëng vêỵn cho phếp tiïëp tc hoẩt àưång bònh thûúâng, khưng quan têm
àïën cấc tấc hẩi do sûå vi phẩm nây gêy ra (Thûúâng thò tấc hẩi nây lâ khưng àấng
kïí).
Ngûúåc lẩi vúái Soft realtime system lâ Hard realtime system, trûúâng húåp
nây ngûúâi ta quan têm khùỉc khe àïën cấc hêåu quẫ do sûå vi phẩm giúái hẩn thúâi
gian àïí cho phếp búãi vò nhûäng hêåu quẫ nây cố thïí lâ rêët tưìi tïå, thiïåt hẩi vïì vêåt
SVTH: TRÊÌN DUY HOÂ
6
chêët, cố thïí gêy ra nhûäng ẫnh hûúãng xêëu àïën àúâi sưëng con ngûúâi. Mưåt vđ d cho
loẩi nây lâ hïå thưëng àiïìu khiïín khưng lûu, mưåt phên phưëi àûúâng bay, thúâi gian
cêët cấnh, hẩ cấnh khưng húåp l, khưng àng lc cố thïí gêy ra tai nẩn mấy bay
mâ thẫm hổa ca nố khố mâ lûúâng trûúác àûúåc.
Trong thûåc tïë thò cố nhiïìu RTS bao gưìm cẫ hai loẩi soft vâ hard. Trong cẫ
hai loẩi nây, mấy tđnh thûúâng can thiïåp trûåc tiïëp hóåc giấn tiïëp àïën cấc thiïët bõ
vêåt l àïí kiïím soất cng nhû àiïìu khiïín sûå hoẩt àưång ca thiïët bõ nây. Àûáng trïn
gốc àưå nây, ngûúâi ta thûúâng chia cấc RTS ra lâm hai loẩi sau :
(1) Embedded system : Bưå vi xûã l àiïìu khiïín lâ mưåt phêìn trong toân bưå
thiïët bõ, nố àûúåc sẫn xët trổn gối tûâ ëu tưë cûáng àïën ëu tưë mïìm tûâ nhâ mấy,
ngûúâi sûã dng khưng biïët vïì chi tiïët ca nố vâ chó sûã dng thưng qua cấc nt
àiïìu khiïín, cấc bẫng sưë. Vúái hïå thưëng nây, ta sệ khưng thêëy àûúåc nhûäng thiïët bõ
nhû trong mấy tđnh bònh thûúâng nhû bân phđm, mân hònh... mâ thêy vâo àố lâ
cấc nt àiïìu khiïín, cấc bẫng sưë, àên tđn hiïåu hay cấc mân hònh chun dng àùåc
trûng cho tûâng hïå thưëng. Mấy giùåt lâ mưåt vđ d. Ngûúâi sûã dng chó viïåc bêëm nt
chổn chûúng trònh giùåt, xem kïët quẫ qua hïå thưëng àên hiïåu... Bưå vi xûã l trong
Embedded system nây àậ àûúåc lêåp trònh trûúác vâ gùỉn chùåt vâo ngay tûâ khi sẫn
xët vâ khưng thïí lêåp trònh lẩi. Nhûäng chûúng trònh nây chẩy àưåc lêåp, khưng cố
sûå giao tiïëp vúái hïå àiïìu hânh (HÀH) cng nhû khưng cho phếp ngûúâi sûã dng
can thiïåp vâo.
(2) Loẩi thûá hai lâ bao gưìm nhûäng hïå thưëng cố sûå can thiïåp ca mấy tđnh
thưng thûúâng. Thưng qua mấy tđnh ta hoân toân cố thïí kiïím soất cng nhû àiïìu
khiïín mổi hoẩt àưång ca thiïët bõ phêìn cûáng ca hïå thưëng nây. Nhûäng chûúng
trònh àiïìu khiïín nây cố rêët nhiïìu loẩi, phc v cho nhiïìu mc àđch khấc nhau vâ
cố thïí àûúåc viïët lẩi cho ph húåp vúái u cêìu thûåc tïë. Hiïín nhiïn thò loẩi hïå thưëng
nây hoẩt àưång àûúåc phẫi cêìn mưåt HÀH àiïìu khiïín mấy tđnh. HÀH nây phẫi cố
khẫ nùng nhêån biïët àûúåc thiïët bõ phêìn cûáng, cố khẫ nùng hoân têët cưng viïåc
trong giúái hẩn thúâi gian nghiïm ngùåt. HÀH nây phẫi lâ HÀH hưí trúå xûã l thúâi
gian thûåc – Realtime operating system (RTOS).
1.2. Hïå àiïìu hânh cho hïå thưëng thúâi gian thûåc :
1.2.1. Sú lûúåc vïì hïå àiïìu hânh :
Cho àïën nay, nhòn chung thò chûa cố mưåt àõnh nghơa nâo lâ hoân hẫo vïì
hïå àiïìu hânh (HÀH). HÀH àûúåc xem nhû mưåt chûúng trònh hoẩt àưång giûäa
ngûúâi sûã dng vâ phêìn cûáng mấy tđnh vúái mc tiïu cung cêëp mưåt mưi trûúâng àïí
thûåc thi cấc chûúng trònh ûáng dng vâ thån lúåi, hiïåu quẫ hún trong viïåc sûã dng
mấy tđnh.
SVTH: TRÊÌN DUY HOÂ
7
Cho àïën ngây nay, HÀH àậ phất triïín vúái nhiïìu loẩi khấc nhau nhû :
HÀH quẫn l theo lư àún giẫn, quẫn l theo lư àa chûúng (Multiprogram), chia
xễ thúâi gian (Multitasking), xûã l song song, mẩng vâ phên tấn...
1.2.2. Quan niïåm tiïën trònh, tiïíu trònh :
Trong cấc HÀH hiïån àẩi ngây nay, quan niïåm tiïën trònh vâ tiïíu trònh lâ
trung têm ca cẫ hïå thưëng, têët cẫ cấc xûã l àïìu têåp trung vâo tiïën trònh, vâo tiïíu
trònh. ÚÃ àêy àïí thån tiïån, ta ch trổng vâo mưi trûúâng Winows 32 bit.
SVTH: TRÊÌN DUY HOÂ
8
CẤC CHÛÚNG TRỊNH ÛÁNG DNG HÏÅ ÀIÏÌU HÂNH PHÊÌN
CÛÁNG
User 1
Hònh 1 : Mư hònh trûâu tûúång ca hïå thưëng mấy tđnh
User n User 2
Mưåt tiïën trònh àûúåc xem nhû lâ mưåt thïí hiïån àang thûåc thi ca mưåt
chûúng trònh. Trïn mưi trûúâng Windows 32 bit, mưåt tiïën trònh súã hûãu 4 GB
khưng gian àõa chó bưå nhúá khưng ph thåc vâo bưå nhúá vêåt l. Têët cẫ cấc DLL
cêìn thiïët àïìu àûúåc map vâo khưng gian àõa chó nây. Khi mưåt tiïën trònh àûúåc tẩo
lêåp, cố mưåt tiïíu trònh chđnh àûúåc tẩo lêåp vâ tiïën trònh kïët thc khi têët cẫ cấc tiïíu
trònh con àïìu kïët thc. Mưåt tiïën trònh cố thïí cố nhiïìu tiïíu trònh con vâ cố thïí tẩo
lêåp cấc tiïën trònh khấc.
Tiïíu trònh lâ mưåt thânh phêìn xûã l cú bẫn ca tiïën trònh, tiïíu trònh súã hûäu
mưåt con trỗ lïånh riïng, tẩp cấc thanh ghi riïng, stack riïng vâ têët cẫ nùçm trong
khưng gian àõa chó ca tiïën trònh súã hûäu. Nhû vêåy, cấc tiïíu trònh trong mưåt tiïën
trònh cố thïí chia sễ cấc tâi ngun vúái nhau. Têët cẫ cấc cưng viïåc àiïìu phưëi tiïën
trònh àïìu nhùỉm vâo hoẩt àưång ca tiïíu trònh.
Cấc tiïíu trònh, tiïën trònh phẫi liïn lẩc vúái nhau àïí cố mưåt cú chïë àiïìu phưëi
húåp l, àïí cố mưåt cấch thûác chia sệ dûä liïåu vúái nhau. Cấc cú chïë liïn lẩc vâ chia
sệ dûä liïåu àûúåc cấc HÀH vâ NNLT hiïån àẩi quan têm nhû sûã dng tđn hiïåu,
pipe, vng nhúá chia sệ, trao àưíi thưng àiïåp, sûã dng socket...v.v.
1.2.3. Hïå àiïìu hânh thúâi gian thûåc :
Hïå àiïìu hânh thúâi gian thûåc (RTOS - Realtime Operating system) lâ HÀH
cố sûå ch trổng giẫi quët vêën àïì àôi hỗi khùỉc khe vïì thúâi gian cho cấc thao tấc
xûã l hóåt dông dûä liïåu. Àêy lâ HÀH hiïån àẩi, tinh vi, thúâi gian xûã l nhanh,
phẫi cho kïët quẫ chđnh xấc trong thúâi gian bõ thc ếp nhanh nhêët. HÀH nây
SVTH: TRÊÌN DUY HOÂ
9
thûúâng sûã dng mưåt àưìng hưì hïå thưëng cố cho k ngùỉt nhỗ vâo khoẫng vâi micro
giêy àïí thûåc hiïån àiïìu phưëi cấc tiïën trònh.
Cấc HÀH hiïån àẩi ngây nay phêìn lúán àïìu hưí trúå (úã mûác tûúng àưëi) xûã l
thúâi gian thûåc, cung cêëp mưåt mưi trûúâng cố thïí tưí chûác cấc RTS. Theo sûå àấnh
giấ ca cấc chun viïn RTS thò cho àïën nay, cấc HÀH thåc hổ UNIX lâ cố thïí
àấp ûáng tưët nhêët cấc u cêìu khùỉc khe ca cấc RTS phûác tẩp. Tuy nhiïn, trong
khn khưí lån vùn nây cng vúái cấc u cêìu cng nhû hiïån trẩng thûåc tïë, hïå
thưëng àang àûåoc quan têm sệ triïín khai trïn hïå thưëng mấy PC s dng HÀH
Windows 9x 32 bit.
HÏÅ ÀIÏÌU HÂNH WINDOWS VÂ VÊËN ÀÏÌ THÚÂI GIAN THÛÅC
Windows àûúåc thiïët kïë búãi hậng Microsoft, ra àúâi vâo 11/1985, cho àïën
nay àậ trẫi qua nhiïìu phiïn bẫn vâ cẫi tiïën. Windows àûúåc sûã dng rưång rậi nhêët
trïn thïë giúái mấy vi tđnh cấ nhên (PC) vâ àậ àûa Microsoft thânh cưng ty hâng
àêìu thïë giúái trong lơnh vûåc tin hổc. ÚÃ àêy ta quan têm àïën cấc Windows 9x vúái
cấc phiïn bẫn 32 bit.
Lâ HÀH àa nhiïåm (Multitasking) xûã l 32 bđt, chẩy trïn mưi trûúâng mấy
PC, cố hưỵ trúå cho viïåc xûã l thúâi gian thûåc, cố u cêìu cêëu hònh khưng cao, nïëu
cêëu hònh cao thò tưëc àưå xûã l câng nhanh, tûúng thđch cấc HÀH khấc, cố nhiïìu
àùåc àiïím àûúåc mổi ngûúâi ûu chång nhû giao diïån àưì hoẩ thên thiïån, tđnh an
toân, khẫ nùng Plus and Play... v.v. Vïì vêën àïì thúâi gian thûåc, HÀH àa nhiïåm
nây àùåt nïìn mống trïn sûå chia xễ thúâi gian. Khấi niïåm tiïën trònh vâ khấi niïåm
tiïíu trònh lâ trung têm nïìn tẫng cho vêën àïì xûã l àiïìu phưëi, àưìng bưå vâ cấc xûã l
liïn quan thúâi gian thûåc khấc. HÀH nây vưën àûúåc viïët phêìn lúán bùçng ngưn ngûä
C/C++... lâ mưåt trong nhûäng ngưn ngûä lêåp trònh (NNLT) cố khẫ nùng hưí trúå xûã
l thúâi gian thûåc (Xem phêìn Ngưn ngûä lêåp trònh RTS). Cung cêëp thû viïån dng
chung API cho phếp giao tiïëp vúái hïå thưëng cng nhû tưí chûác àưìng bưå hoấ tiïën
trònh, tiïíu trònh. Windows 9x khưng hưí trúå can thiïåp trûåc tiïëp vâo hïå thưëng hay
cấc thiïët bõ ngoẩi vi (nhûng vêỵn cho phếp), tuy nhiïn lẩi cung cêëp mưåt mưi
trûúâng giao tiïëp dïỵ dâng.