116
실시간
운영체제는
일반
운영체제와
개념은
거의
같다
.
약간
다른
점이
있다면
메모리와
같은
자원의
효율성에
초점을
맞추느냐
아니면
시간
제약에
초점을
맞추느냐라는정도일
것이다
.
또한
여러
사용자에
의해
동시
접속되는시스템에서는
각
사용자들이
실행하는
프로그램이
각각의
TASK
로서
수행이
되고
보통
우선순위에
거의
차이를두지
않지만
,
실시간
운영체제에서는
TASK
에
우선순위를
정하여
실시간
처리라는
점에
좀더
충실하게
설계한다
.
결론적으로
불규칙적으로
들어오는
여러
가지
입력을각각의
작업이
원하는
시간
내에
끝내기
위해서는
이들간의
작업을
조절해
주는
관리툴이
필요한데
이
작업을
수행하는
한
프로그램이
실시간
운영체제이고
이는
대단히
유용하게
사용될
수
있게
된다
.
운영체제에 대한 기본 개념
운영체제가
탑재되면
이로
인해
약간의
부하가
약간의오버로드가
발생하게
되지만
프로그래머의
입장에서
프로그램을
보다
쉽게
짤
수
있고
프로그램
실행
성능을
좀더
예측하기
쉽게
해주며
완성된
프로그램의
유지보수를위한
관리가
쉽도록
도와주기
때문에
충분한
보상이
된다
.
운영체제는
기본적으로
CPU
에서
처리되는
프로그램들을
관리하기
위한
TASK management(TASKscheduling, Communication, Synchronization
등을
포함
) Memory
자원을
효율적으로
사용하기
위한
Memory management, Data
입출력을
담당하는
I/Omanagement, Time Management, Interruptservice, File system management
등을
통하여
자원사용
효율을
높일
수
있게
설계된다
.
위와
같이
운영체제를
구성하고
있는
요소들에
대해
알아보기
위해
기본적으로
집고
넘어가야
할
중요한
개념에대해서
살펴보자
.
지면의
크기상
모두를
자세히
다루지는못하나
관련된
도서나
자료가
주변에
많이
있으므로
이를적극
활용하기
바란다
.
・Resource :
자원은
TASK
가
사용하는
Entry(I/O,
변수
,
메모리
등
)
를
뜻한다
.
・Shared Resource :
한
개
이상의
TASK
에
의해서사용되는
(
공유되는
)
자원을
말하며
데이터의
원치
않는
변조를
방지하기
위해서는
공유
자원에
접근할
때
독점권을얻어야
하는데
이를
Mutual Exclusion
이라고
한다
.
・Multitasking :
어떤
응용
프로그램이
수행되기
위해서는
여러
기능들이
동시에
(
물리적으로는
아님
)
수행되어야
할
필요가
있고
이를
순차적으로
프로그램하기
어렵기
때문에
사용자가
프로그램을
쉽게
하기
위해서
도입한
개념이며
여러
가지의
작업이
동시에
이루어지는
것처럼
처리된다
(
실제로
1
개의
CPU
로는
한
순간에
하나의일만
처리할
수
있다
). CPU
사용률을
최대로
높이고
모듈
구조의
애플리케이션을
제공한다
.
이를
이용하면
실시간
애플리케이션에서의
복잡성을
줄여주므로
디자인하기쉽게
된다
.
・
Context Switching :
여러
TASK
가
번갈아
가며작업을
할
때
한
작업을
중단하고
다른
TASK
를
수행하기직전에
이전
TASK
의
상태를
저장하고
새로운
TASK
의상태를
불러
들이는
교환작업이
필요하다
.
메모리
자원은
TASK
마다
따로
할당하므로
문제가
없으나
CPU
의
레지스터들은
공유
자원이므로
충돌을
방지하기
위해서는
현상태
값을
저장해야
한다
. Context Switching
은
실제적인
프로세스
작업이
아니므로
이에
걸리는
시간은
Over-head
이며
짧으면
짧을수록
좀
더
효율적인
운영체제가된다
.
・Kernel :
운영체제의
기능
중에서도
핵심이
되는
부분을
커널이라고
하고
Multitasking
시스템
관리자로서여기에서
Context switching, TASK scheduling,Memory management
등의
기능을
한다
.
보통
커널은시스템에
약간의
부하
(
약
2
~
5%)
를
주며
임베디드용의경우
추가적으로
코드를
위한
ROM
과
커널
데이터
구조
TASK1TASK2 TASK3
STACK STACK STACKCPURegister
SP
StatusSPPriority・・・StatusSPPriority・・・StatusSPPriority・・・
Leave a Comment