KR950009430B1 - The processing time delay method ina real-time multiprocessing system - Google Patents
The processing time delay method ina real-time multiprocessing system Download PDFInfo
- Publication number
- KR950009430B1 KR950009430B1 KR1019920024206A KR920024206A KR950009430B1 KR 950009430 B1 KR950009430 B1 KR 950009430B1 KR 1019920024206 A KR1019920024206 A KR 1019920024206A KR 920024206 A KR920024206 A KR 920024206A KR 950009430 B1 KR950009430 B1 KR 950009430B1
- Authority
- KR
- South Korea
- Prior art keywords
- time
- generated
- delay request
- delay
- user
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M3/00—Automatic or semi-automatic exchanges
- H04M3/22—Arrangements for supervision, monitoring or testing
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Hardware Redundancy (AREA)
- Exchange Systems With Centralized Control (AREA)
Abstract
Description
제1도는 본 발명이 적용되는 하드웨어의 구성도.1 is a block diagram of hardware to which the present invention is applied.
제2도는 본 발명이 적용되는 시간 관리기의 전체 흐름도.2 is an overall flowchart of a time manager to which the present invention is applied.
제3도는 본 발명의 상세 흐름도.3 is a detailed flowchart of the present invention.
제4도는 본 발명의 시간지연 프로세스(reaction)의 흐름도.4 is a flow diagram of a time delay reaction of the present invention.
* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings
1 : 중앙처리장치 보드(MPMA)1: Central Processing Unit Board (MPMA)
2 : 프로세스통신 제어보드(PCCA)2: Process communication control board (PCCA)
3 : 이중화운용제어 보드(DCCA)3: Redundant Operation Control Board (DCCA)
4 : 입출력 인터페이스 보드(IOIA)4: input / output interface board (IOIA)
5 : 대용량 저장 보드(MISA)5: Mass Storage Board (MISA)
6 : 부트룸(BROM)6: Bootroom (BROM)
7 : 중앙처리장치 유니트(CPU)7 Central Processing Unit (CPU)
8 : 기억장치8: storage device
10 : 다기능 주변제어칩(MFP)10: Multifunction Peripheral Control Chip (MFP)
본 발명은 전전자 교환기와 같은 대형 실시간 다중처리 시스템(real-time multiprocessing system)에서의 병행처리 프로세스의 시간지연 방법에 관한 것이다.The present invention relates to a time delay method of a parallel processing process in a large real-time multiprocessing system such as an electronic exchanger.
실시간 운영체계가 적용되는 전전자 교환 시스템은 기능에 따른 분산시스템 구조를 갖는 것이 일반적이며 이 구조에 맞추어 각 기능을 소프트웨어(이하, 사용자 프로그램)들로 구현하고 있다.The electronic switching system to which the real-time operating system is applied generally has a distributed system structure according to functions, and each function is implemented by software (hereinafter referred to as a user program) in accordance with this structure.
이들 사용자 프로그램들은 각각 호처리, 운용관리, 유지보수등을 담당하는데 이들은 일반적인 상대시간지연(relative sleep)과 절대시간 지연(absolute sleep)을 요구할 수 있다.Each of these user programs is responsible for call processing, operations management, and maintenance, which may require typical relative and absolute sleep.
상대시간 지연인 경우는 사용자 프로세스의 수행을 원하는 시간간격 동안 중단시키며 40㎳의 허용 오차를 갖고, 절대시간 지연은 사용자 프로세스의 수행을 지정된 시작까지 중단시키며 초 단위의 허용 오차내에서 요구할 수 있고 내부적으로는 년, 월, 일, 시, 분, 초, 밀리 초 값을 갖는 소프트웨어 타이머를 TOD(Time Of Day) 테이블에 두고 운용한다. 그리고 다중링크 구조를 갖는 시간관리기에서 지연을 요구하는 각각의 병행처리 프로세스들에 대한 고유식별자와 관리테이블을 동시에 관리토록 함으로써 병행처리 프로세스에 대한 시간지연을 가능하게 하고 정확성과 실시간성을 만족할 수 있도록 한 것이 특징이다.In case of relative time delay, the user process is stopped for the desired time interval and has a tolerance of 40 ms. The absolute time delay stops the execution of the user process to the specified start time and can be requested within the tolerance of seconds. For example, a software timer with year, month, day, hour, minute, second, and millisecond values is placed in a TOD (Time Of Day) table. In addition, by managing the unique identifier and management table for each parallel processing process requiring a delay in a time manager with a multi-link structure, it is possible to time delay for the parallel processing process and to satisfy accuracy and real time. It is characterized by one.
종래의 전전자 교환 시스템에서는 이와같은 기능이 필수적으로 요구되었지만 병행처리 프로세스에 대한 시간지연은 구현되어 있지 않았으며 따라서 사용자 프로그램들이 각각 병행처리 프로세스를 흉내내어 시간지연을 구현해야 했고 그렇기 때문에 실시간 다중처리 시스템에 있어서의 복잡성이 높았으며 실시간성을 만족하기 어려웠다.In the conventional electronic switching system, such a function was required, but the time delay for the parallel processing process was not implemented. Therefore, the user programs had to simulate the parallel processing process to implement the time delay. The complexity of the system was high and it was difficult to satisfy real time.
따라서 본 발명의 목적은 실시간 다중처리 시스템을 운용하는 실시간 운영체계에서 프리미티브화된 병행처리 프로세스의 시간지연 방법을 제공하는데 있다.Accordingly, an object of the present invention is to provide a time delay method of a primitive parallel processing process in a real time operating system operating a real time multiprocessing system.
상기 목적을 달성하기 위하여 본 발명은 중앙처리장치 유니트, 기억장치, 시스템 상태 레지스터, 기억장치 관리 유니트 및 입출력 장치와 타이머(이하, RTC라함)를 구비한 다음 다기능 주변 제어 칩을 포함하는 전전자 교환기의 중앙처리장치 보드(MPMA)에 적용되어 병행처리 프로세스의 시간지연을 요구하는 병행처리 프로세스의 고유식별자와 관리테이블을 관리하는 것을 특징으로 한다.In order to achieve the above object, the present invention provides an electronic switch comprising a central processing unit, a storage unit, a system status register, a storage management unit and an input / output unit and a timer (hereinafter referred to as RTC), and then a multifunction peripheral control chip. It is applied to the central processing unit board (MPMA) of the parallel processing process characterized in that it manages the unique identifier and management table of the parallel processing process.
이하 첨부된 도면을 참조하여 본 발명의 일실시예를 상세히 설명한다.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 block diagram of a high-level process (MPH) of the electronic switching system, which is the hardware to which the present invention is applied, (a) is a block diagram of the entire hardware, and (b) is a block diagram of the central processing unit board (MPMA). .
도면에서 (1)은 중앙처리장치 보드(MPMA), (2)는 프로세서 통신제어 보드(PCCA), (3)은 이중화운용보드(DCCA), (4)는 입출력 인터페이스 보드(IOIA), (5)는 대용량 저장 보드(MSIA), (6)은 부트롬(BROM), (7)은 중앙처리장치 유니트(CPU), (8)은 기억장치, (9)는 다기능 주변제어칩(MFP)을 각각 나타낸다.In the drawing, (1) is a central processing unit board (MPMA), (2) is a processor communication control board (PCCA), (3) is a redundant operation board (DCCA), (4) is an input / output interface board (IOIA), (5 ) Is the mass storage board (MSIA), (6) is the boot ROM (BROM), (7) is the central processing unit (CPU), (8) is the memory, and (9) is the multifunction peripheral control chip (MFP). Indicates.
도면에 도시한 바와 같이, 본 발명이 적용되는 상위 프로세서 하드웨어(MPH)는 중앙처리장치 보드(1)의 메모리 보드(5)를 가지며 본 발명의 소프트웨어가 탑재되어 동작하는 중앙처리장치 보드(1 : MPMA), 상기 MPMA(1)의 제어를 받아 타 프로세서와의 통신을 담당하는 프로세서 통신 제어보드(2 : PCCA), 이중화와 관련하여 D-채널 및 C-채널 제어를 담당하는 이중화 운용제어 보드(3 : DCCA)가 시스템 주 버스에 연결되어 있다.As shown in the figure, the upper processor hardware (MPH) to which the present invention is applied has a memory board (5) of the central processing unit board (1) and the central processing unit board (1) in which the software of the present invention is mounted and operated. MPMA), a processor communication control board (PCCA) that is in charge of communication with other processors under the control of the MPMA (1), and a redundant operation control board in charge of D-channel and C-channel control in relation to redundancy ( 3: DCCA) is connected to the system main bus.
중앙처리장치 보드(1)는 기본적으로, 시스템 버스로 연결된 중앙처리장치 유니트(7), 기억장치(8)와 다기능 주변제어칩(9)으로 구성되며 기억장치내에는 백터테이블과 타스크제어테이블을 유지하고 있는 다기능 주변 제어칩의 내부에는 입출력장치 및 타이머(이하, RTC라 함)를 구비하고 있다. 이와 같은 구성은 일반적인 분산 시스템의 구성이지만 교환 소프트웨어 및 운영체계를 실행하기 위해서는 이와같은 구성이 구비되어야 한다. 본 발명과 관련하여 중앙처리장치 보드내에 있는 다기능 주변장치 칩(MFP)의 RTC를 구동하여 40밀리초의 인터럽트를 기초로 하여 시간관리 테이블을 관리한다.The central processing unit board (1) is basically composed of a central processing unit (7), a storage unit (8) and a multifunction peripheral control chip (9) connected by a system bus. The storage unit includes a vector table and a task control table. An internal I / O device and a timer (hereinafter referred to as RTC) are provided inside the multifunction peripheral control chip. Such a configuration is a configuration of a general distributed system, but such a configuration must be provided to execute the exchange software and the operating system. In connection with the present invention, the RTC of the multifunction peripheral chip (MFP) in the central processing unit board is driven to manage the time management table based on a 40 millisecond interrupt.
제2도는 본 발명이 적용되는 전전자 교환기 운영체계(OS)의 시간관리기의 전체 흐름도이다.2 is an overall flowchart of a time manager of an electronic switch operating system (OS) to which the present invention is applied.
운영체계의 초기화가 시작될때 시간관리기의 초기화 요구를 수신하면(20), RTC를 0으로 하고 시간관리를 위한 초기 메모리를 할당 받아서 시간관리기를 초기화한다(21). 타이머의 인터럽트를 허용하고 시스템 전체의 초기화가 끝나면 RTC 인터럽트나 병렬처리 프로세스의 시간지연 요구등을 기다리는 상태에 있게 된다(22).When the initialization request of the time manager is received when the initialization of the operating system is started (20), the RTC is set to 0 and an initial memory for time management is allocated to initialize the time manager (21). When the timer is allowed to interrupt and system-wide initialization is complete, it is in a state of waiting for an RTC interrupt or a time-delay request from the parallel process (22).
RTC로부터 인터럽트가 발생하면(23) 각 RTC마다 해 주어야 할 인터럽트 서비스를 호출한다(24). 그리고 사용자 프로그램으로부터 병행처리 프로세스에 대한 시간지연 요구가 있으면(25) 상대시간 지연요구인가 절대시간 지연요구인가를 조사하여(26) 절대시간이면 상대시간 구간값으로 변환(27)하여 시간관리기에 등록(28)하고 상대시간이면 시간관리기에 등록한다(28). 그리고 RTC 인터럽트가 발생할때마다 시간값을 감소시키는데 이 값이 0이 되면 인터럽트 처리기로부터 등록된 프로세스가 재동작(reaction) 되어야 함을 수신(29)하게 된다. 이때 등록을 취소하는 메모리(8)에 저장된 태스크 제어 테이블에 태스크 상태를 슬립핑(sleeping)으로 기록하고 시간관리기에서 부여된 고유식별값을 기록한 다음 스케줄러를 호출하여 재동작될 프로세스를 준비상태로 등록하게 한 후(30) 대기상태(22)로 간다.If an interrupt is generated from the RTC (23), an interrupt service to be performed for each RTC is called (24). If there is a time delay request for the parallel processing process from the user program (25), it checks whether the relative time delay request or the absolute time delay request is required (26), and if it is absolute time, converts it to the relative time interval value (27) and registers it in the time manager. (28) If the relative time is registered with the time manager (28). Whenever the RTC interrupt occurs, the time value is decreased. When this value is 0, it is received from the interrupt handler that the registered process should be reacted (29). At this time, the task state is recorded as a sleeping in the task control table stored in the memory 8 to cancel the registration, the unique identification value given by the time manager is recorded, and the scheduler is called to register the process to be reactivated as ready state. After (30) go to the standby state (22).
제3도는 본 발명의 상세 흐름도로서, 제2도에서 (25) 내지 (28) 단계에 해당된다.3 is a detailed flowchart of the present invention, which corresponds to steps 25 to 28 in FIG.
병행처리 프로세스에 대한 시간지연 요구를 사용자 프로그램으로부터 받으면(40) 시간지연 요구 파라메타들이 합당한가를 판별한다(41). 합당하지 않으면 사용자 오류임을 사용자 프로그램으로 통보하고(51) 종료함으로써 오류로 인한 오동작을 방지한다. 그리고 합당하면 시간관리기에 등록될 타이머 고유식별자를 생성한다(42). 타이머 고유식별자의 생성이 성공했는가를 판별(43)하고 생성이 실패했으면 실패의 이유를 사용자에게 알린후(52) 종료하며, 성공했으면 요구된 시간값이 절대시간(TOD)인지를 판별(44)하는데 이 타이머 고유식별자가 등록될 프로세스의 인스턴스(instance)가 된다. 시간지연을 요구하는 프로세스의 시간값이 절대시간이면 이를 시스템 내부에서 관리할 수 있는 상대시간 구간값으로 변환하고(45), 시간관리 데이터 구조체를 생성(46)한다.Upon receiving the time delay request for the parallel processing process from the user program (40), it is determined whether the time delay request parameters are reasonable (41). If not, it notifies the user program of the user error (51) and terminates to prevent malfunction due to the error. If appropriate, a timer unique identifier to be registered in the time manager is generated (42). It is determined whether the generation of the timer unique identifier succeeds (43). If the generation fails, the user is notified of the reason for the failure (52), and if it is successful, it is determined whether the requested time value is an absolute time (TOD) (44). This timer identifier is an instance of the process to be registered. If the time value of the process requiring time delay is an absolute time, it is converted into a relative time interval value that can be managed in the system (45), and a time management data structure is generated (46).
상기 단계(46)의 성공 여부를 판별하여(47) 실패했으면 시간관리가 가지고 있는 데이터 구조체가 더 이상 없다거나 시스템 메모리의 부족으로 재 생성할 수 없다든지의 실패이유를 사용자에게 통보해 보낸후에(52) 종료하고, 성공하면 자료구조체내에 시간관리의 종류를 시간지연요구로 기입하고 재동작(wakeup)시키는데 필요한 타이머 고유식별자 등을 기입(48)하는데 이것이 등록된 병행처리 프로세스 관리테이블을 구성하게 된다. 마지막으로 다중링크 구조를 갖는 시간관리기에 생성된 시간지연을 갖는 시간관리기에 생성된 시간지연 요구를 등록한 후(49) 이 프로세스의 상태를 시간 지연 상태로 하여 디스패칭(dispatching)하고 (50)종료한다.After determining that the step 46 is successful (47) and failing, after notifying the user of the failure reason that the data structure of time management is no longer or cannot be recreated due to lack of system memory, 52) When it finishes, if it succeeds, it writes the type of time management in the data structure as a time delay request and writes a timer unique identifier necessary for wakeup (48), which constitutes a registered parallel process management table. . Finally, after registering the time delay request generated in the time manager with the time delay generated in the multi-link structure (49), dispatching with the status of this process as the time delay state and ending (50). do.
제4도는 본 발명의 시간지연된 프로세스를 재동작(reaction)시키는 과정의 흐름도로서, 제2도의 (23), (24), (29), (300)의 단계에 해당한다.4 is a flow chart of a process of reacting the time delayed process of the present invention, which corresponds to the steps of (23), (24), (29) and (300) of FIG.
시간관리기에서 시간지연 프로세스를 처리하는 과정으로서 RTC 인터럽트를 받으면(60) RTC 인터럽트마다 밀리초의 값이 누적되는데 이 값이 1초를 초과했는가를 판단(61)에 초과했으면 TOD에 관련된 값들(년, 월, 일, 시, 분, 초)을 변경하고(62) 그렇지 않으면 시간지연된 프로세스가 있는지를 판별한다(63). 이때 시간지연된 프로세스가 있으면 그 프로세스의 시간지연 요구값을 감소시키고(64) 시간지연 요구값이 경과했나, 즉 시간지연을 요구한 프로세스의 시간값이 0이 되었는지를 판별하게 된다(65). 지연요구 시간이 경과하지 않았으면 제2도인 전체 흐름도에서 대기상태(22)로 리턴하며 지연요구 시간이 경과했으면 시간관리기의 관리테이블에서 등록된 프로세스를 제거하고(66) 이를 스케쥴러에 등록(67)함으로써 준비(ready) 상태로 천이하게 한다.When the RTC interrupt is processed by the time manager (60), when the RTC interrupt is received (60), the value of milliseconds is accumulated for each RTC interrupt, and when it is determined that the value exceeds 1 second (61), the TOD related values (year, Month, day, hour, minute, second) and determine if there is a time delayed process (63). At this time, if there is a time-delayed process, the time delay request value of the process is reduced (64), and the time delay request value has elapsed, that is, it is determined whether the time value of the process requesting the time delay is zero (65). If the delay request time has not elapsed, the flow returns to the wait state 22 in the entire flowchart of FIG. 2, and if the delay request time has elapsed, the registered process is removed from the management table of the time manager (66) and registered with the scheduler (67). Thereby making the transition to the ready state.
따라서, 상기와 같은 처리절차로 이루어진 본 발명의 효과는 다음과 같다.Therefore, the effect of the present invention made of the above-described processing procedure is as follows.
병행처리 프로세스에 대한 시간지연 처리를 프리미티브로 구현함으로써 사용자들로 하여금 증복설계 및 실행오류의 가능성을 줄여 신뢰성을 높일 수 있으며, 본 발명을 이용해서 통신 규약 구현을 간소화하여 유지보수를 용이하게 할 수 있는 장점이 있고, 특히 동기화가 요구될때 이용될 수 있다. 그리고 그의 병행처리 프로세스의 시간지연을 요하는 다양한 응용이 가능하다.By implementing the time delay processing for the parallel processing process as a primitive, users can increase the reliability by reducing the possibility of redundancy design and execution error, and the maintenance of the communication protocol can be simplified by using the present invention to facilitate maintenance. It has the advantage that it can be used especially when synchronization is required. And various applications that require time delay of the parallel processing process are possible.
Claims (1)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019920024206A KR950009430B1 (en) | 1992-12-14 | 1992-12-14 | The processing time delay method ina real-time multiprocessing system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019920024206A KR950009430B1 (en) | 1992-12-14 | 1992-12-14 | The processing time delay method ina real-time multiprocessing system |
Publications (2)
Publication Number | Publication Date |
---|---|
KR940017569A KR940017569A (en) | 1994-07-26 |
KR950009430B1 true KR950009430B1 (en) | 1995-08-22 |
Family
ID=19345501
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019920024206A KR950009430B1 (en) | 1992-12-14 | 1992-12-14 | The processing time delay method ina real-time multiprocessing system |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR950009430B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100426943B1 (en) * | 1998-12-30 | 2004-06-12 | 엘지전자 주식회사 | How to handle operating system errors in the redundant system of exchanges |
-
1992
- 1992-12-14 KR KR1019920024206A patent/KR950009430B1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR940017569A (en) | 1994-07-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5506963A (en) | Real-time management system having coprocessors allocated time slices of different durations to functions and processors executed functions simultaneously in accordance with the time allocation | |
US6892261B2 (en) | Multiple operating system control method | |
JP2782367B2 (en) | Digital computing system with low power mode | |
US4851987A (en) | System for reducing processor power consumption by stopping processor clock supply if a desired event does not occur | |
CA1152221A (en) | Peripheral unit controller | |
JPH0376496B2 (en) | ||
US6883102B2 (en) | Apparatus and method for performing power management functions | |
EP1162536A1 (en) | Multiple operating system control method | |
TW200538940A (en) | Method and system of exchanging information between processors | |
CN116302141B (en) | Serial port switching method, chip and serial port switching system | |
US20040193735A1 (en) | Method and circuit arrangement for synchronization of synchronously or asynchronously clocked processor units | |
KR950009430B1 (en) | The processing time delay method ina real-time multiprocessing system | |
EP0664035A1 (en) | AUTOMATIC LOGICAL CPU ASSIGNMENT OF PHYSICAL CPUs. | |
EP1410168B1 (en) | An efficient timer management system | |
KR950009429B1 (en) | The processing time out management method in a real-time multiprocessing system | |
JPH06274354A (en) | Method and system for control of operation of destructive hardware | |
JPH10326205A (en) | System call issuing method | |
US6560715B1 (en) | Sequencer of synchronous actions in a processor system, and integrated circuit including such sequencer | |
KR940007830B1 (en) | Method of signaling the time-out situation on real-time os | |
Son et al. | Concurrency control for replicated data in distributed real-time systems | |
JPS5843775B2 (en) | Processor backup system | |
KR940007827B1 (en) | Method of matching between user program and real time os | |
JPH03127231A (en) | Data assurance processing method for take-over information | |
JPH02188866A (en) | Event control system in coprocessor | |
JP2712730B2 (en) | Evaluation chip |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
N231 | Notification of change of applicant | ||
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: 20030728 Year of fee payment: 9 |
|
LAPS | Lapse due to unpaid annual fee |