KR100404907B1 - 개방형 지리정보시스템을 위한 메모리 관리 방법 및 장치 - Google Patents
개방형 지리정보시스템을 위한 메모리 관리 방법 및 장치 Download PDFInfo
- Publication number
- KR100404907B1 KR100404907B1 KR10-2001-0084435A KR20010084435A KR100404907B1 KR 100404907 B1 KR100404907 B1 KR 100404907B1 KR 20010084435 A KR20010084435 A KR 20010084435A KR 100404907 B1 KR100404907 B1 KR 100404907B1
- Authority
- KR
- South Korea
- Prior art keywords
- memory
- component
- buffer
- management
- layer
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Remote Sensing (AREA)
- Data Mining & Analysis (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
본 발명은 개방형 지리정보시스템(Geographical Information System : GIS)에 있어서, 클라이언트(client) 측의 메모리(memory)를 효과적으로 관리하는 메모리 관리 방법 및 장치에 관한 것이다. 종래의 개방형 지리정보시스템은 서로 다른 공간 데이터 서버간의 상호 운용성(interoperability)을 제공하고 있으나, 반드시 데이터제공자를 거쳐서 공간 데이터에 접근해야 하기때문에, 구조적으로 데이터 접근 속도가 저하된다. 본 발명은 클라이언트 측의 메모리를 효과적으로 관리하여 공간 데이터의 접근 속도를 개선하도록 한다.
Description
본 발명은 개방형 지리정보시스템(Geographical Information System : GIS)을 위한 메모리(memory) 관리 방법 및 장치에 관한 것으로, 특히, 개방형 지리정보시스템에 있어 클라이언트(client)/서버(server) 구조에서 클라이언트 측의 메모리를 관리하는 방법 및 장치에 관한 것이다.
종래의 지리정보시스템에서는 소프트웨어 벤더별로 고유의 인터페이스(interface)를 가지고 클라이언트와 서버간의 데이터 요청과 데이터 전송이 이루어졌다. 따라서 클라이언트 측에서 메모리 관리를 위한 충분한 정보 예로, 데이터 페이지의 크기, 공간 색인의 구조 및 내용, 객체 식별자 등을 활용할 수 있었다.
반면, 최근의 지리정보시스템은 개방형 구조를 기반으로 하고 있다. 예로, 클라이언트와 서버간에는 표준 인터페이스가 정의되어 사용됨으로 인해, 클라이언트는 서로 다른 여러 종류의 서버와의 상호 운용성(interoperability)을 획득할 수 있지만, 서버가 가지는 추가의 메타 정보를 사용하지 못함으로 인해 메모리를 관리하기가 어렵다.
본 발명은 상술한 문제점을 해결하기 위하여 안출한 것으로, 대개 지리정보시스템은 다중 레이어(layer)의 공간 데이터를 처리하므로, 다중 레이어를 고려한 메모리 관리 방법 및 장치를 제공하는 데 그 목적이 있다.
또한, 클라이언트는 표준 인터페이스를 통해 공간 데이터를 넘겨받기 때문에, 서버가 가지는 공간 색인에 대한 정보를 받을 수 없으므로, 공간 데이터 접근 속도의 개선을 위해 동적으로 공간 색인을 생성, 관리하는 방법 및 장치를 제공하는 데 다른 목적이 있다.
이와 같은 목적을 달성하기 위한 본 발명은, 개방형 지리정보시스템을 위한 메모리 관리 장치에 있어서, 디스크버퍼 관리 컴포넌트, 메모리버퍼 관리 컴포넌트, 그리고 공간색인 관리 컴포넌트를 각각 구비한 다수의 레이어; 데이터제공자 컴포넌트를 통해 접근된 하나의 레이어를 대표하는 레이어 컴포넌트를 구비한 레이어 컬렉션 컴포넌트; 및 하나 이상의 레이어에 포함된 공간 데이터에 대해서 통합적으로 전체 메모리버퍼를 관리하며, 각각의 메모리버퍼 관리 컴포넌트가 메모리버퍼를 요청하면 이에 대응하는 메모리를 할당하고 메모리가 부족한 경우에 특정 메모리버퍼 관리 컴포넌트의 메모리버퍼를 회수하는 전체메모리 관리 컴포넌트를 포함하는 것을 특징으로 한다.
또한, 화면 출력 컴포넌트, 질의 처리 컴포넌트, 데이터제공자 컴포넌트, 레이어 컬렉션 컴포넌트, 레이어 컴포넌트, 디스크버퍼 관리 컴포넌트, 메모리버퍼 관리 컴포넌트, 공간색인 관리 컴포넌트, 및 전체메모리 관리 컴포넌트를 포함하는 개방형 지리정보시스템을 위한 메모리 관리 장치에서 메모리를 관리하는 방법에 있어서, 상기 질의 처리 컴포넌트를 통해 다음에 출력할 레이어에 대한 데이터 접근을 요청하는 단계(S100); 해당 레이어에 대한 레이어 컴포넌트가 존재하는지 여부를 검사하는 단계(S200); 해당 레이어 컴포넌트가 존재하면, 레이어 컴포넌트에 데이터를 요청하는 단계(S300); 해당 레이어 컴포넌트가 존재하지 않는다면, 레이어 컴포넌트를 생성하고, 메모리 관리를 위해 메모리 버퍼를 초기화 하는 단계(S400); 상기 데이터제공자 컴포넌트에게 데이터를 요청하고, 상기 생성된 레이어 컴포넌트를 통해 공간 데이터의 메모리 관리를 의뢰하는 단계(S500); 및 요청된 공간 데이터를 화면에 출력하는 단계(S600)를 포함하는 것을 특징으로 한다.
도 1은 서로 다른 데이터서버에 접속하기 위해 여러 데이터제공자와 연결가능하고, 다중 레이어의 지리정보를 처리하기 위해 여러 레이어 컴포넌트를 가지는 개방형 지리정보시스템의 일 실시예를 나타낸 블록도,
도 2는 본 발명에 따른 개방형 지리정보시스템을 위한 메모리 관리 장치의 일 실시예를 나타낸 블록도,
도 3은 본 발명에 따른 지리정보시스템에서 특정 레이어의 공간 데이터를 화면에 출력하는 일 실시예를 단계별로 나타낸 순서도,
도 4는 도 3에 도시된 레이어 컴포넌트 생성 및 메모리버퍼 초기화 과정을 단계별로 나타낸 순서도,
도 5는 도 3에 도시된 데이터제공자 컴포넌트에 데이터 요청 및 레이어 컴포넌트를 통해 요청된 데이터 저장 과정을 단계별로 나타낸 순서도,
도 6은 도 3에 도시된 레이어 컴포넌트에 데이터를 요청하는 과정을 단계별로 나타낸 순서도.
<도면의 주요 부문에 대한 부호의 설명>
100 : 화면 출력 컴포넌트 200 : 질의 처리 컴포넌트
300 : 데이터제공자 컴포넌트 400 : 레이어 컬렉션 컴포넌트
410 : 레이어 컴포넌트 500 : 디스크버퍼 관리 컴포넌트
600 : 메모리버퍼 관리 컴포넌트
700 : 공간색인 관리 컴포넌트
800 : 전체메모리 관리 컴포넌트
이하, 첨부된 도면을 참조하여 본 발명을 상세히 설명한다.
도 1은 서로 다른 데이터서버에 접속하기 위해 여러 데이터제공자와 연결가능하고, 다중 레이어의 지리정보를 처리하기 위해 여러 레이어 컴포넌트를 가지는 개방형 지리정보시스템의 일 실시예를 나타낸 블록도로, 화면 출력 컴포넌트(100), 질의 처리 컴포넌트(200), 데이터제공자 컴포넌트(300), 그리고 레이어 컬렉션 컴포넌트(400)로 구성된다.
동 도면에 있어서, 사용자가 관심을 가지는 공간 데이터에 대해 질의 처리컴포넌트(200)에 질의가 요청되면, 질의 처리 컴포넌트(200)는 해당 공간 데이터를 가지는 데이터서버에 접속할 수 있는 데이터제공자 컴포넌트(300)를 통해 공간 데이터에 접근할 수 있다. 데이터제공자 컴포넌트(300)는 표준 인터페이스를 통해 구현되었으므로, 서로 다른 공간 데이터 서버에 대해 동일한 방법으로 접근할 수 있는 특징이 있다. 질의 처리 컴포넌트(200)는 레이어 컬렉션 컴포넌트(400)와 서로 연결되어 있으며, 레이어 컬렉션 컴포넌트(400)는 하나 이상의 레이어 컴포넌트(410)를 관리할 수 있다. 질의 처리 컴포넌트(200)는 데이터제공자 컴포넌트(300)로부터 읽어온 공간 데이터를 레이어 별로 레이어 컴포넌트를 생성하여 관리할 수 있다. 따라서 동일한 공간 데이터를 재요청 할 경우에, 질의 처리 컴포넌트(200)는 데이터제공자 컴포넌트(300)에 데이터를 요청하는 대신에 해당 레이어 컴포넌트로부터 데이터를 요청할 수 있다.
도 2는 본 발명에 따른 개방형 지리정보시스템을 위한 메모리 관리 장치의 일 실시예를 나타낸 블록도로, 다수의 레이어 컴포넌트(410)를 포함하고 있는 레이어 컬렉션 컴포넌트(400), 각 레이어마다 구비된 디스크버퍼 관리 컴포넌트(500), 메모리버퍼 관리 컴포넌트(600), 그리고 공간색인 관리 컴포넌트(700), 레이어 수에 상관없이 하나만 존재하는 전체메모리 관리 컴포넌트(800)로 구성된다.
동 도면에 있어서, 레이어 컬렉션 컴포넌트(400) 내의 각 레이어 컴포넌트(410)는 데이터제공자 컴포넌트(300)를 통해 접근된 하나의 레이어를 대표한다. 레이어 컴포넌트(410) 이외에 각 레이어는 디스크버퍼 관리 컴포넌트(500), 메모리버퍼 관리 컴포넌트(600), 그리고 공간색인 관리 컴포넌트(700)를 각각 하나씩 가진다. 전체메모리 관리 컴포넌트(800)는 전체 메모리버퍼를 관리하는 것으로, 레이어 수에 상관없이 하나만이 존재하며, 하나 이상의 레이어에 포함된 공간 데이터에 대해서 통합적으로 메모리를 관리하기 위해서 사용된다. 전체메모리 관리 컴포넌트(800)는 각각의 메모리버퍼 관리 컴포넌트(600)가 메모리버퍼를 요청하면 메모리를 할당하고 메모리가 부족한 경우에 특정 메모리버퍼 관리 컴포넌트(600)의 메모리버퍼를 회수한다.
만약 전체메모리 관리 컴포넌트(800)를 사용하여 통합된 메모리관리를 하지 않을 경우에, 즉, 각각의 메모리버퍼 관리 컴포넌트(600)가 해당 레이어의 공간 데이터를 위한 메모리 관리를 따로 하는 경우에는 메모리버퍼의 크기를 설정하기가 매우 어려운 문제점을 갖는다. 예로, 가변 길이의 메모리 버퍼를 사용한다면, 메모리 버퍼의 전체 크기를 관리할 수 없기 때문에, 메모리버퍼를 할당 받지 못하는 메모리버퍼 관리 컴포넌트(600)는 모든 공간 데이터를 디스크버퍼 관리 컴포넌트(500)가 관리하는 디스크 버퍼에 저장해야 하며, 한번에 하나의 공간 객체를 디스크로부터 읽어와야 하므로 성능이 매우 저하된다. 반면, 고정 길이의 메모리버퍼를 사용한다면, 생성 가능한 메모리버퍼 관리 컴포넌트(600)의 수가 고정되는 문제가 발생하며, 또한 레이어 컴포넌트(410)가 최대로 생성되지 전까지는 메모리의 낭비가 발생하게 된다. 따라서 각각의 레이어 컴포넌트(410)에 대해서 메모리 관리를 담당하는 메모리버퍼 관리 컴포넌트(600)에 할당되는 메모리버퍼를 전체적으로 관리하기 위한 전체메모리 관리 컴포넌트(800)가 필요하다.
개방형 지리정보시스템 컴포넌트 소프트웨어에서 공간 데이터의 화면 출력과정을 순서대로 설명하면 다음과 같다.
첫 번째, 사용자의 요청에 따라 출력될 화면에 변경이 발생한다.
두 번째, 개방형 지리정보시스템 컴포넌트의 화면 출력 컴포넌트(100)는 출력 우선순위에 따라 다음으로 출력되어야 할 레이어를 선택한다.
세 번째, 선택된 레이어에 대한 레이어 컴포넌트(410)가 있는 경우 즉, 해당 레이어가 메모리 버퍼에 저장된 경우에는 레이어 컴포넌트(410)에 공간 데이터를 요청하고, 아닌 경우에는 해당 데이터제공자 컴포넌트(300)에 공간 데이터를 요청한다. 데이터제공자 컴포넌트(300)로부터 요청된 공간데이터에 대해서는 레이어 컴포넌트(410)를 생성하고, 메모리 버퍼에 공간 데이터를 저장한다.
네 번째, 레이어 컴포넌트 또는 데이터제공자를 통해 접근된 공간데이터를 화면에 출력한다.
다섯 번째, 출력할 레이어가 남은 경우에 두 번째부터 네 번째까지의 과정을 반복한다.
도 3은 본 발명에 따른 지리정보시스템에서 특정 레이어의 공간 데이터를 화면에 출력하는 일 실시예를 단계별로 나타낸 순서도로, 상술한 화면 출력 과정의 두 번째부터 네 번째까지의 과정을 나타낸 도면이다.
먼저, 질의 처리 컴포넌트(200)를 통해 다음에 출력할 레이어에 대한 데이터 접근을 요청한다(단계 S100).
해당 레이어에 대한 레이어 컴포넌트(410)가 존재하는지 여부를 검사한다(단계 S200).
해당 레이어 컴포넌트(410)가 존재하면, 이미 해당 레이어의 공간 데이터가 메모리에 관리되고 있음을 의미하므로, 레이어 컴포넌트(410)에 데이터를 요청한다(단계 S300).
반면, 해당 레이어 컴포넌트(410)가 존재하지 않는다면, 레이어 컴포넌트(410)를 생성하고, 메모리 관리를 위해 메모리 버퍼를 초기화 한다(단계 S400).
데이터제공자 컴포넌트(300)에게 데이터를 요청하고, 레이어 컴포넌트(410)를 통해 공간 데이터의 메모리 관리를 의뢰한다(단계 S500).
요청된 공간 데이터를 화면에 출력한다(단계 S600).
도 4는 도 3에 도시된 레이어 컴포넌트 생성 및 메모리버퍼 초기화 과정(단계 S400)을 단계별로 나타낸 순서도이다.
먼저, 메모리 관리를 위해 레이어 컴포넌트(410)를 생성한다(단계 S410).
메모리버퍼 관리 컴포넌트(600)를 생성한다(단계 S420).
레이어 컴포넌트(410)와 메모리버퍼 관리 컴포넌트(600)를 서로 연결시키고 메모리버퍼 관리 컴포넌트(600)를 전체메모리 관리 컴포넌트(800)에 등록하여 메모리버퍼를 할당 받을 수 있는 준비를 한다(단계 S430).
공간색인 관리 컴포넌트(700)를 생성한다.(단계 S440). 상기 공간 색인은 고정 그리드 파일을 사용하며, 초기에 하나의 그리드 셀을 가진 색인으로 초기화한다. 본 발명에서 공간 색인은 동적으로 생성되어야 하므로, 생성 비용이 상대적으로 적은 고정 그리드 파일을 사용한다.
도 5는 도 3에 도시된 데이터제공자 컴포넌트에 데이터 요청 및 레이어 컴포넌트를 통해 요청된 데이터 저장 과정(단계 S500)을 단계별로 나타낸 순서도이다.
먼저, 데이터제공자 컴포넌트(300)에 요청된 공간 데이터는 질의처리 컴포넌트(200)에 한 번에 하나의 공간 객체를 넘겨준다. 즉, 질의처리 컴포넌트(200)는 데이터제공자 컴포넌트(300)에 다음 공간 데이터가 있는지 검사(단계 S501)한 후에, 더 이상 읽어올 데이터가 없으면 리턴한다.
읽어온 공간 데이터는 메모리 관리를 위해 레이어 컴포넌트(410)를 통해 메모리버퍼 관리 컴포넌트(600)로 전달한다(단계 S502).
메모리버퍼 관리 컴포넌트(600)는 메모리 버퍼가 충분한지 여부를 검사한다(단계 S503).
메모리 버퍼가 충분하면, 읽어온 공간 데이터를 메모리버퍼에 저장한다(단계 S504).
반면, 메모리 버퍼가 충분하지 않으면, 디스크버퍼 관리 컴포넌트(500)가 이미 생성되어 있는지 여부를 검사한다(단계 S505). 디스크버퍼가 생성되어 있다는 것은 한 번 이상 메모리버퍼의 내용을 디스크버퍼에 저장했다는 것을 의미하며, 하나의 그리드 셀을 가지는 것으로 초기화 되었던 공간 색인을 M×N개의 그리드 셀을 가지도록 재구성하였다는 것을 의미한다. 디스크버퍼는 여러 개의 디스크페이지로 구성되며, 하나의 디스크페이지에는 모두 동일한 그리드 셀에 포함되는 공간 데이터가 저장된다.
디스크버퍼 관리 컴포넌트(500)가 생성되어 있다면, 메모리버퍼의 공간 데이터를 디스크버퍼로 복사한다(단계 S506). 이때, 메모리버퍼의 공간 데이터는 공간 색인에서 자신이 포함된 그리드 셀에 따라 디스크버퍼에서 저장될 위치가 결정된다.
반면, 디스크버퍼 관리 컴포넌트(500)가 없는 경우라면, 공간 색인을 재구성한다(단계 S507).
디스크버퍼 관리 컴포넌트(500)를 생성하고 단계 S506을 수행한다(단계 S508).
도 6은 도 3에 도시된 레이어 컴포넌트에 데이터를 요청하는 과정(단계 S300)을 단계별로 나타낸 순서도이다.
요청된 공간 데이터가 저장된 메모리버퍼를 알기 위해서는, 우선 공간색인 관리 컴포넌트(700)에 요청된 공간 데이터와 관련된 그리드 셀 번호 리스트를 요청한다. 이에, 공간색인 관리 컴포넌트(700)는 관련된 모든 그리드 셀 번호를 리스트로 넘긴다(단계 S301).
메모리버퍼 관리 컴포넌트(600)는 리스트에 그리드 셀 번호가 남았는지 여부를 검사(단계 S302)한 후에, 더 이상 그리드 셀이 없는 경우에는 리턴한다.
반면, 그리드 셀 번호가 남은 경우에는 리스트에서 하나의 그리드 셀 번호를 제거한다(단계 S303).
리스트에서 제거한 그리드 셀에 포함된 공간 데이터가 메모리버퍼에 존재하는지 여부를 검사한다(단계 S304).
공간 데이터가 메모리버퍼에 존재하는 경우 해당 공간 데이터를 리턴한다(단계 S305).
반면, 데이터가 메모리버퍼에 존재하지 않는 경우 메모리관리 컴포넌트가 관리하는 메모리가 충분한지를 검사한다(단계 S306).
메모리가 충분하지 않을 경우 전체메모리 관리 컴포넌트(800)에 일부 레이어의 메모리버퍼를 해제하도록 요청한다(단계 S308).
반면, 메모리가 충분할 경우 디스크버퍼에 있는 공간 데이터를 메모리버퍼로 복사하고 상기 단계 S305를 수행한다(단계 S307).
개방형 지리정보시스템은 다음과 같은 구조적인 단점을 갖는다. 즉, 표준 인터페이스를 가지는 데이터제공자를 통해서만 공간 데이터에 접근할 수 있기 때문에, 개방형 지리정보시스템의 클라이언트가 특정 공간 데이터 서버에 접근하기 위해서는 내부적으로 두 번의 연결과정과 두 번의 데이터 접근 과정이 필요하므로, 데이터 접근 속도가 느려지게 된다. 본 발명은, 개방형 지리정보시스템의 구조적인 단점을 줄임으로써, 데이터 접근 속도를 개선하였다.
이기종 공간 데이터 서버간의 상호 운용성을 통해 각 기관별로 구축되어 있는 공간/비공간 데이터를 쉽게 공유할 수 있는 장점을 가진 개방형 지리정보시스템은 그 동안 성능 측면에서의 문제점으로 인해 많이 활용되지 못하고 있었다. 본 발명을 통해 그 성능이 개선된 개방형 지리정보시스템은 향후 많은 분야에서 폭 넓게 사용될 것으로 기대된다.
Claims (9)
- 개방형 지리정보시스템을 위한 메모리 관리 장치에 있어서,디스크버퍼 관리 컴포넌트, 메모리버퍼 관리 컴포넌트, 그리고 공간색인 관리 컴포넌트를 각각 구비한 다수의 레이어;데이터제공자 컴포넌트를 통해 접근된 하나의 레이어를 대표하는 레이어 컴포넌트를 구비한 레이어 컬렉션 컴포넌트; 및하나 이상의 레이어에 포함된 공간 데이터에 대해서 통합적으로 전체 메모리버퍼를 관리하며, 각각의 메모리버퍼 관리 컴포넌트가 메모리버퍼를 요청하면 이에 대응하는 메모리를 할당하고 메모리가 부족한 경우에 특정 메모리버퍼 관리 컴포넌트의 메모리버퍼를 회수하는 전체메모리 관리 컴포넌트를 포함하는 개방형 지리정보시스템을 위한 메모리 관리 장치.
- 화면 출력 컴포넌트, 질의 처리 컴포넌트, 데이터제공자 컴포넌트, 레이어 컬렉션 컴포넌트, 레이어 컴포넌트, 디스크버퍼 관리 컴포넌트, 메모리버퍼 관리 컴포넌트, 공간색인 관리 컴포넌트, 및 전체메모리 관리 컴포넌트를 포함하는 개방형 지리정보시스템을 위한 메모리 관리 장치에서 메모리를 관리하는 방법에 있어서,상기 질의 처리 컴포넌트를 통해 다음에 출력할 레이어에 대한 데이터 접근을 요청하는 단계(S100);해당 레이어에 대한 레이어 컴포넌트가 존재하는지 여부를 검사하는 단계(S200);해당 레이어 컴포넌트가 존재하면, 레이어 컴포넌트에 데이터를 요청하는 단계(S300);해당 레이어 컴포넌트가 존재하지 않는다면, 레이어 컴포넌트를 생성하고, 메모리 관리를 위해 메모리 버퍼를 초기화 하는 단계(S400);상기 데이터제공자 컴포넌트에게 데이터를 요청하고, 상기 생성된 레이어 컴포넌트를 통해 공간 데이터의 메모리 관리를 의뢰하는 단계(S500); 및요청된 공간 데이터를 화면에 출력하는 단계(S600)를 포함하는 개방형 지리정보시스템을 위한 메모리 관리 방법.
- 제 2 항에 있어서,상기 단계(S400)는, 메모리 관리를 위해 레이어 컴포넌트를 생성하는 단계(S410);메모리버퍼 관리 컴포넌트를 생성하는 단계(S420);상기 생성된 레이어 컴포넌트와 메모리버퍼 관리 컴포넌트를 서로 연결시키고 상기 메모리버퍼 관리 컴포넌트를 상기 전체메모리 관리 컴포넌트에 등록하여 메모리버퍼를 할당 받을 수 있는 준비를 하는 단계(S430); 및공간색인 관리 컴포넌트를 생성하는 단계(S440)를 포함하는 개방형 지리정보시스템을 위한 메모리 관리 방법.
- 제 3 항에 있어서, 상기 공간색인은 고정 그리드 파일을 사용하며, 초기에 하나의 그리드 셀을 가진 색인으로 초기화되는 것을 특징으로 하는 개방형 지리정보시스템을 위한 메모리 관리 방법.
- 제 2 항에 있어서,상기 단계 (S500)는, 상기 질의처리 컴포넌트가 상기 데이터제공자 컴포넌트에 다음 공간 데이터가 있는지 여부를 검사하는 단계(S501);읽어온 공간 데이터는 메모리 관리를 위해 상기 레이어 컴포넌트를 통해 상기 메모리버퍼 관리 컴포넌트로 전달하는 단계(S502);상기 메모리버퍼 관리 컴포넌트가 메모리 버퍼가 충분한지 여부를 검사하는 단계(S503);메모리 버퍼가 충분하면, 읽어온 공간 데이터를 메모리버퍼에 저장하는 단계(S504);메모리 버퍼가 충분하지 않으면, 디스크버퍼 관리 컴포넌트가 생성되어 있는지 여부를 검사하는 단계(S505);상기 디스크버퍼 관리 컴포넌트가 생성된 경우, 메모리버퍼의 공간 데이터를 상기 생성된 디스크버퍼로 복사하는 단계(S506);상기 디스크버퍼 관리 컴포넌트가 없는 경우, 공간 색인을 재구성하는 단계(S507); 및상기 디스크버퍼 관리 컴포넌트를 생성하고 상기 단계 S506로 리턴하는 단계(S508)를 포함하는 개방형 지리정보시스템을 위한 메모리 관리 방법.
- 제 5 항에 있어서, 상기 디스크버퍼는 여러 개의 디스크페이지로 구성되는 것을 특징으로 하는 개방형 지리정보시스템을 위한 메모리 관리 방법.
- 제 6 항에 있어서, 상기 각 디스크페이지에는 모두 동일한 그리드 셀에 포함되는 공간 데이터가 저장되는 것을 특징으로 하는 개방형 지리정보시스템을 위한 메모리 관리 방법.
- 제 5 항에 있어서, 상기 메모리버퍼의 공간 데이터는 상기 공간 색인에서 자신이 포함된 그리드 셀에 따라 디스크버퍼에서 저장될 위치가 결정되는 것을 특징으로 하는 개방형 지리정보시스템을 위한 메모리 관리 방법.
- 제 2 항에 있어서,상기 단계(S300)는, 상기 공간색인 관리 컴포넌트에 요청된 공간 데이터와 관련된 그리드 셀 번호 리스트를 요청하여 상기 공간색인 관리 컴포넌트가 관련된 모든 그리드 셀 번호를 리스트로 넘기는 단계(S301);상기 메모리버퍼 관리 컴포넌트가 리스트에 그리드 셀 번호가 남았는지 여부를 검사하는 단계(S302);상기 그리드 셀 번호가 남은 경우 리스트에서 하나의 그리드 셀 번호를 제거하는 단계(S303);상기 리스트에서 제거한 그리드 셀에 포함된 공간 데이터가 메모리버퍼에 존재하는지 여부를 검사하는 단계(S304);상기 공간 데이터가 메모리버퍼에 존재하는 경우 해당 공간 데이터를 리턴하는 단계(S305);상기 공간 데이터가 메모리버퍼에 존재하지 않는 경우 상기 메모리관리 컴포넌트가 관리하는 메모리가 충분한지를 검사하는 단계(S306);상기 메모리가 충분하지 않을 경우 상기 전체메모리 관리 컴포넌트에 일부 레이어의 메모리버퍼를 해제하도록 요청하는 단계(S308); 및상기 메모리가 충분할 경우 디스크버퍼에 있는 공간 데이터를 메모리버퍼로 복사하고 상기 단계 S305로 리턴하는 단계(S307)를 포함하는 개방형 지리정보시스템을 위한 메모리 관리 방법.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2001-0084435A KR100404907B1 (ko) | 2001-12-24 | 2001-12-24 | 개방형 지리정보시스템을 위한 메모리 관리 방법 및 장치 |
US10/142,055 US6912639B2 (en) | 2001-12-24 | 2002-05-10 | Memory management method and apparatus for use in an open geographic information system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2001-0084435A KR100404907B1 (ko) | 2001-12-24 | 2001-12-24 | 개방형 지리정보시스템을 위한 메모리 관리 방법 및 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20030054294A KR20030054294A (ko) | 2003-07-02 |
KR100404907B1 true KR100404907B1 (ko) | 2003-11-07 |
Family
ID=19717544
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR10-2001-0084435A KR100404907B1 (ko) | 2001-12-24 | 2001-12-24 | 개방형 지리정보시스템을 위한 메모리 관리 방법 및 장치 |
Country Status (2)
Country | Link |
---|---|
US (1) | US6912639B2 (ko) |
KR (1) | KR100404907B1 (ko) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100739141B1 (ko) | 2005-06-24 | 2007-07-13 | 엘지전자 주식회사 | 데이터 업데이트 방법 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09212397A (ja) | 1996-01-31 | 1997-08-15 | Toshiba Corp | ファイル読み出し方法 |
US5864837A (en) | 1996-06-12 | 1999-01-26 | Unisys Corporation | Methods and apparatus for efficient caching in a distributed environment |
US6353820B1 (en) * | 1999-09-29 | 2002-03-05 | Bull Hn Information Systems Inc. | Method and system for using dynamically generated code to perform index record retrieval in certain circumstances in a relational database manager |
-
2001
- 2001-12-24 KR KR10-2001-0084435A patent/KR100404907B1/ko not_active IP Right Cessation
-
2002
- 2002-05-10 US US10/142,055 patent/US6912639B2/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
KR20030054294A (ko) | 2003-07-02 |
US6912639B2 (en) | 2005-06-28 |
US20030120857A1 (en) | 2003-06-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6192398B1 (en) | Remote/shared browser cache | |
CN110311973B (zh) | 一种面向多租户的影像云服务系统及方法 | |
EP0629960B1 (en) | Extendible file system | |
KR100330576B1 (ko) | 컴퓨터네트워크로부터월드와이드웹상의페이지위치을파악하고문서위치를파악하는시스템및방법 | |
EP1309917B1 (en) | Cache system and method for generating uncached objects from cached and stored object components | |
US5829053A (en) | Block storage memory management system and method utilizing independent partition managers and device drivers | |
US7035931B1 (en) | Volume location service for a distributed file system | |
US7707337B2 (en) | Object-based storage device with low process load and control method thereof | |
US7783695B1 (en) | Method and system for distributed rendering | |
US7650609B2 (en) | Multi-environment document management system access | |
US7062527B1 (en) | Management and scheduling of a distributed rendering method and system | |
CN1531303A (zh) | 协议无关的客户端高速缓存系统和方法 | |
US20070011274A1 (en) | Data transfer in a multi-environment document management system access | |
JP2002514331A (ja) | 物理的情報ファイルの情報を共有するための仮想ファイルを生成するコンピュータ実行法 | |
US5860079A (en) | Arrangement and method for efficient calculation of memory addresses in a block storage memory system | |
Kurc et al. | Querying very large multi-dimensional datasets in ADR | |
CN110914814A (zh) | 分布式存储环境的认知文件和对象管理 | |
KR100654462B1 (ko) | 캐쉬 메모리를 메모리 블록으로 나누어 파일의 데이터를저장하는 캐쉬 방법 및 캐쉬 시스템 | |
US7092983B1 (en) | Method and system for secure remote distributed rendering | |
Tierney et al. | A data intensive distributed computing architecture for “Grid” applications | |
US6519598B1 (en) | Active memory and memory control method, and heterogeneous data integration use system using the memory and method | |
Tu et al. | A systematic approach to reduction of user-perceived response time for GIS web services | |
KR100404907B1 (ko) | 개방형 지리정보시스템을 위한 메모리 관리 방법 및 장치 | |
US20050005028A1 (en) | Automated image markup system and method | |
JP2000048039A (ja) | 地図情報のダウンロード方法とこれを実施した地図情報のダウンロードシステム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20121011 Year of fee payment: 10 |
|
FPAY | Annual fee payment |
Payment date: 20130923 Year of fee payment: 11 |
|
FPAY | Annual fee payment |
Payment date: 20140926 Year of fee payment: 12 |
|
LAPS | Lapse due to unpaid annual fee |