KR940007827B1 - Method of matching between user program and real time os - Google Patents
Method of matching between user program and real time os Download PDFInfo
- Publication number
- KR940007827B1 KR940007827B1 KR1019910023163A KR910023163A KR940007827B1 KR 940007827 B1 KR940007827 B1 KR 940007827B1 KR 1019910023163 A KR1019910023163 A KR 1019910023163A KR 910023163 A KR910023163 A KR 910023163A KR 940007827 B1 KR940007827 B1 KR 940007827B1
- Authority
- KR
- South Korea
- Prior art keywords
- user program
- call
- steps
- performance measurement
- 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/22—Microcontrol or microprogram arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Hardware Redundancy (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
제 1 도는 본 발명이 적용되는 하드웨어 시스템의 구성도.1 is a block diagram of a hardware system to which the present invention is applied.
제 2 도는 본 발명이 적용되는 전체 흐름도.2 is an overall flowchart to which the present invention is applied.
제 3 도는 본 발명의 상세 흐름도.3 is a detailed flowchart of the present invention.
* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings
1. MPH : 상위 프로세서 하드웨어 2. MPMA : 중앙처리장치보드1. MPH: Upper Processor Hardware 2. MPMA: Central Processing Board
3. PCCA : 통신제어 4. DCCA : 이중화 운용제어3. PCCA: Communication control 4. DCCA: Redundant operation control
5. CPU : 중앙처리 장치 유니트 6. MSIA : 보조기억장치 접속보드5. CPU: Central Processing Unit 6. MSIA: Auxiliary Memory Connection Board
7. IOIA : 입출력 장치 접속보드 8. C,D,S-ch : 이중화통신 채널7. IOIA: I / O device connection board 8. C, D, S-ch: Duplex communication channel
9. MPSbus : 시스팀 주 버스 12. VT : 벡터 테이블9.MPSbus: system main bus 12.VT: vector table
13. TCB : 테스크 제어 테이블 16. KPCB : 커널 명령 제어 블럭13. TCB: task control table 16. KPCB: kernel command control block
본 발명은 대용량 교환기용 실시간 운용체제에서 운영체계와 사용자 프로그램의 정합 방법에 관한 것이다.The present invention relates to a method of matching an operating system and a user program in a real-time operating system for a large-scale exchange.
교환 소프트웨어는 운영체제에서 제공되는 커널 기능을 이용하고자 할때 시스팀을 보호하고 효율적인 관리를 위해서 시스팀 호출 처리용 소프트웨어가 요구된다.The exchange software requires system call processing software to protect the system and to efficiently manage the kernel function provided by the operating system.
종래의 교환시스팀은 교환 소프트웨어(이하, 사용자 프로그램)와 운영체제의 경계를 구분하지 않아서 사용자 프로그램에 따라 시스팀이 침해되기도 하는 위험성이 있었다.The conventional exchange system does not distinguish between the boundary between the exchange software (hereinafter referred to as a user program) and an operating system, and there is a risk that the system may be infringed depending on the user program.
따라서, 본발명의 목적은 사용자 프로그램 공간과 시스팀 공간을 구분하여 시스팀 안전성을 높이고 시스팀 커널 기능의 오류 사용에 대한 보호와 막대한 중복 설계의 부담을 줄이는 운영체계와 사용자 프로그램의 정합 방법을 제공하는데 있다.Accordingly, an object of the present invention is to provide a method of matching an operating system and a user program by dividing a user program space and a system space to increase system safety, to protect against error usage of a system kernel function, and to reduce the burden of redundant design.
상기 목적을 달성하기 위하여 본 발명은, 중앙처리장치 유니트, 벡터 테이블(VT)과 타스크 제어 테이블(TCB)과 커널 프리미티브 제어 블럭(KPCB)을 탑재하고 있는 기억장치, 다기능 주변 제어칩(MFC)을 구비하고 잇는 전전자 교환기의 중앙제어장치 보드(MPMA)에 적용되어 운영체제와 사용자 프로그램을 정합하는 방법에 있어서, 사용자 프로그램으로 부터 호출되면 각종 레지스터의 값을 TCB에 저장시키고, 호출 카운트를 중가시키는 제 1 단계와, 상기 제 1 단계 수행후, 사용자 프로그램의 정확성 여부를 조사하여 오류가 있는 호출이 있으면 오류를 출력하고 정상이면 시스팀 모드 변경에 따른 주소 공간을 변경하는 제 2 단계와, 상기 제 2 단계 수행후, 사용자 프로그램과 운영체제의 CPU 점유율 측정 개시를 설정하는 제 3 단계와, 상기 제 3 단계 수행후, 시스팀 호출 관리 테이블인 KPCB를 참조하여 실제로 시스팀 호출을 수행하는 제 4 단계와, 상기 제 4 단계 수행후, 호출이 끝났을때 이 호출의 수행 시간 수집하는 제 5 단계와, 상기 제 5 단계 수행후, TCB를 참조하여 사용자 프로그램으로 제어를 넘기고 종료하는 제 6 단계에 의해 수행되는 것을 특징으로 한다.In order to achieve the above object, the present invention provides a central processing unit, a memory device having a vector table (VT), a task control table (TCB), and a kernel primitive control block (KPCB), and a multifunction peripheral control chip (MFC). Applied to the central control board (MPMA) of the electronic switching device provided therein, a method of matching the operating system and the user program, wherein when the user program is called, it stores the values of various registers in the TCB and increases the call count. Step 1 and, after performing the first step, a second step of checking the accuracy of the user program to output an error if there is an error call, and to change the address space according to the system mode change if it is normal, and the second step After performing the third step of setting the CPU share measurement start of the user program and the operating system, and after performing the third step, the system A fourth step of actually making a system call with reference to the call management table KPCB; and a fifth step of collecting the execution time of the call when the call is completed after performing the fourth step; and after performing the fifth step, The control is performed by the sixth step of transferring control to the user program and ending.
이하 첨부된 도면을 참조하여 본 발명의 일실시예를 상세히 설명한다.Hereinafter, an embodiment of the present invention will be described in detail with reference to the accompanying drawings.
제 1 도는 본 발명이 적용되는 하드웨어인 전전자 교환기의 상위 프로세서(MPH)의 구성도로서, a는 전체 하드웨어의 이중화 구성도, b는 MPMA의 구성도이다.1 is a configuration diagram of an upper processor (MPH) of an electronic switching system, which is hardware to which the present invention is applied, a is a configuration diagram of redundancy of all hardware, and b is a configuration diagram of an MPMA.
도면에서, 1은 중앙처리장치 보드(MPMA), 2는 메모리 오류 제어 보드(MECA), 3은 이중화 운용제어보드(DCCA), 4는 대용량 저장보드(MSIA), 5는 프로세서 통신 제어보드(PCCA), 6은 입출력 인터페이스 보드(IOIA), 7은 중앙처리장치 유니트(CPU), 8은 기억장치, 9는 다기능 주변 제어칩(MFP), 10은 타스크 제어 테이블(TCB), 11은 벡터 테이블(VT), 12는 KPCB(Kernel Primitive Control Block)를 각각 나타낸다.In the drawings, 1 is a central processing unit board (MPMA), 2 is a memory error control board (MECA), 3 is a redundant operation control board (DCCA), 4 is a mass storage board (MSIA), 5 is a processor communication control board (PCCA) 6, I / O Interface Board (IOIA), 7 is Central Processing Unit (CPU), 8 is Memory, 9 is Multifunction Peripheral Control Chip (MFP), 10 is Task Control Table (TCB), 11 is Vector Table ( VT) and 12 represent Kernel Primitive Control Block (KPCB), respectively.
도면에 도시한 바와 같이, 본 발명이 적용되는 상위 프로세서 하드웨어(MPH)는 중앙처리장치 보드(1)와 메모리 보드(4)를 가지며, 본 발명의 소프트웨어가 탑재되어 동작하는 중앙처리장치 보드(1 : MPMA), 상기 MPMA(1)의 제어를 받아 타 프로세서와의 통신을 담당하는 프로세서 통신제어 보드(5 : PCCA), 이중화와 관려하여 D-채널, 및 C-채널 제어를 담당하는 이중화 운용 제어 보드(4 : DCCA)가 시스팀 주 버스에 연결되어 있다.As shown in the figure, the upper processor hardware (MPH) to which the present invention is applied has a central processing unit board (1) and a memory board (4), and the central processing unit board (1) on which the software of the present invention is mounted and operated. : MPMA), a processor communication control board (PCCA) responsible for communication with other processors under the control of the MPMA (1), and redundant operation control in charge of D-channel and C-channel control in connection with redundancy. Board (4: DCCA) is connected to the system main bus.
중앙처리장치 보드(1 : MPMA)는, 기본적으로, 시스팀 버스로 연결된 중앙처리장치유니트(7), 기억장치(8), 및 성능 측정을 위하여 다기능 주변 제어 칩(9 ; 이하, MFP라 함)으로 구성되며, 상기 기억장치(8)내에는 벡터 테이블(11 ; VT)과 타스크 제어 테어블(10 ; TCB), 및 KPCB(12)를 유지한다. 이와 같은 구성은 일반적인 분산시스팀의 구성이지만 교반 소프트웨어 및 운영체계로 실행하기 위해서는 이와 같이 구성이 구비되어야 한다.The central processing unit board (MPMA) 1 is basically a central processing unit 7 connected to the system bus, a memory 8, and a multifunction peripheral control chip 9 (hereinafter referred to as MFP) for performance measurement. The storage device 8 holds a vector table 11 (VT), a task control table 10 (TCB), and a KPCB 12. Such a configuration is a configuration of a general distributed system, but in order to be implemented with agitation software and an operating system, such a configuration should be provided.
시스팀 호출 처리 기능은 운영체계의 접합부의 하나로서 기억장치(8)에 벡터 테이블(11 : VT)과 타스크 제어 테이블(10 : TCB)를 두고 중앙처리장치(7)에 의해서 수행한다.The system call processing function is performed by the central processing unit 7 with the vector table 11: VT and the task control table 10: TCB in the storage device 8 as one of the junctions of the operating system.
제 2 도는 본 발명에 따른 처리 표시도이다.2 is a process display diagram according to the present invention.
본 발명은 사용자 프로그램에서 운영체제의 기능 요구를 행하면 정보 전달을 위한 파라메터들을 준비하여 운영체제 커널로 들어오게 되면, 정합 소프트웨어에 의해 커널 프리미티브 제어 블럭(12 ; 이하 KPCB라 함)을 참조하여 지원하는 기능이며, 커널 내의 다양한 관리기 중 어떠한 요구인지 분석하여 해당 기능을 커널 루틴을 호출하여 수행하고 수행 결과에 대한 복귀값을 생성하여 저장하고 호출한 곳으로 복귀하도록 되어 있다. 그리고 도면에서, PM은 프로세스 관리기이고, TM은 시간 관리기이고, MM은 메모리 관리기이고, EM은 예외처리 관리기, IOM은 입출력 관리기를 나타낸다.According to the present invention, when a user program requests a function of an operating system and prepares parameters for information transfer and enters the operating system kernel, the matching software supports the kernel primitive control block (hereinafter referred to as KPCB) by reference software. In addition, it analyzes any request among various managers in the kernel and executes the corresponding function by calling the kernel routine, generating the return value for the execution result, and saving and returning to the call. In the figure, PM is a process manager, TM is a time manager, MM is a memory manager, EM is an exception handling manager, and IOM is an input / output manager.
제 3 도는 시스팀 호출 기능을 수행하는 소프트웨어의 흐름도이다.3 is a flow diagram of software that performs a system call function.
사용자 프로그램에서 시스팀 프리미티브를 호출하는 코드 TRAP명령(MC68030 명령어)을 사용해서 TRAP 예외 처리를 구동함으로서 자동 연결이 이루어 진다. 이 TRAP 예외 처리가 발생하여 실행되면 벡테이블(12)을 참조하여 시스템 호출 처리를 실행한다.Automatic linking is achieved by running TRAP exception handling using the code TRAP instruction (MC68030 instruction), which calls a system primitive in the user program. When this TRAP exception processing occurs and is executed, the system call processing is executed with reference to the back table 12.
실행을 시작하면 각종 중앙처리장치 안의 레지스터값을 TCB(10)에 저장하고(20), 호출 횟수 카운터를 증가시킨다(21). 사용자 프로그램에서 호출한 내용의 정확성 여부를 점검하여(22) 맞지 않으면 장애를 출력하고(23) 사용자 프로그램으로 되돌려 보내며, 정확하게 사용하였을 시는 사용자 시스팀 호출을 시스팀모드에서 수행 가능하도록 주소 공간을 변경한다(24).When execution starts, register values in various CPUs are stored in the TCB 10 (20), and the call count counter is incremented (21). It checks the correctness of the contents called by the user program (22), if it does not match, outputs a fault (23) and sends it back to the user program, and changes the address space so that the user system call can be executed in system mode when used correctly. (24).
해당 호출을 수행하기 이전에 성능 측정이 필요하다면 성능 측정 개시를 설정하고(25), KPCB(12)를 참조하여 호출된 운영체계의 커널 기능인 통신처리 기능, 다중 처리 기능, 주기억 장치 관리 기능, 입출력 장치 관리 기능, 예외처리 기능, 화일 관리 기능과 데이타 베이스 관리 시스템 커널 기능을 호출한(26) 다음 성능 측정 수집 루턴을 수행하고(27), TCB(10)에 저장되어 있는 각종 파손 가능 정보의 환원(28) 후 사용자 프로그램을 되돌려 진다.If performance measurement is needed prior to making the call, set the performance measurement initiation (25), and refer to KPCB (12) for communication processing functions, multiprocessing functions, main memory device management functions, and kernel functions of the called operating system. Invoke device management, exception handling, file management, and database management system kernel functions (26), then perform performance measurement collection loops (27), and reduce various corruption information stored in the TCB (10). (28) After, the user program is returned.
제 4 도는 성능측정 시작 단계(제 3 도의 25)의 처리 흐름도이다.4 is a process flow diagram of the performance measurement start step (25 in FIG. 3).
성능 측정 요구가 있었는지 여부를 조사하여(30) 요구가 없었다면 곧바로 복귀하고, 만일 있었다면 지금부터는 운영체제 커널내 및 특정 커널에서 수행되므로 해당 커널이 CPU를 점유한다고 설정하고 성능 측정 타임머 값을 읽어 둔다(31). 그리고 상세 성능측정이 요구되었는지 조사하여(32), 요구가 있었다면 이미 어떤 사용자 프로그램이 기억장치에 로딩중인지 아닌지 조사하여(33) 로딩 중이면 상세 성능 측정이 불가능하므로 곧바로 복귀하며, 로딩 중이 아니면, 해당 시스팀 호출 요구로부터 복귀될 때까지의 시간을 측정하기 위하여 시작 시간을 타이머로부터 읽어둔다(34).Investigate whether there was a request for performance measurement (30), and return immediately if there was no request, and if so, set the kernel to occupy the CPU since it is now executed in the operating system kernel and a specific kernel, and read the performance measurement timer value. (31). Investigate whether the detailed performance measurement is required (32), and if there is a request, examine whether or not the user program is already loaded in the storage device (33). If loading, the detailed performance measurement cannot be performed. The start time is read from the timer (34) to measure the time until return from the system call request.
제 5 도는 성능측정 단계의 처리 흐름도이다.5 is a process flow diagram of a performance measurement step.
성능 측정 요구가 있었는지 여부를 조사하여(40), 요구가 없었다면 곧바로 복귀하고, 만일 있었다면 지금부터는 호출 이전 프로그램에서 수행됨으로 이전 프로그램 모드가 CPU를 점유한다고 설정하고(41), 성능 측정 타이머 값을 읽어서(42) 운영체계의 CPU점유 시간을 변경해 둔다(43). 그리고 상세 성능 측정이 요구되었는지 조사하여(44) 요구가 있었다면 이미 어떤 사용자 프로그램이 기억장치로 로딩 중인지 아닌지 조사하여(45) 로딩 중이면 상세성능 측정이 불가능하므로 곧바로 복귀하며, 로딩 중이 아니면, 해당 시스팀 호출로 부터 복귀될 때까지의 시간을 타이머로 부터 읽어서 변경하여 둔다(46).Investigate whether there was a performance measurement request (40), return immediately if there was no request, and if so, set the previous program mode to occupy the CPU as it is now performed in the program before the call (41), and set the performance measurement timer value It reads (42) and changes the CPU occupancy time of the operating system (43). In addition, if the request is made (44), if there is a request, it checks whether the user program is already loaded into the storage device (45), and if the loading is performed, the detailed performance measurement is impossible, and if it is not loaded, the system returns immediately. The time from the call to return is read from the timer and changed (46).
따라서 상기와 같은 처리절차에 의해 수행되는 본 발명은, 시스팀의 안정성을 높일 수 있고 시스팀 커널 기능의 오류 사용에 대한 보호와 막대한 중복 설계의 부담을 줄일 수 있는 효과가 있다.Therefore, the present invention carried out by the above processing procedure can increase the stability of the system, and the effect of reducing the burden of protection and enormous redundancy design for the error use of the system kernel function.
Claims (3)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019910023163A KR940007827B1 (en) | 1991-12-17 | 1991-12-17 | Method of matching between user program and real time os |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019910023163A KR940007827B1 (en) | 1991-12-17 | 1991-12-17 | Method of matching between user program and real time os |
Publications (2)
Publication Number | Publication Date |
---|---|
KR930014003A KR930014003A (en) | 1993-07-22 |
KR940007827B1 true KR940007827B1 (en) | 1994-08-25 |
Family
ID=19324963
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019910023163A KR940007827B1 (en) | 1991-12-17 | 1991-12-17 | Method of matching between user program and real time os |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR940007827B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100455268B1 (en) * | 1997-05-16 | 2005-02-28 | 삼성전자주식회사 | Apparatus and method for safe shutdown in system using O/S such as windows 95 |
-
1991
- 1991-12-17 KR KR1019910023163A patent/KR940007827B1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR930014003A (en) | 1993-07-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1080407B1 (en) | Computer system with an emulation coprocessor and method for executing an emulated application program | |
US5621886A (en) | Method and apparatus for providing efficient software debugging | |
US6148381A (en) | Single-port trace buffer architecture with overflow reduction | |
US20070118725A1 (en) | CPU life-extension apparatus and method | |
US4924382A (en) | Debugging microprocessor capable of switching between emulation and monitor without accessing stack area | |
EP0668560A2 (en) | Coexecuting method and means for performing parallel processing in conventional types of data processing systems | |
JPS5841538B2 (en) | Multiprocessor system instructions | |
GB2329049A (en) | A debugger interface unit for identifying selected exceptions | |
JP2002512396A (en) | Real-time debugger interface for embedded systems | |
US4045661A (en) | Apparatus for detecting and processing errors | |
Myers et al. | Microprocessor technology trends | |
KR100440361B1 (en) | Data processing system with auto-aligned stack pointer and method thereof | |
JPH02220164A (en) | Input/output control processing delaying apparatus | |
KR940007827B1 (en) | Method of matching between user program and real time os | |
Katayama et al. | Prototype of the device driver generation system for UNIX-like operating systems | |
KR940007826B1 (en) | Matching method between the real time os and the keruel of other type | |
KR100223096B1 (en) | Method and apparatus for observing internal memory-mapped registers | |
JP3503504B2 (en) | Debug processing system, computer and debug processing method | |
US6539436B2 (en) | Management of interruptions in a computer platform | |
KR100214125B1 (en) | Function parameter tracking method in full electronic switching system | |
KR940007832B1 (en) | Method of measuring process load on real time system | |
JPS6376028A (en) | Method for controlling execution of instruction step in virtual computer system | |
KR920010410B1 (en) | Testing program management method | |
KR100208268B1 (en) | Method for outputing error information in a full-electronic exchange | |
JP2743889B2 (en) | Method and apparatus for program evaluation |
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 |