네 가지 실시 간 운영 체제 의 분석 비교

본 고 는 네 가지 실시 간 운영 체제(RTOS)의 특성 을 분석 하고 비교 하고 자 한다.이들 은 Lynx 실시 간 시스템 회사 의 LynxOS,QNX 소프트웨어 시스템 유한 공사 의 QNX 와 대표 적 인 실시 간 Linux 인 뉴 멕시코 공 대 RT-Linux 와 캔 자 스 대학의 KURT-Linux 이다.최근 몇 년 동안 실시 간 운영 시스템 은 멀티미디어 통신,온라인 사무 처리,생산 과정 통제,교통 통제 등 각 분야 에서 광범 위 하 게 응용 되 었 기 때문에 사람들의 중 시 를 받 고 있다.1.기본 특징 개술 QNX 는 분포 식,삽입 식,규모 확장 이 가능 한 실시 간 운영 체제 이다.이 는 POSIX.1,(프로그램 인터페이스),POSIX.2(Shell 과 도구),부분 은 POSIX.1b(실시 간 확장)를 따른다.그것 은 최초 로 1980 년 에 개발 되 었 고 지금까지 상당히 성숙 했다.LynxOS 는 분포 식,내장 형,규모 확장 이 가능 한 실시 간 운영 체제 로 POSIX.1a,POSIX.1b 와 POSIX.1c 기준 을 따른다.그것 은 1988 년 에 최초 로 개발 되 었 다.RT-Linux 는 일부 POSIX.1b 표준 을 지원 하 는 내장 형 하 드 실시 간 운영 체제 이다.KURT-Linux 는 내장 형 응용 을 위 한 것 이 아니 라 하 드(hard)실시 간/소프트(soft)실시 간 응용 과 달리'엄격(firm)'실시 간 응용 개념 을 제시 했다.예 를 들 어 일부 멀티미디어 응용 과 ATM 네트워크 응용,KURT 는 이러한 응용 을 위 한'엄격 한'실시 간 시스템 이다.2.시스템 구조 가 실시 간 시스템 과 다른 실현 은 주로 마이크로 커 널 시스템 구조 로 핵심 이 작고 믿 을 수 있 으 며 ROM 이 경화 되 기 쉬 우 며 모듈 화 확장 이 가능 하 다.마이크로 커 널 구조 시스템 에서 OS 서비스 모듈 은 독립 된 주소 공간 에서 실행 되 기 때문에 서로 다른 모듈 의 메모리 오류 가 격 리 됩 니 다.그러나 프로 세 스 간 통신 과 문맥 전환 비용 이 크게 늘 어 난 약점 도 있다.대형 집적 화 커 널 시스템 에 비해 시스템 호출 을 더 많이 해서 같은 임 무 를 수행 해 야 한다.QNX 는 마이크로 커 널 실시 간 운영 체제 로 그 핵심 은 4 가지 서 비 스 를 제공 합 니 다.프로 세 스 스케줄 링,프로 세 스 간 통신,바 텀 네트워크 통신 과 중단 처리,프로 세 스 는 독립 된 주소 공간 에서 실 행 됩 니 다.모든 다른 OS 서 비 스 는 협업 을 위 한 사용자 프로 세 스 를 실현 하기 때문에 QNX 핵심 은 매우 작고(QNX4.x 는 약 12Kb)운행 속도 가 매우 빠르다.LynxOS 는 아직 마이크로 커 널 구조의 운영 체제 가 아니 지만 이른바'갤 럭 시'기술 로 대형 집적 화 커 널 에서 마이크로 커 널 로 개조 할 계획 이다.이 기술 은 LynxOS 3.0 에 도 입 될 것 이다.새로운 28Kb 마이크로 커 널 은 다음 과 같은 서 비 스 를 제공 합 니 다.핵심 시작 과 정지,바 텀 메모리 관리,오류 처리,중단 처리,다 중 태 스 크,바 텀 동기 화 와 상호 배척 지원 입 니 다.RT-Linux 는 바 텀 작업 생 성,서비스 루틴 불 러 오기 중단,바 텀 작업 통신 대기 열,서비스 루틴(ISR)과 Linux 프로 세 스 중단 만 지원 하 는 작은 실시 간 핵심 을 실현 했다.원래 의 비 실시 간 리 눅 스 핵심 은 앞 설 수 있 는 작업 으로 이 작은 핵심 위 에서 실행 되 고 모든 작업 은 핵심 주소 공간 에서 실 행 됩 니 다.이 는 마이크로 커 널 과 대형 커 널 과 달리 실시 간 EXE(realime executive)시스템 구조 에 속한다.그 신뢰성 과 유지 가능성 은 전신 서비스 시스템 에 있어 서 모두 이상 적 이지 않다.KURT-Linux 핵심 은 커 널 과 실시 간 모듈 두 부분 을 포함한다.커 널 은 실시 간 이벤트 의 스케줄 링 을 책임 지고 실시 간 모듈 은 사용자 프로 세 스에 특정한 실시 간 서 비 스 를 제공한다.그것 은 마이크로 커 널 구조 에 속 하지 않 는 다.3.스케줄 링 전략 분석 임무 스케줄 링 전략 은 실시 간 성능 에 직접적인 영향 을 주 는 요소 이다.스케줄 링 알고리즘 은 다양 하지만 대부분 단조 율 알고리즘(RM)과 최초 기한 우선 알고리즘(EDF)에 의 해 변화 한다.전 자 는 주로 정적 주기 임무 의 스케줄 링 에 사용 되 고 후 자 는 동적 스케줄 링 에 사용 되 며 서로 다른 시스템 상태 에서 두 가지 알고리즘 은 각각 우열 이 있다.상업 제품 에서 채택 하 는 실제 전략 은 종종 각종 요소 의 절충 이다.QNX 는 POSIX.1b 표준 프로 세 스 스케줄 링 을 제공 합 니 다.32 개의 프로 세 스 우선 순위;선점 식,우선 순위 기반 본문 전환;선택 가능 한 스케줄 링 정책:FIFO,회전 정책,적응성 정책.LynxOS 의 스케줄 링 전략 은 다음 과 같다.LynxOS 는 라인 개념 을 지원 하고 256 개의 전역 사용자 라인 우선 순 위 를 제공한다.하 드 실시 간 우선 순위 스케줄 링:모든 우선 순위 에서 회전 스케줄 링,정량 스케줄 링 과 FIFO 스케줄 링 전략 을 실현 했다.빠 른 본문 전환 과 차단 시간 이 짧 습 니 다.선점 형 RTOS 핵심.RT-Linux 는 운영 체제 에서 간단 한 실시 간 핵심 을 실현 했다.Linux 자 체 는 선점 할 수 있 는 임무 로 서 핵 에서 운행 되 고 우선 순위 가 가장 낮 으 며 수시로 높 은 우선 순위 임무 에 의 해 선점 된다.사용 자 는 스스로 스케줄 러 를 작성 할 수 있 습 니 다.불 러 올 수 있 는 핵심 모듈 로 구현 할 수 있 습 니 다.실 현 된 스케줄 러 는 우선 순위 의 선점 식 스케줄 러 와 EDF 스케줄 러 를 기반 으로 합 니 다.우선 순위 의 스케줄 링 을 바탕 으로'단조 율 알고리즘'을 사용 하여 주기 작업 을 직접 지원 합 니 다.KURT-Linux 는 두 가지 상태 에서 실행 할 수 있 습 니 다.보통 상태 와 실시 간 상태 입 니 다.일반적인 상태 에서 모든 프로 세 스 가 실 행 될 수 있 지만 일부 핵심 서 비 스 는 차단 을 중단 하 는 예상 치 못 한 성 을 가 져 옵 니 다.실시 간 모드 는 실시 간 프로 세 스 만 실행 할 수 있 습 니 다.FIFO 스케줄 링 정책,회전 스케줄 링 정책,UNIX 시간 스케줄 링 정책 을 지원 합 니 다.SCHED-KURT 스 케 쥴 링 정책 이 추가 되 었 습 니 다.이것 은 정적 스 케 쥴 링 정책 입 니 다.특수 한 스 케 쥴 링 파일 을 사용 하여 미리 정 의 된 스 케 쥴 링 프로 세 스 의 인 자 를 기록 합 니 다.상기 간략 한 설명 을 통 해 알 수 있 듯 이 앞의 세 가지 스케줄 링 전략 은 비교적 규범 적 이 고 특히 두 가지 상업 RTOS 는 POSIX.1b 실시 간 스케줄 링 기준 을 따 르 거나 일부 따른다.4.운영 체제 서비스 비교 4.1 QNX 의 시스템 서비스:다양한 자원 관리 자 는 각종 파일 시스템 과 장치 관 리 를 포함 하고 여러 개의 파일 시스템 을 동시에 실행 할 수 있 습 니 다.이 는 완전한 POSIX.1 과 UNIX 문법 을 제공 하 는 POSIX 파일 시스템 을 포함 하고 다양한 플래시 메모리 장치 의 삽입 식 파일 시스템 을 지원 하 며 다양한 파일 서버(예 를 들 어 Windows NT/95,LAN Manager 등)의 투명 하 게 접근 하 는 SMB 파일 시스템,DOS 파일 시스템,CDROM 파일 시스템 등 이다.설비 관리.프로 세 스 와 터미널 장치 간 에 큰 스루풋,낮은 비용 인터페이스 서 비 스 를 제공 합 니 다.도형/창 지원.QNX Windows,X Window System for QNX,MS Windows NT/95 와 X Window 시스템 에 대한 원 격 그래 픽 연결 을 포함한다.  TCP/IP for QNX。 고성능,잘못 사용 한 QNX 네트워크 인 FLEET 는 네트워크 에 연 결 된 모든 컴퓨터 를 논리 적 인 슈퍼 컴퓨터 로 만 들 었 다.투명 한 분산 처리.FLEET 네트워크 처리 와 메시지 전달 및 프로 세 스 관리 원 어 를 통합 하여 로 컬 과 네트워크 IPC 를 통일 시 켜 네트워크 가 IPC 에 투명 하도록 합 니 다.4.2 LynxOS 의 시스템 서비스:네트워크 와 통신.유 닉 스/POSIX API 를 사용 하기 때문에 Lynx 는 데이터 통신 과 인터넷 응용 에 적합 하 다.또한 시스템 의 개방 성 으로 인해 인터넷 소프트웨어 는 Lynx 에 쉽게 이식 된다.마찬가지 로 Lynx 는 관건 적 인 전화 통신 협 의 를 제공 하여 전신 시스템 의 기초 구조,조작 과 멀티미디어 응용 에 적용 하도록 한다.TCP/IP 프로 토 콜 스 택 입 니 다.Lynx 자체 최 적 화 된 TCP/IP 프로 토 콜 스 택 은 TCP 헤드 예측,고급 경로 알고리즘,IP 급 다 중 주소 방송 과 링크 급 고속 버퍼 등 고성능 서 비 스 를 제공 합 니 다.인터넷 도구.텔 넷,Ftp,tftp,PPP,SLIP,실시 간 으로 배 치 된 내장 형 자바 가상 머 신,내장 형 HTTP server,bootp,ARP/RARP,DNS 도 메 인 네 임 서비스,이메일,Perl,전화 통신 프로 토 콜 등 이 포함 된다.SVR 3 류.LynxOS 스 트림 메커니즘 은 스 트림 기반 드라이버 와 응용 을 개발 하고 이식 하 는 데 핵심 적 인 지원 을 제공 합 니 다.파일 시스템.실시 간 클래스 UNIX 계층 구조 파일 시스템:연속 구조 파일,버퍼/버퍼 없 음,원본 파 티 션 과 원본 장치 접근.Motif 기반 그래 픽 사용자 인터페이스.분산 컴 퓨 팅 자원.SCMP 와 VME 버스 의 다 중 처리 결합,PCI 브리지 서비스,CompactPCI Hot-swap Services,Lynx/HA-DDS 분포 식 데이터 시스템.4.3 리 눅 스 의 시스템 서비스:최근 에 리 눅 스 를 바탕 으로 하 는 실시 간 응용 이 많이 개발 되 었 고 성숙 하고 풍부 한 자원 을 가진다.유 닉 스 사용자 의 개발 도구 와 애플 리 케 이 션 이 모두 리 눅 스에 이식 됐다.TCP/IP 네트워크 프로 토 콜.각종 인터넷 클 라 이언 트.  X Window。 C/C++,자바 등 언어 컴 파일 러.상기 시스템 의 공통점 은 모두 그래 픽 인터페이스,각종 네트워크 지원 등 필요 한 도 구 를 제공 한 다 는 것 이다.QNX 는 전통 적 인'분포 식'개념 에 더욱 부합 되 는 운영 체제 로 전체 랜 을 큰 슈퍼 컴퓨터 로 바 꾸 어 네트워크 의 존재 가 사용자 에 게 투명 하고 파일 시스템 이 제공 하 는 서비스 도 풍부 하도록 하 는 것 이 목표 이다.그러나 분포 식 의 정도 가 높 을 수록 시스템 비용 의 증 가 를 의미한다.LynxOS 는 풍부 한 네트워크 서 비 스 를 제공 하 는 데 주력 하고 리 눅 스 의 가장 큰 장점 은 경제 이다.뉴스 그룹 이나 mailing 5,시스템 개방 성 대 비 를 통 해 많은 대형,중형 시스템 에 있어 대부분의 소프트웨어 는 UNIX 플랫폼 을 위해 작 성 된 것 이기 때문에 RTOS 가 POSIX/UNIX API 를 제공 하 는 지 여 부 는 매우 중요 하 다.5.1 QNX 의 개방 성 QNX 의 POSIX 호환성 과 그 가 제공 하 는 UNIX 특색 의 컴 파일 러,디 버 거,X Window 와 TCP/IP 는 모두 UNIX 프로그래머 에 게 익숙 하 다.다양한 CPU:AMD ElanSC 300/310/400/410,Am 386 DE/SE,Cyrix MediaGX,x86 프로세서(386 이상),Pentium 시리즈,STMicroelectronics 를 지원 하 는 STPC.다양한 버스:CompactPCI,EISA,ISA,MPE(RadiSys),STD,STD 32,PC/104,PC/104-Plus,PCI,PCMCIA,VESA,VME.각종 외부 장치:다양한 SCSI 설비,IDE/EIDE 드라이브,10M/100 M 이 더 넷 카드,Token Ring 네트워크 카드,FDDI 인터페이스 카드,다양한 PCMCIA 설비,플래시 메모리,사 운 드 카드 등.5.2 LynxOS 의 개방 적 인 POSIX.1a,1b,1c 및 BSD 4.4 등 호환성 으로 인해 POSIX 1003 또는 UNIX 에 사용 되 는 프로그램 을 따라 LynxOS 에 쉽게 이식 할 수 있다.다양한 CPU 메인보드 지원:CompactPCI(6U/3U)와 표준 PCI,VME/Eurobus,PC/104 와 PC/AT 하드웨어 등 을 포함한다.각종 외부 장치 어댑터:10/100 BaseT Ethernet,SCSI 인터페이스,단일/다 중 채널 직렬 컨트롤 러,단일/이중 병렬 포트,시계,타이머,IDE 인터페이스,고해상도 디 스 플레이 어댑터 등.5.3 리 눅 스 의 개방 적 인 사용 자 는 UNIX 의 모든 개발 도 구 를 얻 을 수 있다.시장 에서 싸 고 흔히 볼 수 있 는 하드웨어 를 사용 할 수 있다.분석 을 통 해 상기 시스템 이 각각 장점 이 있 음 을 알 수 있 기 때문에 플랫폼 구축 과정 에서 사용 자 는 자신의 실제 수요 에 따라 성능 가격 비 를 결합 하여 선택 해 야 한다.

좋은 웹페이지 즐겨찾기