KR950010484B1 - A real-time operation method for an electronic exchanger - Google Patents
A real-time operation method for an electronic exchanger Download PDFInfo
- Publication number
- KR950010484B1 KR950010484B1 KR1019920024210A KR920024210A KR950010484B1 KR 950010484 B1 KR950010484 B1 KR 950010484B1 KR 1019920024210 A KR1019920024210 A KR 1019920024210A KR 920024210 A KR920024210 A KR 920024210A KR 950010484 B1 KR950010484 B1 KR 950010484B1
- Authority
- KR
- South Korea
- Prior art keywords
- shl
- system library
- steps
- procedure
- user
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04Q—SELECTING
- H04Q3/00—Selecting arrangements
- H04Q3/42—Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker
- H04Q3/54—Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised
- H04Q3/545—Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised using a stored programme
- H04Q3/54575—Software application
- H04Q3/54583—Software development, e.g. procedural, object oriented, software generation, software testing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M3/00—Automatic or semi-automatic exchanges
- H04M3/22—Arrangements for supervision, monitoring or testing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M2203/00—Aspects of automatic or semi-automatic exchanges
- H04M2203/05—Aspects of automatic or semi-automatic exchanges related to OAM&P
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Stored Programmes (AREA)
Abstract
Description
제 1 도는 본 발명이 적용되는 하드웨어 시스템의 구성도.1 is a block diagram of a hardware system to which the present invention is applied.
제 2 도는 본 발명이 적용되는 소프트웨어 블럭의 구성도.2 is a block diagram of a software block to which the present invention is applied.
제 3 도는 본 발명의 소프트웨어 기능블럭 구성도.3 is a software functional block diagram of the present invention.
제 4 도는 본 발명의 흐름도.4 is a flow chart of the present invention.
제 5 도에서 제 9 도는 본 발명의 상세 흐름도.5 to 9 are detailed flow charts of the present invention.
* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings
MPMA : 중앙처리장치 보드 PCCA : 통신제어 보드MPMA: Central Processing Unit Board PCCA: Communication Control Board
DCCA : 이중화 제어 보드 MFP : Multi-Function PeripheralDCCA: Redundant Control Board MFP: Multi-Function Peripheral
SHL : 시스템 라이브러리 OS : 운영체계SHL: System Library OS: Operating System
pop : 스택의 내용을 가져오고 스택 포인터를 감소pop: get the contents of the stack and decrement the stack pointer
push : 스택에 내용을 넣고 스택 포인터를 증가push: put content on stack and increment stack pointer
본 발명은 대용량 실시간 교환시스템에서 방대한 소프트웨어를 개발함에 있어서 소프트웨어의 모듈성과 효율성을 증대시키기 위하여 요청되는 시스템 라이브러리 기능 구현 방법에 관한 것이다.The present invention relates to a method for implementing a system library function required to increase the modularity and efficiency of software in developing massive software in a large capacity real-time exchange system.
종래의 교환시스템 기술로는 한 응용 소프트웨어에 필요한 모드 프로시듀어는 그 소프트웨어 블럭에 직접 존재해야만 하였다. 따라서 불필요한 중복이 발생함과 동시에 이로 인하여 시스템 내에 자원의 낭비 및 블럭간의 통신 부담으로 비효율적인 운용이 되어 왔으나 이를 지원하는 기능이 부재하였는데, 점차 증가하는 소프트웨어의 양과 서로간의 밀접한 연관성으로 인해 시스템 라이브러리라는 새로운 개념이 추가될 것이 요구된다.Conventional switching system technology requires that a mode procedure for an application software be present directly in the software block. As a result, unnecessary duplication occurs and this leads to inefficient operation due to waste of resources in the system and communication burden between blocks. New concepts are required to be added.
따라서 본 발명에서는 소프트웨어의 모듈성과 재사용성 및 효율을 높이도록 공통 프로시듀어를 중복으로 두지 않고 시스템 내에 하나만을 두어 사용할 수 있도록 한 시스템 라이브러리의 기능의 구현 방법을 제공하는데 그 목적이 있다.Accordingly, an object of the present invention is to provide a method of implementing a function of a system library that can be used in a system without using common procedures in duplicate to increase modularity, reusability, and efficiency of software.
상기 목적을 달성하기 위하여 본 발명은, 주 제어기능을 하는 메인보드, 메인보드의 제어를 받으며 통신노드에 접속되어 타 프로세서와의 통신을 담당하는 통신제어 보드, 이중화 제어를 하는 이중화 보드, 외부장치에 따라 입출력을 담당하는 입출력 보드가 시스템 버스에 연결되어 있으며, 이는 이중화로 구성되어 이중화 통신을 위한 채널을 가지고 있으며 메인보드 내에는 메모리 관리 유니트 기능을 보유한 중앙처리장치, 기억장치, 인터럽트를 발생시키는 MFP을 구비하는 하드웨어에 적용되어 시스템 라이브러리 기능을 수행하는 방법에 있어서, 시스템 라이브러리를 구성하는 제 1 단계와, 상기 제 1 단계 수행후 시스템 라이브러리와 응용 소프트웨어 블럭 로딩후 사용자로부터 시스템 라이브러리 등록 요구가 들어오면 시스템 라이브러리를 등록하는 제 2 단계와, 상기 제 2 단계 수행후 사용자에서 시스템 라이브러리를 호출하는 제 3 단계, 상기 제 3 단계 수행후 실제 요구 프로시듀어로 연결하는 제 4 단계, 상기 제 4 단계 수행후 시스템 라이브러리 수행시 임계영역을 보장하는 제 5 단계에 의해 수행되는 것을 특징으로 한다.In order to achieve the above object, the present invention, the main board functioning as the main control function, the communication control board which is connected to the communication node under the control of the main board and performs communication with other processors, the redundant board for the redundancy control, an external device The I / O board responsible for I / O is connected to the system bus, which consists of redundancy and has a channel for redundancy communication, and generates a central processing unit, a memory device, and an interrupt that have a memory management unit function in the main board. A method applied to hardware having an MFP to perform a system library function, the method comprising: a first step of constructing a system library, a system library registration request from a user after loading the system library and application software after performing the first step; Register your system library when it comes Is a second step, a third step of calling a system library by a user after performing the second step, a fourth step of connecting to an actual request procedure after performing the third step, and performing a system library after performing the fourth step And a fifth step of guaranteeing a time critical region.
이하, 첨부된 도면을 참조하여 본 발명의 일실시예를 상세히 설명한다.Hereinafter, with reference to the accompanying drawings will be described an embodiment of the present invention;
제 1 도는 본 발명이 적용되는 하드웨어 구성도로서, 제 1 (a)도 는 프로세서 구조도이고, 제 1 (b)도는 메인보드 구조도이다.1 is a hardware configuration diagram to which the present invention is applied, in which FIG. 1 (a) is a processor structure diagram and FIG. 1 (b) is a motherboard structure diagram.
제 1 (a)도에 도시한 프로세서는 주 제어기능을 하는 메인보드(1 : MPMA), 메인보드의 제어를 받으며 통신 노드(2 : Node)에 접속되어 타 프로세서와의 통신을 담당하는 통신제어보드(3 : PCCA), 이중화 제어를 하는 이중화 보드(4 : DCCA), 외부 장치에 따라 입출력을 담당하는 입출력보드(5)가 시스템 버스(6 : Bus)에 연결되어 있으며, 이는 이중화로 구성되어 이중화 통신을 위한 채널(7)을 가지고 있다. 또한 제 1(b)도에 도시한 메인보드(1 : MPMA)는 메모리관리 유니트(8 : MMU) 기능을 보유한 중앙처리장치(9 : CPU), 기억장치(10 : MEMORY), 인터럽트를 발생시키는 MFP(11) 등으로 구성되어 있다.The processor shown in FIG. 1 (a) is a main board (1: MPMA) serving as a main control function, a communication control under the control of the main board, and connected to a communication node (2: Node) to perform communication with other processors. Board (3: PCCA), redundancy board (4: DCCA) for redundancy control, and I / O boards (5) that are responsible for I / O according to external devices are connected to the system bus (6: Bus). It has a channel 7 for redundant communication. In addition, the main board (1: MPMA) shown in FIG. 1 (b) generates a central processing unit (9: CPU), a memory (10: memory), and an interrupt having a memory management unit (8: MMU) function. MFP 11 or the like.
제 2 도는 본 발명이 적용되는 소프트웨어 블럭의 구성도로서 2개 이상의 일반 사용자 블럭들(15)에서 시스템 라이브러리(16 이하 SHL이라함)를 호출하여 사용하며 SHL(16)에서도 사용자 블럭과 마찬가지로 운영체계(17 : 이하 OS라함) 프로미티브 호출이 가능하다. 또한 이러한 SHL은 시스템내 여러개 존재할 수 있다.2 is a block diagram of a software block to which the present invention is applied. Two or more general user blocks 15 call and use a system library (hereinafter referred to as SHL). (17: hereinafter referred to as OS) Prompt calls are possible. There may also be multiple such SHLs in the system.
제 3 도는 본 발명의 소프트웨어 블럭도의 구성도로서, SHL(16)과 사용자 블럭 사이에 규약을 정의하여 그 규약에 따라 사용자 블럭에서 SHL(16)을 호출하는 SHL호출부(21), SHL(16)에서 제공하여 사용자 블럭에 링크되어 SHL(16)과 사용자 블럭을 인터페이스하는 SHL정합부(22), SHL(16)을 일반 사용자 블럭들과는 달리 특수하게 제작하는 SHL구성부(23), SHL(16)을 사용자 블럭이 사용할 수 있도록 기능을 제공하는 SHL등록 기능부(24), SHL(16)에 대한 임계영역을 보장하는 SHL수행부(25)로 구성된다. 여기서 SHL호출부(21)와 SHL정합부(22)는 사용자 블럭(26)에 존재하며, SHL구성부(23)는 SHL(27) 블럭에 SHL등록 기능부(24)와 SHL수행부(25)는 OS(17)에 각각 존재한다.3 is a block diagram of the software block diagram of the present invention, in which a protocol is defined between the SHL 16 and the user block, and the SHL caller 21 and SHL (calling the SHL 16 in the user block according to the protocol) are executed. Unlike the general user blocks, the SHL matching unit 22 and the SHL matching unit 22 and SHL 16 which are linked to the user block and linked to the user block are provided in 16). 16, the SHL registration function unit 24 provides a function for the user block to use, and the SHL execution unit 25 guaranteeing a critical area for the SHL 16. Here, the SHL calling unit 21 and the SHL matching unit 22 are present in the user block 26, and the SHL configuration unit 23 is the SHL registration function unit 24 and the SHL performing unit 25 in the SHL 27 block. Are each present in the OS 17.
본 발명은 제 1 도의 기억장치(9)내에 존재하는 소프트웨어로 제 2 도에서의 사용자 블럭(15), SHL(16) 및 OS (17) 각각에서의 역활을 정의, 구현하여 여러 사용자 블럭들에서 공통으로 사용하는 프로시듀어들을 하나의 시스템 라이브러리로 구성하여 운용이 가능하게 그 기능을 제공하도록 구성되어 있다.The present invention defines and implements the roles of the user block 15, the SHL 16, and the OS 17 in FIG. 2 using software existing in the memory 9 of FIG. It is configured to provide the functions that can be operated by composing the commonly used procedures into one system library.
제 4 도는 본 발명의 전체 처리 흐름도이다.4 is a flowchart of the overall process of the present invention.
우선 SHL(16)을 구성하고(31), SHL(16)을 시스템 메모리에 로딩한다(32). 다음으로 사용자 블럭을 시스템 메모리에 로딩한다(33). 이후 사용자 블럭 수행시 사용자 블럭에서 SHL(16) 사용을 위해 SHL(16) 등록요구 프로미티브가 입력되면(34), SHL등록부(34)에서 이를 받아 SHL(16)을 사용할 수 있도록 사용자블럭에 등록(35)을 한다. 이로써 사용자 블럭(15)에서는 SHL프로미티브를 사용할 수 있는 준비가 된 것이다. 이후 SHL(16)에서 제공하는 프로시듀어를 호출하면(36) SHL정합부(37)를 거쳐 SHL수행부(38)의 제어를 받으며 수행을 완료하게 된다. 수행후 리턴값을 호출한 사용자에게 되돌리고(39) 종료한다.First, the SHL 16 is configured (31), and the SHL 16 is loaded into the system memory (32). Next, the user block is loaded into the system memory (33). If the SHL (16) registration request primitive is inputted for use of the SHL (16) in the user block during the execution of the user block (34), the SHL register 34 receives the received request from the user block to use the SHL (16). Register (35). This makes the user block 15 ready to use the SHL primitives. Thereafter, when the procedure provided by the SHL 16 is called (36), the SHL performing unit 38 is controlled by the SHL performing unit 38 to complete the execution. After execution, the return value is returned to the calling user (39), and the process ends.
본 발명은 상가와 같이구성되어 SHL을 구성, 등록, 호출, 정합 및 수행하는데 필요한 모든 기능을 구현하여 실시간 시스템에서 시스템 라이브러리 기능을 제공하도록 되어 있다.The present invention is configured to provide a system library function in a real-time system by implementing all functions necessary for configuring, registering, calling, matching, and performing SHL.
제 5 도는 SHL구성 제어에 따른 상세 흐름도이다.5 is a detailed flowchart according to the SHL configuration control.
우선 프로시듀어 엔트리를 나열한 프로시듀어 테이블을 구성하여 최초 초기화 데이타로 설정한다(41). 테이블 주소는 SHL정합부에 입력한다(42). 프로시듀어 테이블에 등록한 프로시듀어들의 실제 내용을 작성한 후(43). 일반 사용자 블럭과 중복되지 않는 번지로 링크한다(44).First, a procedure table listing procedure entries is constructed and set as initial initialization data (41). The table address is entered 42 in the SHL match. After writing the actual contents of the procedures registered in the procedure table (43). Link to a non-overlapping address with the general user block (44).
제 6 도는 SHL등록 제어에 따른 상세 흐름도이다.6 is a detailed flowchart according to the SHL registration control.
사용자로부터 SHL(16)등록 요구 프로미티브가 입력되어(51) 수행을 시작하면 등록 요구 SHL이 로딩되어 있는가를 조사하여(52), 로딩이 되어 있지 않으면 에러 리턴(53)하여 수행을 끝내고, 로딩이 되어 있으면 SHL(16)주소 영역이 사용자와 중복되는지를 조사하여(54) 중복되면 에러 리턴(53)하여 수행을 끝낸다. 중복되지 않으면 상기 제 1 도에서의 MMU(7)가 인식할 수 있는 형태로 SHL(16)의 텍스트 데이타 영역을 사용자 영역으로 등록한다(55).When the SHL (16) registration request primitive is input from the user (51) to start execution, it is checked whether the registration request SHL is loaded (52). If not, an error is returned (53) to finish the execution. If so, it checks whether the SHL (16) address area is duplicated with the user (54), and if it is duplicated, returns an error (53) to finish the operation. If not duplicated, the text data area of the SHL 16 is registered as the user area in a form that the MMU 7 in FIG. 1 can recognize (55).
제 7(a) 도는 SHL호출부 제어에 따른 상세 흐름도이고, (b)는 스택구조도이다.7 (a) is a detailed flowchart according to SHL call part control, and (b) is a stack structure diagram.
SHL(16)에서 제공하는 프로시듀어 호출시 그 프로시듀어를 직접 호출하는 것이 아니라 정합루틴을 호출하게 된다. 프로시듀어 번호, 해당 프로시듀어의 아규먼트를 입력 파라메타로 설정하여(61), 정합루틴을 호출(62)한다. 호출후 스택의 구조는 제 7 (b)도와 같다.When calling a procedure provided by SHL 16, the matching routine is called instead of calling the procedure directly. The procedure number and the argument of the procedure are set as input parameters (61), and the matching routine is called (62). The structure of the stack after the call is shown in FIG.
제 8(a) 도는 SHL정합 제어에 따른 상세 흐름도이고, 제 8(b) 도는 스택 구조도이다.FIG. 8 (a) is a detailed flowchart according to the SHL matching control, and FIG. 8 (b) is a stack structure diagram.
여기서는 사용자와 SHL사이의 인터페이스를 제공하게 되는데, 프로시듀어 번호와 아규먼트가 전달되어 오면(71) 우선 스택에 있는 프로그램 카운터(이하, PC라함)를 팝(pop)하고(72), 프로시듀어 번호를 팝한 후(73), 스택에 있던 PC를 푸시(push)(74)한다. SHL(16)에서 제공된 프로시듀어 테이블 주소(75)에서 프로시듀어 번호를 인덱스로 하여 해당 프로시듀어로 점프한다(76).Here, it provides an interface between the user and the SHL. When the procedure number and arguments are passed (71), the program counter (hereinafter referred to as PC) on the stack is first popped (72). After popping the number (73), the PC that was on the stack is pushed (74). The procedure table address 75 provided by the SHL 16 jumps to the procedure using the procedure number as an index (76).
이렇게 조정된후 스택의 구조는 제 8 (b)도와 같이 되어 사용자에서 바로 SHL프로시듀어를 호출한 구조와 동일하게 된다.After this adjustment, the structure of the stack becomes as shown in FIG. 8 (b), and is the same as the structure in which the user directly calls the SHL procedure.
제 9 도는 SHL수행 제어에 따른 상세 흐흠도이다.9 is a detailed haze diagram according to SHL performance control.
여기서는 SHL수행중 제 1 도의 MFP(11)에서 발생시키는 외부 인턴럽트로 인해 SHL의 수행이 잠시 멈추고 OS(17)로 제어가 넘어갈 수 있는데 이 경우 OS(17)에서는 다른 프로세스를 스케줄링할 수 있다. 이렇게 되면 여러 프로세스에서 공통으로 접근하는 데이타에 불일치가 발생하여 시스템에 장애를 유발시킬 수 있다. 이를 방지하기 위하여 SHL프로시듀어는 일단 수행을 시작하면 수행을 끝낼때까지 다른 프로세스에게 제어권을 빼앗기는 일이 없도록 보장해 주어야 한다. 이를 위해서 외부 인터럽트 발생시(81) CPU 제어권 획득 프로세스 결정시 PC를 조사(82)하여 SHL텍스트 영역내이면(83) 스케쥴러를 호출하지 않고(84) 인터런트 당한 SHL의 위치로 리턴한다(85). PC가 SHL텍스트 영역이 아니면 인터럽트의 일반처리를 한다(86).Here, the execution of SHL may be paused and the control may be transferred to the OS 17 due to the external internship generated by the MFP 11 of FIG. 1 during SHL. In this case, the OS 17 may schedule another process. This can lead to inconsistencies in the data that are commonly accessed by multiple processes, causing the system to fail. To prevent this, the SHL procedure should ensure that once it starts running, it does not lose control to other processes until it finishes running. To this end, when an external interrupt occurs (81), when the CPU control right acquisition process is determined, the PC is examined (82) and within the SHL text area (83) without returning to the scheduler (84) and returning to the location of the interrupted SHL (85). If the PC is not in the SHL text area, the interrupt is processed normally (86).
따라서, 상기와 같은 절차에 의해 수행되는 본 발명은 대용량 실시간 시스템에서 시스템 라이브러리 기능을 실현하여 대형 소프트제어 개발에 있어 소프트웨어의 중복성, 자원의 낭비, 비효율성 등을 지양하고, 시스템의 모듈성 및 시스템의 효율을 중대시키는 효과가 있다.Therefore, the present invention carried out by the above procedure realizes the system library function in the large-scale real-time system, avoiding software redundancy, waste of resources, inefficiency, etc. in the development of large-scale soft control, and the modularity of the system There is an effect of increasing the efficiency.
Claims (6)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019920024210A KR950010484B1 (en) | 1992-12-14 | 1992-12-14 | A real-time operation method for an electronic exchanger |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019920024210A KR950010484B1 (en) | 1992-12-14 | 1992-12-14 | A real-time operation method for an electronic exchanger |
Publications (2)
Publication Number | Publication Date |
---|---|
KR940017570A KR940017570A (en) | 1994-07-26 |
KR950010484B1 true KR950010484B1 (en) | 1995-09-18 |
Family
ID=19345508
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019920024210A KR950010484B1 (en) | 1992-12-14 | 1992-12-14 | A real-time operation method for an electronic exchanger |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR950010484B1 (en) |
-
1992
- 1992-12-14 KR KR1019920024210A patent/KR950010484B1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR940017570A (en) | 1994-07-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU1761992A (en) | Improved software debugging system and method especially adapted for code debugging within a multi-architecture environment | |
US7171546B2 (en) | CPU life-extension apparatus and method | |
CN101300545A (en) | Apparatus and method for performing externally assisted calls in a heterogeneous processing complex | |
US5938745A (en) | Arbitrator for modem in a system without shared process space that passes a duplicate handle to a first listening application with matching identification string | |
US7552434B2 (en) | Method of performing kernel task upon initial execution of process at user level | |
US7546600B2 (en) | Method of assigning virtual process identifier to process within process domain | |
EP0348053A2 (en) | Controlling the initiation of logical systems in a data processing system with logical processor facility | |
US5724585A (en) | Method for processing an application termination initiated from a pre-initialized computer language execution environment | |
KR950010484B1 (en) | A real-time operation method for an electronic exchanger | |
KR940007827B1 (en) | Method of matching between user program and real time os | |
KR0152214B1 (en) | Method for matching a microcanal and a server for exchange system | |
RU2718235C1 (en) | Operating system architecture for supporting generations of microkernel | |
KR100264471B1 (en) | Data entry method from asynchronous transfer mode exchange to control system console | |
KR940007826B1 (en) | Matching method between the real time os and the keruel of other type | |
US20040010632A1 (en) | System and method for dynamically adding an ioctl command to a file | |
KR920010410B1 (en) | Testing program management method | |
KR0175572B1 (en) | Dynamic Matching Method of Memory-resident DBMS | |
KR100195953B1 (en) | High performance dma operating method of i/o processor | |
JP2790472B2 (en) | Multiple conversation processing control method | |
Hill et al. | The BSP programming library | |
KR950006567B1 (en) | Interfacing method of protocol management and operation system for packet switching function | |
KR0123855B1 (en) | The method of parallel processing for one to master slave | |
JPS60229141A (en) | Preserving system of register data | |
CN116302123A (en) | Driving framework, operating system, calling method of driving program and electronic equipment | |
JP2591818B2 (en) | Auxiliary function selection control method |
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: 20030901 Year of fee payment: 9 |
|
LAPS | Lapse due to unpaid annual fee |