KR940007826B1 - 실시간 운영체계에서의 운영체계와 다른 커널과의 정합방법 - Google Patents
실시간 운영체계에서의 운영체계와 다른 커널과의 정합방법 Download PDFInfo
- Publication number
- KR940007826B1 KR940007826B1 KR1019910023156A KR910023156A KR940007826B1 KR 940007826 B1 KR940007826 B1 KR 940007826B1 KR 1019910023156 A KR1019910023156 A KR 1019910023156A KR 910023156 A KR910023156 A KR 910023156A KR 940007826 B1 KR940007826 B1 KR 940007826B1
- Authority
- KR
- South Korea
- Prior art keywords
- kernel
- call
- performance measurement
- steps
- operating system
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/545—Interprogram communication where tasks reside in different layers, e.g. user- and kernel-space
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
내용 없음.
Description
제 1 도는 본 발명이 적용되는 하드웨어 시스템의 구성도.
제 2 도는 운영체계와 운영체계 커널 그리고 다른 커널간의 정합 흐름 표시도.
제 3 도는 본 발명의 전체 처리 흐름도.
제 4 도는 성능 측정 시간 단계의 처리 흐름도.
제 5 도는 성능 측정 수집 단계의 처리 흐름도.
* 도면의 주요부분에 대한 부호의 설명
1 : 중앙처리장치 보드(MPMA) 2 : 메모리 오류 제어 보드(MECA)
3: 이중화 운용제어 보드(DCCA) 4 : 대용량 저장 보드(MSIA)
5 : 프로세서 통신 제어 보드(PCCA) 6 : 입출력 인터페이스 보드(IOIA)
7 : 중앙처리장치 유니트(CPU) 8 : 기억장치
9 : 다기능 주변 제어칩(MFP) 10 : 타스크 제어 테이블(TCB)
11 : 벡터 테이블(VT) 12 : 커널 기능 제어 블럭(KFCB)
본 발명은 실시간 운영체제에서 제공하는 각종 기능과 데이타 베이스시스템 커널 기능과 패킷 처리 커널 기능들 상호간에 서로 교신을 하기 위한 정합 방법에 관한 것이다.
데이타 베이스시스템 커널 및 패킷 처리 커널 구현시 운영체제에서 제공하는 커널 기능을 이용하고자 할때, 혹은 운영체제 커널 내에서 서로 다른 관리기에서 지원하는 기능을 서로 이용할 수 있다. 그리고 서로 독립적으로 운용되게 하는 장점을 살리며 독립적으로 추가 및 삭제가 용이하다. 그리고 자체 시험이 정합 기능을 통하여 명확히 구분하게 되므로 오류의 가능성을 줄여 신뢰성과 묘듈성을 높일 수 있다.
그런데, 종래의 교환시스팀은 교환 소프트웨어 커널들과 운영체제의 경계를 구분하지 않아서 방대한 교환 소프트웨어의 부분적인 오류에 따라 시스팀이 침해 되기도 하는 위험성이 있었으며, 커널 기능을 각각 독립적으로 설계하는 것이 일반적이었다.
따라서, 본 발명의 목적은 상기 종래기술의 문제점을 해결하기 위해 안출된 것으로 시스팀 커널 기능의 오류 사용에 대한 보호와 막대한 중복 설계의 부담을 줄일 수 있는 시스팀 커널 정합 방법을 제공하는데 그 목적이 있다.
상기 목적을 달성하기 위하여 본 발명은, 중앙처리장치 유니트, 벡터 테이블(VT)과 타스크 제어 테이블(TCB)과 커널기능제어 블럭(KFCB)를 탑재하고 있는 기억장치, 다기능 주변 제어칩(MFP)을 구비하고 있는 전전자 교환기의 중앙제어장치 보드(MPMA)에 적용되어 운영체계와 다른 커널들간의 정합하는 방법에 있어서, 정합 처리의 호출이 시작되면 각종 레지스터의 값을 TCB에 저장하고 호출횟수 카운터를 증가 시킨후, 호출의 정확성 여부를 점검하는 제 1 단계와, 상기 제 1 단계 수행후, 점검결과 오류의 가능성이 있는 호출에 대하여 디버깅 정보와 장애를 출력하고 종료하며, 호출이 정상일때 사용자 파라메타 블럭을 시스템 커널부로 전달하는 제 2 단계와, 상기 제 2 단계 수행후, 해당 커널의 CPU 점유율의 측정을 시작하는 제 3 단계와, 상기 제 3 단계 수행후, 해당 커널을 호출하는 제 4 단계와, 상기 제 4 단계 수행후, 해당 호출의 수행 시간 수집을 행하는 제 5 단계와, 상기 제 5 단계 수행후, TCB에 저장되어 있는 각종 레지스터의 정보를 복귀하여 호출한 곳으로 제어를 넘기고 종료하는 제 6 단계에 의해 수행되는 것을 특징으로 한다.
이하 첨부된 도면을 참조하여 본 발명을 상세히 설명하면 다음과 같다.
제 1 도는 본 발명이 적용되는 하드웨어인 전전자 교환기의 상위 프로세서(MPH)의 구성도로서, a는 전체 하드웨어의 이중화 구성도, b는 MPMA의 구성도이다.
도면에서, 1은 중앙처리장치 보드(MPMA), 2는 메모리 오류 제어 보드(MECA), 3은 이중화 운용제어 보드(DCCA), 4는 대용량 저장 보드(MSIA), 5는 프로세서 통신 제어 보드(PCCA), 6은 입출력 인터페이스 보드(IOIA), 7은 중앙처리장치 유니트(CPU), 8은 기억장치, 9는 다기능 주변 제어칩(MFP), 10은 타스크 제어 테이블(TCB), 11은 벡터 테이블(VT), 12는 커널 기능 제어 블럭(Kernel Function Control Block, 이하 KFCB라 함)을 각각 나타낸다.
도면에 도시한 바와 같이, 본 발명이 적용되는 상위 프로세서 하드웨어(MPH)는 중앙처리장치 보드(1)와 메모리 보드(4)를 가지며, 본 발명의 소프트웨어가 탑재되어 동작하는 중앙처리장치 보드(1 : MPMA), 상기 MPMA(1)의 제어를 받아 타 프로세서와의 통신을 담당하는 프로세서 통신 제어 보드(5 : PCCA), 이중화와 관련하여 D-채널, 및 C-채널 제어를 담당하는 이중화 운용 제어 보드(4 : DCCA)가 시스팀 주 버스에 연결되어 있다.
중앙처리장치 보드(1 : MPMA)는, 기본적으로, 시스팀 버스로 연결된 중앙처리장치 유니트(7), 기억장치(8), 및 성능 측정을 위하여 다기능 주변 제어 칩 (9 ; 이하, MFP라 함)으로 구성되며, 상기 기억장치(8)내에는 벡터 테이블(11 ; VT)과 타스크 제어 테이블(10 ; TCB)을 유지한다. 이와 같은 구성은 일반적인 분산시스팀의 구성이지만 교환 소프트웨어 및 운영체계를 실행하기 위해서는 이와 같은 구성이 구비되어야 한다.
시스팀 호출 처리 기능은 운영체계의 접합부의 하나로서 기억장치(8)에 벡터 테이블(11 : VT)과 타스크 제어 테이블(10 : TCB)과 커널 기능 제어 블럭(12 ;kernel Function Control Block, 이하 KFCB라 함)을 두고 중앙처리장치(7)에 의해서 수행한다.
제 2 도는 운영체계와 운영체계 커널 그리고 다른 커널간의 정합 흐름 표시도로서, 도면에서, 13은 운영체계 커널, 14는 DBMS 커널, 15는 패킷 처리기 커널, 16은 정합 기능 테이블(IFT), 17은 정합 처리기를 각각 나타낸다.
운영체계내의 관리기 사이 및 다른 커널이 운영체계의 기능 요구를 행하거나 혹은 사용자가 데이타 베이스 및 패킷 처리 기능을 요구하면 정합 처리기(17)의 도움을 받아 KFCB(12)를 참조하여 정합 기능 테이블(16 ; 이하, IFT라 함)을 찾고 이 IFT(16)를 참조하여 해당 기능을 호출한다. 정합 처리기(17)는 정보 전달을 위한 파라메타들을 준비하여 운영체계 커널로 들어오게 된다. 이때 성능 측정의 구분을 하며, 오류시 해당 기능 및 커널 블럭이 어디인지 알아 격리한다. 또한 커널 내의 다양한 괸리기중 어떠한 요구인지 분석하여 해당 기능의 커널 루틴을 호출하여 수행하고 수행 결과에 대한 복귀값을 생성하여 저장하고 호출한 곳으로 복귀한다.
제 3 도는 본 발명의 전체 처리 흐름도이다.
사용자 프로그램에서 시스팀 프리미티브를 호출하는 코드는 TRAP 명령을 사용해서 행하게 되며 이 명령이 중앙처리장치(7)에서 실행되면 벡터 테이블(11) 및 KFCB(12)를 참조하여 시스팀 호출처리를 실행한다.
실행을 시작하면 각종 중앙처리장치(7)내의 레지스터값을 TCB(10)에 저장하고(20), 호출 횟수 카운터를 증가시킨다(21). 사용자 프로그램에서 호출한 내용의 정확성 여부를 점검하여(22), 오류발생이면, 디버깅 정보와 함께 장애 출력을 행하고(23) 사용자 프로그램으로 되돌려 보내며, 정확하게 사용하였을 시는 사용자 파라메타 블럭을 시스템 커널부로 전달한다(24).
해당 호출을 수행하기 이전에 성능 측정이 필요하다면 성능 측정 개시를 설정하고(25), 호출된 운영체계의 커널 기능인 통신처리 기능, 다중 처리 기능, 주기억 장치 관리 기능, 입출력 장치 관리 기능, 예외처리 기능, 화일 관리 기능과 데이타 베이스 관리 시스템 커널 기능,및 패킷 처리기 커널 기능을 호출할 준비를 한 다음 KFCB(12)를 참조하여 해당 커널 베이스(base) 주소와 IFT(16)를 찾을 수 있도록 한다(26). 그리고 해당 커널 기능을 호출한다(27).
다음으로 성능 측정 수집 루틴을 수행하고(28). TCB에 저장되어 있는 각종 파손 가능 정보의 환원(29)후 사용자 프로그램으로 되돌려진다.
제 4 도는 성능 측정 시작 단계(제 3 도의 25)의 처리 흐름도이다.
성능 측정 요구가 있었는지 여부를 조사하여(30) 요구가 없었다면 곧바로 복귀하고, 만일 있었다면 지금부터는 운영체계 커널내 및 특정 커널에서 수행됨으로 해당 커널이 CPU를 점유한다고 설정하고 성능 측정 타임머 값을 읽어 둔다(31). 그리고 상세 성능 측정이 요구되었는지 조사하여(32), 요구가 있었다면 이미 어떤 사용자 프로그램이 기억장치에 로딩중인지 아닌지 조사하여(33) 로딩중이면 상세 성능 측정이 불가능하므로 곧바로 복귀하며, 로딩중이 아니면, 해당 시스팀 호출 요구로부터 복귀될 때까지의 시간을 측정하기 위하여 시작 시간을 타이머로부터 읽어둔다(34).
제 5 도는 성능 측정 수집 단계의 처리 흐름도이다.
성능 측정 요구가 있었는지 여부를 조사하여(40), 요구가 없었다면 곧바로 복귀하고, 만일 있었다면 지금부터는 호출 이전 프로그램에서 수행됨으로 이전 프로그램 모드가 CPU를 점유한다고 설정하고(41), 성능 측정 타이머 값을 읽어서(42) 운영체계의 CPU 점유 시간을 변경해 둔다(43). 그리고 상세 성능 측정이 요구되었는지 조사하여(44) 요구가 있었다면 이미 어떤 사용자 프로그램이 기억장치에 로딩중인지 아닌지 조사하여(45) 로딩중이면 상세 성능 측정이 불가능하므로 곧바로 복귀하며, 로딩중이 아니면, 해당 시스팀 호출로부터 복귀될 때까지의 시간을 타이머로부터 읽어서 변경하여 둔다(46).
이제까지의 처리절차에 있어서, 서로 요구되는 커널들 기능으로는, 첫째, 데이타 베이스 관리 시스템의 concurrency control(동기화 제어)이 있다. 둘째, 데이타 베이스, 패킷 관련 시스템 로딩지원 기능이 있다. 세째, 패킷 커널 태스크간의 동기화가 요구되며, 커널 내에서 휴면(sleep) 및 타임아웃 처리 기능이 있어야 한다. 네째, 사용하는 시스템 커널의 기억공간 사용과 그 공간의 보호를 요한다.
따라서, 상기와 같은 처리절차에 의해 수행되는 본 발명은, 사용자 프로그램과 운영체계와의 정합 기능과 유사하지만 그 효과등에 있어서 아주 달라, 특히, 방대한 시스템 커널을 묘듈화 해서 점진적으로 구축할 수 있는 방법이 되며 교환 시스템과 같은 응용에서는 이와 같은 접근 방식은 다음과 같은 장점과 효과가 있다.
첫째, 확장성 및 재 사용성과 기능별 독립성을 최대로 살릴 수 있다. 둘째, 각 커널의 오류가 기억 공간에 함께 동작하는 다른 커널에 전파되지 않는다. 세째, 각 커널의 독자적인 시험 및 개발이 가능하다. 네째, 커널 및 커널 기능 사용자 프로그램에서 오류가 발생하였을 시에 그 오류가 어느 커널 및 사용자 프로그램 오류인지 구별 가능하다. 그외 사용자와 커널들 사이의 정보 교환을 가능케 하는 정합 기능으로 시스템의 묘듈성과 가용성이 증대될 수 있는 효과가 있다.
Claims (3)
- 중앙처리장치 유니트(7), 벡터 테이블(11 ; VT)과 타스크 제어 테이블(13 ;이하, TCB라 함)과 커널기능 제어 블럭(12 ; KFCB)를 탑재하고 있는 기억장치(8),다기능 주변 제어칩 (9 ; MFC)을 구비하고 있는 전전자 교환기의 중앙제어장치 보드(1 ; MPMA)에 적용되어 운영체계와 다른 커널들간의 정합하는 방법에 있어서, 정합 처리의 호출이 시작되면 각종 레지스터의 값을 TCB(10)에 저장하고 호출 횟수 카운터를 증가시킨후, 호출의 정확성 여부를 점검하는 제 1 단계(20 내지 22)와, 상기 제 1 단계(20 내지 22) 수행후, 점검결과 오류의 가능성이 있는 호출에 대하여 디버깅 정보와 장애를 출력하고 종료하며, 호출이 정상일때 사용자 파라메타 블럭을 시스템 커널부로 전달하는 제 2 단계(23,24)와, 상기 제 2 단계(41) 수행후, 해당 커널의 CPU 점유율의 측정을 시작하는 제 3 단계(25)와, 상기 제 3 단계(25) 수행후, 해당 커널을 호출하는 제 4 단계(26,27)와, 상기 제 4 단계(26,27) 수행후, 해당 호출의 수행 시간 수집을 행하는 제 5 단계(28)와, 상기 제 5 단계(28) 수행후, TCB(10)에 저장되어 있는 각종 레지스터의 정보를 복구하여 호출한 곳으로 제어를 넘기고 종료하는 제 6 단계(29)에 의해 수행되는 것을 특징으로 하는 커널과 운영체계간의 정합 구현 방법.
- 제 1 항에서 있어서, 상기 제 3 단계(25)는, 성능 측정 요구가 있었는지 여부를 조사하여 요구가 없었다면 곧바로 복귀하고, 만일 있었다면 해당 커널이 CPU를 점유한다고 설정하고 성능 측정 타임머 값을 읽어 두는 단계(30,31)와, 상기 단계(30,31) 수행후, 상세 성능 측정이 요구되었는지 조사하여 요구가 있었다면 이미 어떤 사용자 프로그램이 기억장치에 로딩중인지 아닌지 조사하고 아니면 복귀하는 단계(32,33)와, 상기 단계(32,33) 수행후, 로딩중이면 상세 성능 측정이 불가능 하므로 곧바로 복귀하며, 로딩중이 아니면, 해당 시스팀 호출 요구로부터 복귀될 때까지의 시간을 측정하기 위하여 시작 시간을 타이머로부터 읽어 두는 단계(34)에 의해 수행되는 것을 특징으로 하는 커널과 운영체계간의 정합 구현 방법.
- 제 1 항에 있어서, 상기 제 5 단계(28)는, 성능 측정 요구가 있었는지 여부를 조사하여 요구가 없었다면 곧바로 복귀하고, 만일 있었다면 이전 프로그램 모드가 CPU를 점유한다고 설정하는 단계(40,41)와, 상기 단계(40,41) 수행후, 성능 측정 타이머 값을 읽어서 운영체계의 CPU 점유 시간을 변경해 두는 단계(42,43)와, 상기 단계(42,43) 수행후, 상세 성능 측정이 요구되었는지 조사하여(44) 요구가 있었다면 이미 어떤 사용자 프로그램이 기억장치에 로딩중인지 아닌지 조사하고, 아니면 복귀하는 단계(44,45)와, 상기 단계(44,45) 수행후, 어떤 사용자 프로그램이 기억장치에 로딩중이면 상세 성능 측정이 불가능하므로 곧바로 복귀하며, 로딩중이 아니면, 해당 시스팀 호출로부터 복귀될 때까지의 시간을 타이머로부터 읽어서 변경하고 복귀하는 단계(46)에 의해 수행되는 것을 특징으로 하는 커널과 운영체계간의 정합 구현 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019910023156A KR940007826B1 (ko) | 1991-12-17 | 1991-12-17 | 실시간 운영체계에서의 운영체계와 다른 커널과의 정합방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019910023156A KR940007826B1 (ko) | 1991-12-17 | 1991-12-17 | 실시간 운영체계에서의 운영체계와 다른 커널과의 정합방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR930014002A KR930014002A (ko) | 1993-07-22 |
KR940007826B1 true KR940007826B1 (ko) | 1994-08-25 |
Family
ID=19324953
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019910023156A KR940007826B1 (ko) | 1991-12-17 | 1991-12-17 | 실시간 운영체계에서의 운영체계와 다른 커널과의 정합방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR940007826B1 (ko) |
-
1991
- 1991-12-17 KR KR1019910023156A patent/KR940007826B1/ko not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR930014002A (ko) | 1993-07-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4811345A (en) | Methods and apparatus for providing a user oriented microprocessor test interface for a complex, single chip, general purpose central processing unit | |
EP1080407B1 (en) | Computer system with an emulation coprocessor and method for executing an emulated application program | |
US5594890A (en) | Emulation system for emulating CPU core, CPU core with provision for emulation and ASIC having the CPU core | |
US6898735B2 (en) | Test tool and methods for testing a computer structure employing a computer simulation of the computer structure | |
US20060085657A1 (en) | ACPI Name Space Validation | |
KR100440361B1 (ko) | 자동정렬스택포인터를구비한데이타처리시스템및그방법 | |
WO2001042874A2 (en) | Secure dispatching of software system mangement interrupt by vali dating the caller address | |
EP0644488A2 (en) | Detection of spurious interrupts in a data processing system | |
KR940007826B1 (ko) | 실시간 운영체계에서의 운영체계와 다른 커널과의 정합방법 | |
Bhargava et al. | Experimental analysis of layered Ethernet software | |
de Kergommeaux et al. | MPL: Efficient Record/Replay of nondeterministic features of message passing libraries | |
CN115756935A (zh) | 嵌入式软件系统的异常故障定位方法、装置及设备 | |
KR940007827B1 (ko) | 실시간 운영체계에서의 운영체계와 사용자 프로그램의 정합방법 | |
Michel et al. | Concurrent error detection using watchdog processors in the multiprocessor system MEMSY | |
US7043565B1 (en) | System and method for transferring data over an external transmission medium | |
Barklow et al. | SLAC Scanner Processor applications in the data acquisition system for the upgraded Mark II detector | |
US6029255A (en) | Input/output control device and method applied to fault-resilient computer system | |
US6539436B2 (en) | Management of interruptions in a computer platform | |
US6282600B1 (en) | Method and apparatus of resolving conflicting register access requests from a service processor and system processor | |
JP3085730B2 (ja) | 複合cpuシステムの並列シミュレーション方式 | |
KR940007828B1 (ko) | 실시간 운영체계에서의 인터럽트 처리기 구현방법 | |
KR950010484B1 (ko) | 실시간 운영체계에서 시스템 라이브러리 기능 구현방법 | |
JPH11143789A (ja) | バストレース装置 | |
JP3133730B2 (ja) | 割り込み方法及び回路 | |
KR920010410B1 (ko) | 교환기 설치시 하드웨어 시험 프로그램의 수행관리방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
G160 | Decision to publish patent application | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 19980616 Year of fee payment: 5 |
|
LAPS | Lapse due to unpaid annual fee |