본문 바로가기

Operating System11

RTOS 용어 정리 김종찬 교수님 실시간 운영체제 및 소프트웨어 강의를 정리한 내용입니다. RTOS를 접하다 보면 Task, deadline, period와 같은 용어들을 자주 만나게 됩니다. 주로 RTOS의 특징인 시간 제약과 관련된 용어인 경우가 많습니다. 강의 내용을 바탕으로 해당 용어들을 정리해보려 합니다. TOC RTOS 스케줄링 Task and jobs Task offset Release time and deadline More about Release time More about deadline Execution time RTOS 스케줄링 프로세서가 resource가 되서 workload를 해결 Workload: 해야할 일. Task를 workload라 부른다 RTOS Schedluer는 CPU를 잘 활용해서 .. 2021. 6. 30.
RTOS (Real-Time OS) 란? Real-Time Systems이란? Computing system whose specification includes both logical and temporal correctness - Logical correctness: produces correct outputs - Temporal correctness: produces outputs at the right time - Usually "embedded systems" Real-Time System은 컴퓨팅 시스템이 잘 돌아가는 지 판단하는 요소로 시간적 요소가 추가됩니다. 논리적으로 올바른 값을 계산했어도 이를 주어진 시간 안에 계산해내지 못하면 Real-Time System으로 가치가 없습니다. Real-Time System은 Embedded.. 2021. 6. 27.
[운영체제] Concurrency(동시성)과 Parallelism(병렬성) 이해하기 Concurrency와 Parallelism은 헷갈리기 쉬운 개념입니다. 이름도 Concurrency(동시성)과 Parallelism(병렬성)으로 이름만 들었을 때는 이 둘의 차이를 구분하기 어렵습니다. Concurrency와 Parallelism의 특징을 정리하면 다음과 같습니다. Concurrency (동시성) Parallelism (병렬성) 동시에 실행되는 것처럼 보이는 것 실제로 동시에 실행되는 것 논리적인 개념 물리적인 개념 싱글코어, 멀티코어에서 가능 멀티코어에서만 가능 표만 봤을 때는 내용이 잘 와닿지 않습니다. Concurrency와 같은 경우 "동시에 실행되는 것처럼 보이는 것은 뭐지?"라는 생각이 들 수 있습니다. 그림과 함께 그리고 동기화 관점에서 Concurrency가 왜 동시에 실.. 2021. 5. 22.
OSEK OS란 - OSEK OS overview 1. OSEK/VDX이란 OSEK은 차량용 임베디드 시스템을 위한 운영체제, 통신 스택 및 네트워크 관리 프로토콜을 만든 표준 기관 혹은 표준 규격 그 자체를 말합니다. 그중 OSEK OS는 차량용 Real-time OS 표준화 단체 및 표준 규격을 말합니다. 정식 명칭은 OSEK/VDX 입니다. RTOS에 대해 궁금하시면 다음의 글(RTOS(Real-Time OS)란?)을 읽어 보시길 추천드립니다. 차량용 제어기 개발 업체들은 차량용 소프트웨어를 사용하기에 알맞은 운영체제를 개발하기 위해 노력해왔습니다. 하지만, 운영체제를 업체마다 독립적으로 개발하면서 API가 호환되지 않았습니다. 서로 다른 운영체제로 인해 응용 소프트웨어의 재사용성이 떨어졌고 이로 인해 개발에 큰 비용이 들었습니다. 운영체제가 다양.. 2021. 4. 7.
컴퓨터를 켤 때 생기는 일, 부팅이란 컴퓨터를 켜는 일을 '컴퓨터를 부팅한다'라고 하기도 합니다. 컴퓨터를 켜면 부팅이 되기 때문에 비슷한 의미로 쓰이지만, 부팅 (혹은 부트스트랩)은 운영체제를 메모리에 불러오는 일련의 과정을 포함합니다. 컴퓨터 구조를 간략히 표현하면 Processor와 Memory로 표현할 수 있습니다. Memory는 처리해야 할 데이터들을 저장하고 있고 Processor는 이를 가져와 처리합니다. 하드디스크에 저장된 프로그램(예를 들면, 게임, 워드 등)을 실행하면 먼저 프로그램을 Memory로 옮기는 작업을 합니다. 이러한 작업을 Loading이라 합니다. Loading은 시간이 꽤 걸리는 작업이지만, 메모리의 속도가 하드디스크 보다 훨씬 빠르므로 loading은 필수적입니다.Memory는 RAM(Random Acce.. 2020. 1. 1.