KR100371136B1 - 이중포트메모리를 사용한 메시지 버퍼 풀 감지 및 관리 방법 - Google Patents

이중포트메모리를 사용한 메시지 버퍼 풀 감지 및 관리 방법 Download PDF

Info

Publication number
KR100371136B1
KR100371136B1 KR10-1999-0056358A KR19990056358A KR100371136B1 KR 100371136 B1 KR100371136 B1 KR 100371136B1 KR 19990056358 A KR19990056358 A KR 19990056358A KR 100371136 B1 KR100371136 B1 KR 100371136B1
Authority
KR
South Korea
Prior art keywords
buffer
message
pool
control information
buffer pool
Prior art date
Application number
KR10-1999-0056358A
Other languages
English (en)
Other versions
KR20010055219A (ko
Inventor
박혜숙
문승진
송광석
Original Assignee
주식회사 케이티
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 케이티, 한국전자통신연구원 filed Critical 주식회사 케이티
Priority to KR10-1999-0056358A priority Critical patent/KR100371136B1/ko
Publication of KR20010055219A publication Critical patent/KR20010055219A/ko
Application granted granted Critical
Publication of KR100371136B1 publication Critical patent/KR100371136B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/90Buffering arrangements
    • H04L49/9047Buffering arrangements including multiple buffers, e.g. buffer pools
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/06Generation of reports
    • H04L43/062Generation of reports related to network traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/50Overload detection or protection within a single switching element

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Communication Control (AREA)

Abstract

본 발명은 이중포트메모리(Dual Port Random Access Memory : 이하 DPRAM이라 한다)를 사용하여 두 보드간의 메시지 버퍼를 운용하는 경우에 있어서, 버퍼의 풀 또는 버퍼 풀의 해지 상태를 즉각적으로 감지하여 상대방 보드에게 보고함으로써 프로세서의 부하를 줄일 수 있는 버퍼 풀의 감지 및 관리 방법에 관한 것이다.
본 발명은 DPRAM의 제어정보영역에 메시지의 송신/수신 버퍼의 포인터를 저장하여, 상대방 보드에서 현재의 비어 있는 버퍼의 수를 알 수 있도록 한다. 또한 각각의 메시지 버퍼에 버퍼 사용여부(use/empty)에 관한 플래그를 설정하여, 현재 버퍼 포인터의 버퍼가 사용중인지 비어 있는지 확인하여 버퍼 풀을 감지한다. 그리고 버퍼 풀을 감지하면 전송을 중단하고 인터럽트를 이용하여 상대방 보드에 알려주고, 상대방 보드로부터 버퍼 풀 해지 인터럽트를 수신하면 중단된 전송을 재계한다.
이와 같이 본 발명은 즉각적으로 버퍼 풀 또는 해지 상태를 감지함으로써 버퍼의 상태 감지에 소요되는 프로세서의 부하를 줄여준다.

Description

이중포트메모리를 사용한 메시지 버퍼 풀 감지 및 관리 방법 {Full detection and management method of message buffer using DPRAM}
본 발명은 ATM 교환기의 호처리 및 운용기능을 수행하는 프로세서들간의 메시지 통신을 전담하는 보드와 메인 프로세서간에서와 같이 이중포트메모리(Dual Port Random Access Memory : 이하 DPRAM이라 한다)를 사용하여 두 보드간의 메시지 버퍼를 운용하는 경우에 있어서, 메시지 버퍼의 풀 감지 및 관리에 관한 것이다.
종래에 두 보드간 통신(Inter-Processor Communication) 메시지 버퍼로서 이중포트메모리를 사용하는 경우, 메시지 버퍼의 풀(full)은 현 버퍼 포인터의 버퍼에 메시지가 처리되지 않아 버퍼가 비어있지 않을 경우에 감지되며, 이때 프로세서는 그 버퍼를 사용할 수 있을 때까지 기다려야 한다. 따라서 프로세서는 버퍼 풀을 감지한 후, 그 버퍼를 사용할 수 있을 때까지 그 버퍼가 비어졌는지 상태를 주기적으로 폴링(polling)해야 하므로 프로세서에 부하가 걸리는 문제점이 있다. 프로세서가 버퍼의 상태를 폴링하는 동안에 메시지 송신과 무관한 응용프로그램도 수행되지 못하기 때문에 시스템의 전체 성능을 저하시킨다. 또한, 버퍼가 완전 풀(100%)인 경우에만 버퍼 풀임을 감지할 수 있기 때문에 버퍼 풀 상태를 해소하더라도 다중 메시지를 전송하는 경우에는 메시지 버퍼 풀이 연속적으로 발생할 수 있다. 따라서 완전 풀이 아닌 경우에도 버퍼 풀에 가까워지면 버퍼 풀에 가까워졌음을 알려 메시지의 송신률을 조정하도록 해야 한다
상기한 종래의 문제점을 해결하기 위한 본 발명의 목적은 두 보드가 DPRAM을 통해 메시지를 전달함에 있어, 프로세서의 부하 없이 즉각적인 버퍼 풀의 감지와 버퍼 풀의 해지 상태를 보고함으로써 프로세서의 유휴시간을 줄일 수 있도록 하는 이중포트메모리를 사용한 메시지 버퍼의 풀 감지 및 관리 방법을 제공하는 데 있다.
도 1은 DPRAM 인터페이스를 가지는 두 보드의 구성도
도 2는 DPRAM의 자료구조도
도 3은 본 발명에 따른 DPRAM의 송신버퍼 풀 감지 및 해지 방법을 보인 흐름도
도 4는 본 발명에 따른 PRAM의 수신버퍼 풀 감지 및 해지 방법을 보인 흐름도
상기한 목적을 달성하기 위해 본 발명은 DPRAM과 인터럽트라는 하드웨어적인 자원을 이용해 소프트웨어적으로 효율적인 메시지 버퍼를 운용한다.
이를 위해 DPRAM을 통해 두 보드간의 메시지 전달뿐만 아니라, 제어정보를 주고받으며, 메시지 송신/수신 루틴에서 DPRAM의 정보만으로 버퍼 풀을 감지할 수 있도록 DPRAM의 구조를 송신/수신버퍼 영역과 버퍼를 운용하는 포인터와 주소를 저장하는 제어정보영역으로 구성하며, 각각의 버퍼는 메시지 버퍼의 상태를 나타내는 플래그 영역을 포함한다.
그리고, 인터럽트를 이용하여 버퍼 풀 발생 및 버퍼 풀의 해지 상태를 즉각적으로 상대방 보드에게 알려줌으로써 메시지 통신을 단절하거나 재계하도록 한다. 따라서 마스터와 슬래이버 보드는 버퍼 풀 및 해지 상태를 계속적으로 체크하지 않기 때문에 CPU 의 부하를 줄일 수 있다.
또한 본 발명에서는 2가지의 버퍼 풀의 감지 방법을 제공한다. 하나는 버퍼가 완전 풀인 경우에만 버퍼 풀로 감지하는 방법이고, 다른 하나는 버퍼 풀의 정도가 일정값(예: 70~90%) 이상이면 버퍼 풀로 감지하는 방법이다.
이하, 첨부도면을 참조하여 본 발명의 실시예를 상세하게 설명한다.
도 1은 본 발명의 실시예에 따른 하드웨어 구성을 나타낸 것이다.
도면에서 보듯이, ATM 교환시스템의 호처리 및 운용을 위한 마스터 보드(master board : 110)와 프로세서간 통신을 전담하는 슬래이버 보드(slaver board : 120)로 이루어지며, 상기 두 보드는 PCI(Peripheral Component Interconnect) 버스 인퍼페이스(131)로 연결되어, 슬래이버 보드(120) 내의 DPRAM(123)과 인터럽트(113,124) 자원을 이용하여 메시지를 전달하는 구조를 가진다.
그리고 DPRAM(123)은 마스터 보드 CPU(111)와 슬래이버 보드 CPU(121)가 액세스(112,122) 할 수 있다.
도 2는 도 1과 같이 구성되는 두 보드간 메시지 통신에 있어서, 버퍼 풀 감지에 따른 프로세서의 부하를 줄이기 위해 본 발명에서 제안된 DPRAM의 구조도 이다.
도면에서 보듯이, DPRAM은 3개의 제어정보영역(210, 220, 230)과 2개의 메시지 원형 버퍼(211, 221) 영역으로 구성되어 있다. 제어정보영역-1(210)은 메시지 송신버퍼(240)의 제어정보를 저장하는 영역이고, 제어정보영역-2(220)는 메시지 수신버퍼(250)의 제어정보를 저장하는 영역이며, 제어정보영역-3(230)은 인터럽트와 관련된 제어정보를 저장하는 영역이다.
그리고 메시지 원형 송신버퍼(240)는 N개의 버퍼 엔트리들로 구성되어 있고, 메시지 원형 수신버퍼(250)는 M개의 버퍼 엔트리들로 구성되어 있으며, 원형으로(Circular) 동작한다. 메시지 원형 송/수신버퍼(240, 250)의 각각의 엔트리는 헤드정보 영역, 메시지 데이터 영역과 플래그 영역으로 구성된다.
헤드정보 영역은 메시지의 제어정보를 가지며, 데이터 영역은 전달할 메시지의 내용이며, 플래그 영역은 송신/수신 버퍼의 상태, 즉 use(사용중) 또는 empty(비어있음)로 표시한다. 따라서 버퍼의 플래그가 empty이면, 메시지를 복사한 후 use로, 버퍼의 플래그가 use이면, 그 버퍼에서 메시지를 읽어 온 후 empty로 변경해야 한다.
송신/수신 버퍼를 원형으로 구성하여 마스터와 슬래이버 보드에서 사용하기 위해 각각의 버퍼는 시작주소(Base Address), 끝주소(End Address), 읽기포인터(Read Pointer)와 쓰기포인터(Write Pointer)를 가진다.
TXBA, TXRP, TXWP, TXEA는 각각 송신버퍼(240)의 시작주소, 읽기포인터, 쓰기포인터, 끝주소이며, 제어정보영역-1(210)에 저장된다. 또한, RXBA, RXRP, RXWP, RXEA는 각각 수신버퍼(250)의 시작주소, 읽기포인터, 쓰기포인터, 끝주소이며, 제어정보영역-2(220)에 저장된다.
시작주소(RXBA, TXBA)와 끝주소(RXEA, TXEA)는 초기화 때 설정되어 변경되지 않으며, 원형으로 운영할 때 버퍼의 시작과 끝을 계산하기 위해 필요하다. 읽기포인터(RXRP, TXRP)는 마스터와 슬래이버 보드가 버퍼에서 메시지를 가져갈 때 사용하는 버퍼포인터이고, 쓰기포인터(RXWP, TXWP)는 버퍼에 메시지를 복사할 때 사용하는 버퍼포인터다.
TXRP와 RXWP는 슬래이버 보드의 CPU(121)가 사용/관리하는 버퍼포인터다. TXWP와 RXRP는 마스터 보드의 CPU(111)가 사용/관리하는 버퍼포인터다.
도면에서의 버퍼포인터를 예를 들면, 송신버퍼(240)의 경우에는 송신버퍼 엔트리 3에서 엔트리 (N-2)까지 슬래이버 보드(120)가 송신할 메시지가 저장되어 있으며, 송신버퍼 엔트리 (N-1), N, 1, 2는 버퍼가 비어 있는 상태이다. 그리고 수신버퍼(250)의 의 경우는 수신버퍼 엔트리 2에서 엔트리 (M-2)까지 마스터 보드(110)가 수신할 메시지가 저장되어 있으며, 수신버퍼 엔트리 (M-1), M, 1은 버퍼가 비어 있는 상태이다.
마스터 보드(110)에서 현재 메시지 송신포인터는 TXWP이며, 메시지 수신포인터는 RXRP다. 슬래이버 보드에서 현재 메시지 송신포인터는 TXRP이고, 메시지 수신포인터는 RXWP다.
도 3은 마스터 보드측의 동작 흐름을 슬래이버 보드로의 메시시 송신을 중심으로 나타낸 것이다.
먼저, 마스터 보드 동작이 시작되어 마스터 보드의 기능을 초기화 하고, 슬래이버 보드의 동작을 시작하도록 슬래이버 보드의 기능을 초기화 시킨다(S310).
초기화가 끝나면 마스터 보드(110)는 마스터 기본 기능으로 동작하는데(S320), 마스터 보드(110)는 슬래이버 보드(120)의 장애감지 및 상태관리기능(S321), 슬래이버 보드(120)로 메시지 송신기능(S322)과 슬래이버 보드(120)로부터의 메시지 수신기능(S323)의 3가지 마스터 기본기능을 가진다.
여기서는, 본 발명과 관련한 슬래이버 보드(120)로의 메시지 송신기능에 대해서만 설명한다.
마스터 보드(110)가 메시지를 송신하기 위해서는 먼저 송신 버퍼(240)의 풀 여부를 확인하여야 한다.
본 발명에서 버퍼 풀을 감지하는 방법에는 2가지가 있다.
2가지 방법 모두 제어 정보 영역-1(210)에 저장되어 있는 송신 버퍼의 제어정보를 이용한다. 방법1은 송신버퍼의 쓰기포인터(RXWP)가 가르키는 버퍼의 플래그가 empty인지 확인하는 것이고, 방법2는 송신버퍼의 읽기와 쓰기포인터(RXRP, RXWP)에서 빈 버퍼의 수를 계산하여 버퍼의 풀 정도를 계산하고, 설정되어 있는 기준 버퍼 풀 정도와 비교하여 버퍼 풀 여부를 판단하는 것이다.
방법1은 버퍼가 완전 풀일 경우만 감지되며, 방법2는 설정되어 있는 버퍼의 풀 정도(예를 들면 80% 또는 90% 버퍼 풀)에 따라 버퍼 풀 여부를 판단하게 된다. 방법1, 2의 선택과 방법 2에서의 버퍼 풀의 정도는 사용자가 설정할 수 있다.
따라서, 마스터 보드(110)는 메시지를 송신하기 전에 버퍼 풀 감지방법이 방법1, 2 중 어느 것으로 설정되어 있는지를 확인한다(S330).
확인 결과 방법1로 설정되어 있으면, 제어 정보 영역-1(210)에서 현재 송신버퍼 쓰기 포인터(RXWP)을 읽어, 해당 쓰기 포인터의 버퍼 플래그가 empty인지 확인한다(S340).
그 결과 empty이면 버퍼 풀이 아니므로 송신버퍼 쓰기포인터(TXWP)가 가르키는 송신버퍼에 메시지를 저장하고, 플래그를 empty에서 use로 변경한다(S390). 그리고, 송신버퍼 쓰기포인터(TXWP)의 값을 증가한 후 끝주소(TXEA)보다 크면 시작주소(TXSA)의 값으로 쓰기포인터(TXWP)의 값을 변경한다(S391).
그러나, 단계 S340에서 버퍼 플래그 확인결과 empty가 아니면, 즉 use이면 현재 버퍼 풀인 상태이므로 버퍼가 비기까지는 메시지를 송신할 수 없다. 따라서 마스터 보드는 슬래이버 보드로 송신버퍼 풀 인터럽트를 발생시키고(S370), 휴지상태로 기다리게 된다(S371).
한편, 단계 S370에서 발생된 송신버퍼 풀 인터럽트를 수신한 슬래이버 보드(120)는 송신버퍼(이는 마스터 보드측에서 본 것이고, 슬래이버 보드측에서보면 수신버퍼인 셈이다)의 메시지를 읽어 버퍼를 empty로 만든 후에 버퍼 풀 해지 인터럽트를 마스터 보드(110)로 발생시킨다.
이에, 마스터 보드(110)가 슬래이버 보드(120)로부터 버퍼 풀 해지 인터럽트를 수신하면(S380), 앞서 설명한 바와 같이 단계 S390 및 S391을 수행하여 메시지 송신을 재계한다.
한편, 단계 S300에서 버퍼 풀 감지방법을 확인한 결과, 방법2로 설정된 경우에는 제어 정보 영역-1(210)에서 송신버퍼의 읽기와 쓰기포인터(RXRP, RXWP)를 읽어 빈 버퍼의 수를 계산하여 버퍼의 풀 정도를 계산한다. 그 후 설정되어 있는 기준값과 버퍼의 풀 정도를 비교하여 버퍼 풀 여부를 판단한다(S360). 예를 들어 기준값이 90%이면 계산된 버퍼의 풀 정도가 90% 이상이면 버퍼 풀로 감지한다.
판단 결과, 버퍼 풀인 경우와 버퍼 풀이 아닌 경우에 있어서의 동작은 앞서 설명한 버퍼 풀 감지 방법이 방법1인 경우와 동일하다.
도 4은 슬래이버 보드측의 동작 흐름을 마스터 보드로의 메시시 송신을 중심으로 나타낸 것이다.
슬래이버 보드의 동작이 시작되어 슬래이버 보드(120)를 초기화하고 마스터 보드에게 초기화 완료를 알린다(S410).
초기화가 끝나면 슬레이버 보드(120)는 슬레이버 기본 기능으로 동작하는데(S320), 슬래이버 보드(120)는 마스터 보드로부터 제어정보 수신, 슬래이버 보드 상태관리 및 장애감지기능(S421), 마스터 보드로 메시지 수신 기능(S422), 마스터 보드로부터 메시지 송신기능(S423)의 슬래이버 기본 기능을 가진다.
여기서는, 본 발명과 관련한 마스터 보드(110)로의 메시지 송신기능에 대해서만 설명한다.
슬래이버 보드(110)는 수신된 메시지를 마스터 보드(120)로 전달하기 위해 DPRAM의 메시지 수신버퍼(이는 마스터 보드측에서 본 것이고, 슬래이버 보드측에서보면 송신버퍼인 셈이다)가 비어 있는지, 버퍼 풀인지 검사가 필요하다.
송신버퍼와 마찬가지로 수신버퍼도 버퍼 풀을 감지하는 방법은 2가지 방법이 있다. 방법1은 수신버퍼가 완전히 풀인 경우에만 버퍼 풀로 감지하고, 방법2는 수신버퍼의 버퍼 풀 정도를 계산하여 기준값 이상이면 버퍼 풀로 감지한다.
따라서, 슬레이브 보드(120)는 메시지를 송신하기 전에 버퍼 풀 감지방법이 방법1, 2 중 어느 것인지 확인한다(S430).
확인 결과 방법1인 경우에는 제어 정보 영역-2(220)의 현재 수신버퍼 쓰기포인터(RXWP)가 가르키는 버퍼의 플래그가 empty여부를 확인한다(S440). 그리고 단계 S430에서의 확인결과, 버퍼 풀 감지방법이 방법2인 경우에는 수신버퍼 쓰기포인터(RXWP)와 읽기포인터(RXRP)를 가지고 빈(empty) 버퍼의 수를 계산하여 버퍼의 풀 정도를 계산한 후(S450), 계산된 값과 기준값과 비교하여 버퍼 풀 여부를 판단한다(S460).
단계 S440에서 버퍼 플래그가 empty가 아닌 경우, 단계 S460에서 버퍼 풀의 정도를 계산한 값이 기준값 이상인 경우 각각 버퍼 풀로 감지한다.
단계 S440 또는 단계 S460에서 버퍼 풀이 감지되면 슬래이버 보드(120)는 마스터 보드(110)로 수신버퍼 풀 인터럽트를 발생시키고(S470), 휴지(idle, sleep)상태로 기다린다(S471).
마스터 보드(110)는 수신버퍼 풀 인터럽트를 수신한 후에 메시지를 수신하여 버퍼를 empty로 만든 후에, 버퍼 풀 해지 인터럽트를 슬래이버 보드(120)에게 발생시킨다.
단계 S440 또는 단계 S460에서 확인한 결과 버퍼 풀이 아니거나, 마스터 보드(110)로부터 버퍼 풀 해지 인터럽트가 발생하면(S480), 수신버퍼 쓰기포인터(RXWP)가 가르키는 수신버퍼에 메시지를 저장하고 플래그를 empty에서 use로 변경한다(S490). 그리고, 쓰기포인터(RXWP)의 값을 증가한 후 끝주소(RXEA)보다 크면 시작주소(RXSA)의 값으로 쓰기포인터(RXWP)의 값을 변경하여 메시지 송신을 종료한다(S491).
상술한 바와 같은 본 발명은 부가적인 하드웨어 회로나, 버퍼 풀 감지 프로세스 없이 DPRAM을 통해 두 보드간의 메지지 전달뿐만아니라 제어정보를 주고받음으로써 버퍼의 풀을 즉각적으로 감지하고, 버퍼 풀 및 해지를 인터럽트를 이용하여 상호 보고함으로써 프로세서의 부하를 줄일 수 있다. 또한 버퍼 풀일 경우에는 메시지 송신을 단절하고, 버퍼 풀 상태가 해지 되면 메시지 송신을 재계함으로써 유연한 메시지 통신을 제공한다. 따라서 본 발명은 DPRAM 인터페이스를 가지는 두 보드간의 메시지 버퍼의 관리 방법에 효과적으로 적용될 수 있다.
이상에서 본 발명에 대한 기술사상을 첨부도면과 함께 서술하였지만 이는 본 발명의 바람직한 실시예를 예시적으로 설명한 것이지 본 발명을 한정하는 것은 아니다. 또한, 이 기술분야의 통상의 지식을 가진 자라면 누구나 본 발명의 기술사상의 범주를 이탈하지 않는 범위 내에서 다양한 변형 및 모방이 가능함은 명백한 사실이다.

Claims (6)

  1. 이중포트메모리를 사용하여 두 보드간의 메시지 버퍼를 운용하는 방법에 있어서,
    메시지 버퍼로 사용되는 이중포트메모리를 송신버퍼의 제어정보를 저장하는 영역, 수신버퍼의 제어정보를 저장하는 영역, 인터럽트 제어 정보를 저장하는 영역, 원형 메시지 송신버퍼 및 원형 메시지 수신버퍼로 구성하고, 상기 원형 메시지 송/수신 버퍼의 각각의 버퍼 엔트리는 버퍼의 상태(use/empty)를 나타내는 플래그 영역을 포함시켜 구성하고,
    상기 이중포트메모리를 통하여 메시지 뿐만 아니라 원형 메시지 송/수신 버퍼의 시작주소, 끝주소, 읽기포인터 및 쓰기포인터 등의 제어정보를 주고 받아, 상기 쓰기포인터가 가리키는 버퍼의 상태가 엠티(empty)가 아니면 버퍼 풀 감지하고, 버퍼 풀을 처리함으로써 원형 메시지 송/수신 버퍼를 관리하는 것을 특징으로 하는 이중포트메모리를 사용한 메지시 버퍼의 풀 감지 및 관리 방법.
  2. 이중포트메모리를 사용하여 두 보드간의 메시지 버퍼를 운용하는 방법에 있어서,
    메시지 버퍼로 사용되는 이중포트메모리를 송신버퍼의 제어정보를 저장하는 영역, 수신버퍼의 제어정보를 저장하는 영역, 인터럽트 제어 정보를 저장하는 영역, 원형 메시지 송신버퍼 및 원형 메시지 수신버퍼로 구성하고, 상기 원형 메시지 송/수신 버퍼의 각각의 버퍼 엔트리는 버퍼의 상태(use/empty)를 나타내는 플래그 영역을 포함시켜 구성하고,
    상기 이중포트메모리를 통하여 메시지 뿐만 아니라 원형 메시지 송/수신 버퍼의 시작주소, 끝주소, 읽기포인터 및 쓰기포인터 등의 제어정보를 주고 받아, 상기 읽기포인터와 쓰기포인터에서 빈 버퍼의 수를 계산하여 버퍼 풀 정도를 계산하고, 계산된 버퍼 풀 정도가 설정된 기준값 이상이면 버퍼 풀로 감지하고, 버퍼 풀을 처리함으로써 원형 메시지 송/수신 버퍼를 관리하는 것을 특징으로 하는 이중포트메모리를 사용한 메시지 버퍼의 풀 감지 및 관리 방법.
  3. 삭제
  4. 삭제
  5. 제1항 또는 제2항에 있어서,
    버퍼 풀이 감지되면 송신을 중단한 후, 인터럽트를 이용하여 상대방 보드에게 버퍼 풀의 감지를 알리고 휴지상태로 전환하며,
    상대방 보드의 버퍼 풀 해제를 알리는 인터럽트에 의해 휴지상태에서 깨어나 메시지 전송을 재계하는 것을 특징으로 하는 이중포크메모리를 사용한 메시지 버퍼의 풀 감지 및 관리 방법.
  6. 이중포트메모리를 사용하여 두 보드간의 메시지 버퍼를 운용하는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체에 있어서,
    메시지 버퍼로 사용되는 이중포트메모리를 송신버퍼의 제어정보를 저장하는 영역, 수신버퍼의 제어정보를 저장하는 영역, 인터럽트 제어 정보를 저장하는 영역, 원형 메시지 송신버퍼 및 원형 메시지 수신버퍼로 구성하고,
    각각의 버퍼 엔트리는 버퍼의 상태(use/empty)를 나타내는 플래그 영역을 포함하고, 두 보드간 원형 메시지 송/수신 버퍼를 관리를 위한 제어정보로서 송/수신버퍼의 시작주소, 끝주소, 읽기포인터 및 쓰기포인터를 가지며,
    상기 이중포트메모리를 통하여 메시지 뿐만 아니라 제어정보를 주고 받아 이중포트메모리의 제어정보만으로 버퍼 풀을 감지하고 버퍼 풀을 처리함에 있어, 설정에 따라 현재 쓰기포인터가 가리키는 버퍼의 플래그를 검사하여 엠티(empty)가 아닌 경우 버퍼 풀로 감지하는 방법 또는 현재 읽기포인터와 쓰기포인터에서 빈 버퍼의 수를 계산하여, 버퍼 풀 정도를 계산하고, 계산된 버퍼 풀 정도가 설정된 기준값 이상이면 버퍼 풀로 감지하는 방법을 이용하여 상기 원형 메시지 송/수신버퍼의 버퍼 풀을 감지하고,
    버퍼 풀이 감지되면 송신을 중단한 후, 인터럽트를 이용하여 상대방 보드에게 버퍼 풀의 감지를 알리고 휴지상태로 전환하며, 상대방 보드의 버퍼 풀 해제를 알리는 인터럽트에 의해 휴지상태에서 깨어나 메시지 전송을 재계함으로써 두 보드간의 메시지 버퍼 운용을 수행하는 실행시킬 수 있는 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체.
KR10-1999-0056358A 1999-12-10 1999-12-10 이중포트메모리를 사용한 메시지 버퍼 풀 감지 및 관리 방법 KR100371136B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-1999-0056358A KR100371136B1 (ko) 1999-12-10 1999-12-10 이중포트메모리를 사용한 메시지 버퍼 풀 감지 및 관리 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-1999-0056358A KR100371136B1 (ko) 1999-12-10 1999-12-10 이중포트메모리를 사용한 메시지 버퍼 풀 감지 및 관리 방법

Publications (2)

Publication Number Publication Date
KR20010055219A KR20010055219A (ko) 2001-07-04
KR100371136B1 true KR100371136B1 (ko) 2003-02-07

Family

ID=19624722

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-1999-0056358A KR100371136B1 (ko) 1999-12-10 1999-12-10 이중포트메모리를 사용한 메시지 버퍼 풀 감지 및 관리 방법

Country Status (1)

Country Link
KR (1) KR100371136B1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100691419B1 (ko) * 2001-02-09 2007-03-09 삼성전자주식회사 무선 통신기기 및 그 통신방법 및 이를 적용한 무선통신시스템
KR100421168B1 (ko) * 2001-09-06 2004-03-04 삼성전자주식회사 프로세서들간 데이터 처리 시스템에서 송신 데이터 처리방법

Also Published As

Publication number Publication date
KR20010055219A (ko) 2001-07-04

Similar Documents

Publication Publication Date Title
US6470398B1 (en) Method and apparatus for supporting a select () system call and interprocess communication in a fault-tolerant, scalable distributed computer environment
US6415332B1 (en) Method for handling of asynchronous message packet in a multi-node threaded computing environment
US7376853B2 (en) Network apparatus, method for controlling the same, and program for the same
JPH10207723A (ja) 仮想装置アクセス・システム
JP2978539B2 (ja) データ転送制御装置
US6385659B1 (en) Handling of asynchronous message packet in a multi-node threaded computing environment
US6412018B1 (en) System for handling asynchronous message packet in a multi-node threaded computing environment
JP6785332B2 (ja) ブルートゥーススピーカーデータ処理の方法、装置及びブルートゥーススピーカー
KR100371136B1 (ko) 이중포트메모리를 사용한 메시지 버퍼 풀 감지 및 관리 방법
JP2697744B2 (ja) チャネル装置
JPH01183744A (ja) プロセッサストール監視装置
US5822421A (en) Communication method between processors in a decentralized multi-node exchange system
KR950022612A (ko) 이중화 장치의 이중화 보드상에서의 에러 감지 장치 및 처리 방법
JPH09212388A (ja) Cpuの動作監視方法
JPH0438543A (ja) 装置間通信方式
JP2758652B2 (ja) 無活動監視制御装置
JPH07306840A (ja) コンピュータシステム
KR100380328B1 (ko) 교환기 시스템의 보드 탈장시 다운 방지장치
KR100198802B1 (ko) 노드간 엑센트네트를 통한 메시지 전송 제어 방법
CN115918036A (zh) 总线系统上的数据传输
JP3206665B2 (ja) 計算機システム
JPH0149976B2 (ko)
JP2834062B2 (ja) 情報処理システム
JPH0256662A (ja) メモリ保護方式
CN116610203A (zh) 多核处理器休眠方法、装置、电子设备及介质

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee