Cái gì gọi các hoạt động của CPU? Hệ thống bó (Batch system): jobs Time-shared systems: user programs, tasks Các hoạt động là tương tự = gọi là process Quá trình (process) một chương trình đang thực thi Một quá trình bao gồm Text section (program code), data section (chứa global variables) program counter (PC), process status word (PSW), stack pointer (SP), memory management registers, | Chöông III: Quaù trình (Process) Khaùi nieäm cô baûn Traïng thaùi quaù trình Khoái ñieàu khieån quaù trình (Process control block) Ñònh thôøi quaù trình (Process Scheduling) Caùc taùc vuï ñoái vôùi quaù trình Söï coäng taùc giöõa caùc quaù trình Giao tieáp giöõa caùc quaù trình . Khaùi nieäm cô baûn Caùi gì goïi caùc hoaït ñoäng cuûa CPU? Heä thoáng boù (Batch system): jobs Time-shared systems: user programs, tasks Caùc hoaït ñoäng laø töông töï => goïi laø process Quaù trình (process) moät chöông trình ñang thöïc thi Moät quaù trình bao goàm Text section (program code), data section (chöùa global variables) program counter (PC), process status word (PSW), stack pointer (SP), memory management registers, . Khaùi nieäm cô baûn Caùc böôùc naïp chöông trình vaøo boä nhôù . Khaùi nieäm cô baûn program code data Executable binary file (load module) program code data stack Process image in main memory Duøng load module ñeå bieåu dieãn chöông trình thöïc thi ñöôïc Layout luaän lyù cuûa process image start address chöông trình => quaù trình . Khaùi nieäm cô baûn Caùc böôùc heä ñieàu haønh khôûi taïo quaù trình Caáp phaùt moät ñònh danh duy nhaát (process number hay process identifier, pid) cho quaù trình Caáp phaùt khoâng gian nhôù ñeå naïp quaù trình Khôûi taïo khoái döõ lieäu Process Control Block (PCB) cho quaù trình PCB laø nôi heä ñieàu haønh löu caùc thoâng tin veà quaù trình Thieát laäp caùc moái lieân heä caàn thieát (vd: saép PCB vaøo haøng ñôïi ñònh thôøi, ) Khôûi taïo quaù trình thaùi quaù trình Caùc traïng thaùi cuûa quaù trình (process states): new: quaù trình vöøa ñöôïc taïo ready: quaù trình ñaõ coù ñuû taøi nguyeân, chæ coøn caàn CPU running: caùc leänh cuûa quaù trình ñang ñöôïc thöïc thi waiting: hay laø blocked, quaù trình ñôïi I/O hoaøn taát, tín hieäu. terminated: quaù trình ñaõ keát thuùc. thaùi quaù trình ready running dispatch interrupt I/O or event completion I/O or event wait new terminated waiting admit exit . | Chöông III: Quaù trình (Process) Khaùi nieäm cô baûn Traïng thaùi quaù trình Khoái ñieàu khieån quaù trình (Process control block) Ñònh thôøi quaù trình (Process Scheduling) Caùc taùc vuï ñoái vôùi quaù trình Söï coäng taùc giöõa caùc quaù trình Giao tieáp giöõa caùc quaù trình . Khaùi nieäm cô baûn Caùi gì goïi caùc hoaït ñoäng cuûa CPU? Heä thoáng boù (Batch system): jobs Time-shared systems: user programs, tasks Caùc hoaït ñoäng laø töông töï => goïi laø process Quaù trình (process) moät chöông trình ñang thöïc thi Moät quaù trình bao goàm Text section (program code), data section (chöùa global variables) program counter (PC), process status word (PSW), stack pointer (SP), memory management registers, . Khaùi nieäm cô baûn Caùc böôùc naïp chöông trình vaøo boä nhôù . Khaùi nieäm cô baûn program code data Executable binary file (load module) program code data stack Process image in main memory Duøng load module ñeå bieåu dieãn chöông trình thöïc thi ñöôïc Layout luaän lyù