º»¹®/³»¿ë
¿î¿µÃ¼Á¦ ÇÁ·Î¼¼½º
1. ÇÁ·Î¼¼½º °³³ä
ÇÁ·Î¼¼½º¶õ ½ÇÇà ÁßÀÎ ÇÁ·Î±×·¥ »óŸ¦ ¸»Çϸç ÇÁ·Î¼¼½º´Â ÇÁ·Î±×·¥ ÀÚüÀÎ ½ÇÇà ÄÚµå¿Í ÀÚ·á ±×·¡°í ½ÇÇà Á¦¾îÁ¤º¸°¡ µé¾î ÀÖ´Â PCB°¡ °áÇÕµÈ ´ÜÀ§°¡ µÈ´Ù.
ÀÌ·¯ÇÑ ÇÁ·Î±×·¥Àº ¼öµ¿Àû °³Ã¼(passive entity)À̰í ÇÁ·Î¼¼½º´Â ´Éµ¿Àû °³Ã¼ (active entity)·Î¼ ÇÁ·Î¼¼½ºÀÇ ½ÇÇàÀº ¼øÂ÷ÀûÀ¸·Î ½ÇÇàµÇ¾î¾ß ÇÑ´Ù.
- »ç¿ëÀÚ ÇÁ·Î¼¼½º : »ç¿ëÀÚ Äڵ带 ¼öÇàÇÏ´Â ÇÁ·Î¼¼½º
- ¿î¿µÃ¼Á¦ ÇÁ·Î¼¼½º : »ç¿ëÀÚ°¡ ÀÔ·ÂÇÑ ¸í·É¾î¸¦ ÇØ¼®ÇÏ´Â ½© ÇÁ·Î¼¼½º³ª ÀÔÃâ·Â ÇÁ·Î¼¼½ºµé ¶Ç´Â »ç¿ëÀÚ ÇÁ·Î¼¼½º¸¦ »ý¼ºÇÏ´Â µîÀÇ ½Ã½ºÅÛ ¿î¿µ¿¡ ÇÊ¿äÇÑ Äڵ带 ¼öÇàÇÏ´Â ÇÁ·Î¼¼½ºµé.
2. º´Çà(concurrent)ÇÁ·Î¼¼½º / ÇÁ·Î¼¼½º °ü°è
º´ÇàÇÁ·Î¼¼½º : ½Ã½ºÅÛ ³»¿¡ ´Ù¼öÀÇ ÇÁ·Î¼¼½ºµéÀÌ µ¿½Ã¿¡ ½ÇÇàµÇ´Â °Í
- ÇÁ·Î¼¼½ºµéÀÌ ½Ã½ºÅÛ ³»¿¡ µ¿½Ã¿¡ Á¸ÀçÇϳª ¾î´À ÇÑ ¼ø°£¿¡ ´ÜÁö ÇÑ ÇÁ·Î¼¼½º¸¸ CPU¿¡¼ ½ÇÇàµÈ´Ù. À̸¦ º´Ç༺ ¶Ç´Â µ¿½Ã¼ºÀ̶ó°í ÇÑ´Ù.
©ç µ¶¸³Àû ÇÁ·Î¼¼½º(independent process)
- ¾î¶² ÇÁ·Î¼¼½º°¡ ½Ã½ºÅÛ¿¡¼ ½ÇÇàÁßÀÎ ´Ù¸¥ ÇÁ·Î¼¼½ºÀÇ ¿µÇâÀ» ¹ÞÁöµµ¾Ê°í ¿µÇâÀ» ÁÖÁöµµ ¾ÊÀ» ¶§¡¦(»ý·«)
¨ç ÇÁ·Î¼¼½ºÀÇ »óÅ´ ´Ù¸¥ ÇÁ·Î¼¼½º¿¡ ÀÇÇØ¼ °øÀ¯µÇÁö ¾Ê´Â´Ù.
¨è ÇÁ·Î¼¼½ºÀÇ ½ÇÇàÀº °áÁ¤ÀûÀÌ´Ù. Áï, ½ÇÇà°á°ú´Â ÀԷ¿¡ ÀÇÇØ¼¸¸ °áÁ¤
¨é ½ÇÇàÀº Àç»ý°¡´ÉÇÑ °ÍÀ¸·Î ½ÇÇà°á°ú´Â °°Àº ÀԷ¿¡ ´ëÇØ¼´Â Ç×»ó µ¿ÀÏÇÏ´Ù.
¨ê ½ÇÇàÀº ³ª»Û ¿µÇâÀ» ¹ß»ýÇÏÁö ¾Ê°í Áߴܵǰí Àç½ÃÀÛµÉ ¼ö ÀÖ´Ù.
¨ç ÇÁ·Î¼¼½ºÀÇ »óÅ´ ´Ù¸¥ ÇÁ·Î¼¼½ºµé°ú °øÀ¯µÈ´Ù.
¨è ÇÁ·Î¼¼½ºÀÇ ½ÇÇàÀº ºñ°áÁ¤ÀûÀÌ´Ù. Áï, ½ÇÇà°á°ú´Â »ó´ëÀû ½ÇÇà¼ø¼¿¡ ÀÇÁ¸ÇÏ°í ¹Ì¸® ¿¹ÃøµÉ ¼ö ¾ø´Ù.
¨é ½ÇÇàÀº Àç»ýºÒ°¡´ÉÇÏ´Ù. Áï, ½ÇÇà°á°ú´Â °°Àº ÀԷ¿¡ ´ëÇØ Ç×»ó °°Áö ¾Ê´Ù.
3. ÇÁ·Î¼¼½º »óÅÂ
¨ç ½ÇÇà(run)»óÅ : Áß¾Óó¸®ÀåÄ¡¸¦ ÇÒ´ç¹ÞÀº ÇÁ·Î¼¼½º·Î¼ ¸í·É¾î°¡ ½ÇÇàµÇ°í ÀÖ´Â »óÅÂ.
¨è ´ë±â(wait)»óÅ : ÇÁ·Î¼¼½º´Â ¾î¶² »ç°Ç(ÀÔÃâ·Â¿Ï·áµî)ÀÌ ÀϾ±â¸¦ ±â´Ù¸®°í ÀÖ´Â »óÅÂ.
¨é Áغñ(ready)»óÅ : Áß¾Óó¸®ÀåÄ¡ÀÇ ÇÁ·Î¼¼½º°¡ ÇÁ·Î¼¼¼¿¡ ÇÒ´çµÇ±â¸¦ ±â´Ù¸®°í ÀÖ´Â »óÅÂ.
4. ¹®¸Æ ±³È¯(context switching)
5. ÇÁ·Î¼¼½ºÁ¦¾îºí·°(PCB:Process Control Block)
¨ç ÇÁ·Î