KR100428859B1 - Method for Improving the Speed of File Creation/Deletion in File System of Mobile Switching Center - Google Patents

Method for Improving the Speed of File Creation/Deletion in File System of Mobile Switching Center Download PDF

Info

Publication number
KR100428859B1
KR100428859B1 KR10-2001-0022858A KR20010022858A KR100428859B1 KR 100428859 B1 KR100428859 B1 KR 100428859B1 KR 20010022858 A KR20010022858 A KR 20010022858A KR 100428859 B1 KR100428859 B1 KR 100428859B1
Authority
KR
South Korea
Prior art keywords
list
size
file
free space
start address
Prior art date
Application number
KR10-2001-0022858A
Other languages
Korean (ko)
Other versions
KR20020083330A (en
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-2001-0022858A priority Critical patent/KR100428859B1/en
Publication of KR20020083330A publication Critical patent/KR20020083330A/en
Application granted granted Critical
Publication of KR100428859B1 publication Critical patent/KR100428859B1/en

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

1. 청구범위에 기재된 발명이 속한 기술분야1. TECHNICAL FIELD OF THE INVENTION

본 발명은 이동 통신 교환기의 파일 시스템에서 파일 생성/제거 속도 향상 방법 및 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것임.The present invention relates to a method for improving file creation / removal speed in a file system of a mobile communication exchange and a computer-readable recording medium having recorded thereon a program for realizing the method.

2. 발명이 해결하고자 하는 기술적 과제2. Technical problem to be solved by the invention

본 발명은 단일 디렉토리 구조를 사용하는 이동 통신 교환기의 파일 시스템에서 연결 리스트 구조를 이용하여 파일 생성/제거 속도를 높이기 위한 파일 생성/제거 속도 향상 방법 및 상기 방법들을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하고자 함.According to the present invention, a file creation / removal speed improving method for speeding up file creation / removal using a linked list structure in a file system of a mobile communication switch using a single directory structure and a program for realizing the above methods are read by a computer. To provide a record medium.

3. 발명의 해결 방법의 요지3. Summary of the Solution of the Invention

본 발명은 파일의 시작 주소(start)가 포함되는 리스트를 검색하는 단계, 프리 스페이스의 시작 주소(list의 start)를 최초 주소로부터 상기 파일 크기(size)만큼 이동시키고, 상기 프리 스페이스의 크기(list의 size)를 상기 크기(size)만큼 감소시키는 단계, 상기 단계의 프리 스페이스의 크기(list의 size)가 영(零)인 경우 상기 리스트를 삭제하는 단계 및 전체 프리 스페이스의 크기(total_size)에서 상기 파일 크기(size)를 빼는 단계를 포함함.The present invention provides a method for searching a list including a start address of a file, moving a start address of a free space (start of list) from the first address by the file size, and listing the size of the free space. Reducing the size of the list by the size, deleting the list when the size of the free space of the step is zero, and total_size of the free space. Includes subtracting file size.

4. 발명의 중요한 용도4. Important uses of the invention

본 발명은 이동 통신 교환기의 파일 시스템에 이용됨.The present invention is used in a file system of a mobile switching center.

Description

이동 통신 교환기의 파일 시스템에서 파일 생성/제거 속도 향상 방법{Method for Improving the Speed of File Creation/Deletion in File System of Mobile Switching Center}Method for Improving the Speed of File Creation / Deletion in File System of Mobile Switching Center}

본 발명은 이동 통신 교환기에 관한 것으로, 보다 상세하게는 이동 통신 교환기의 파일 시스템에서 파일의 생성/제거 속도를 개선시키는 방법 및 상기 방법들을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것이다.The present invention relates to a mobile communication exchange, and more particularly, to a method of improving the speed of file creation / removal in a file system of a mobile communication exchange and a computer-readable recording medium having recorded thereon a program for realizing the above methods. will be.

도 1 은 이동 통신 교환기 파일 시스템에서 사용하고 있는 하드 디스크의 구조도이다.도 1에 도시된 바와 같이, CROS(Concurrent Realtime Operating System)의 파일 시스템(103)은 이동 통신 교환기에서 동작하는 응용 프로그램(AP)(101)으로부터 해당 프로그램이 동작하는데 필요한 파일의 생성이나 제거 요구에 따라 하드 디스크(Disk)(105)의 프리 스페이스(free space)에 생성될 파일을 할당하거나, 기 할당되어 있는 파일을 검색하여 해당 파일을 제거하게 된다.1 is a structural diagram of a hard disk used in a mobile switching center file system. As shown in FIG. 1, a file system 103 of a CROS (Concurrent Realtime Operating System) is an application program (AP) operating in a mobile switching center. (101) allocates a file to be created in free space of the hard disk (105) or searches for a pre-allocated file according to a request for generating or removing a file required for the program to operate. This file will be removed.

여기서, 종래의 이동 통신 교환기 파일 시스템(103)과 같이 단일 디렉토리(single directory) 구조에서 하드 디스크(105)의 데이터 구조를 살펴보면, 부트 블럭(boot block)(111), 수퍼 블럭(super block)(113), 비트맵(bitmap)(115) 및 디렉토리(directory)(117)를 포함하며, 실질적으로 데이터(data)는 데이터 영역(119)에서 저장/삭제된다.도면에 도시된 "file_start_addr"는 하드 디스크(105)에서 실질적인 데이터 저장 영역(119)의 시작 주소를 가리키며, "disk_data_size"는 데이터 저장 영역(119)의 크기를 나타낸다.Here, looking at the data structure of the hard disk 105 in a single directory structure like the conventional mobile communication switch file system 103, the boot block 111, the super block (super block) 113, a bitmap 115, and a directory 117, substantially data being stored / deleted in the data area 119. The " file_start_addr " The disk 105 indicates the start address of the substantial data storage area 119, and " disk_data_size " represents the size of the data storage area 119. As shown in FIG.

그리고, 부트 블럭(boot block)(111)은 부트 코드가 저장된 영역이고, 수퍼 블럭(super block)(113)은 운용 체제가 사용하는 파일 시스템(103)의 정보가 저장된 영역이며, 디렉토리(directory)(117)는 데이터 영역(119)에 저장된 파일의 속성/위치/생성 시간 등의 파일 정보가 저장된 영역이다. 그리고, 비트맵(bitmap)(115)은 하드 디스크(105)를 블럭 단위로 나누었을 때 각 블럭들의 사용 여부를 나타내기 위한 영역으로, 비트맵 영역에서 1비트가 나타내는 1블럭은 하드 디스크의 512바이트(byte)를 의미하며, '0'은 대응 하드 디스크 영역이 비어 있음을 나타내고, '1'은 대응 하드 디스크 영역이 현재 사용중임을 나타낸다.The boot block 111 is an area in which a boot code is stored, and the super block 113 is an area in which information of a file system 103 used by an operating system is stored. Reference numeral 117 denotes an area in which file information such as an attribute / location / generation time of a file stored in the data area 119 is stored. The bitmap 115 is an area for indicating whether each block is used when the hard disk 105 is divided into blocks. One block represented by one bit in the bitmap area is 512 of the hard disk. '0' indicates that the corresponding hard disk area is empty, and '1' indicates that the corresponding hard disk area is currently in use.

한편, 종래의 이동 통신 교환기에서는 응용 프로그램(101)이 파일 생성을 요청하면, 파일 시스템(103)은 비트맵(115) 영역을 읽어 하드 디스크(105)에 요청 파일을 생성할 영역을 검색하고, 만약 요청한 파일을 생성할 영역이 존재하는 경우에는 비트맵(115)에서 하드 디스크(105)의 파일 생성 영역에 대응하는 비트를 '1'로 마킹하며, 디렉토리(117)를 갱신하게 된다.On the other hand, in the conventional mobile communication exchange, when the application 101 requests the file generation, the file system 103 reads the area of the bitmap 115 and searches the area for generating the request file on the hard disk 105, If there is an area to generate the requested file, the bitmap 115 marks the bit corresponding to the file generation area of the hard disk 105 as '1' and updates the directory 117.

그러나, 종래의 이동 통신 교환기의 파일 시스템에 의하면, 하드 디스크(105)의 프리 스페이스를 찾기 위해 항상 비트맵(115) 영역을 처음부터 검색하게 되므로, 하드 디스크(105)의 프리 스페이스 검색 효율이 떨어지는 문제점이 있으며, 생성해야 할 파일의 크기가 큰 경우에는 검색 시간이 길어지는 문제점이 있었다.However, according to the file system of the conventional mobile communication exchange, since the area of the bitmap 115 is always searched from the beginning to find the free space of the hard disk 105, the free space search efficiency of the hard disk 105 is inferior. There is a problem, and when the size of the file to be created is large, the search time is long.

나아가, 하드 디스크(105)에 이미 생성되어 있는 파일의 수가 증가하면, 하드 디스크(105)의 프리 스페이스를 찾기 위해 검색해야 하는 비트맵의 양이 증가하여 상기의 문제점이 더욱 심해지게 되며, 이러한 경우에 작은 크기의 파일을 생성하는 시간이 큰 파일을 생성하기 위해 소요되는 시간보다 많아질 수도 있다.Furthermore, if the number of files already created on the hard disk 105 increases, the amount of bitmaps to be searched to find the free space of the hard disk 105 increases, which causes the above problem to become more severe. The time required to create a small file can be longer than the time required to create a large file.

아울러, 상기의 문제점은 이동 통신 교환기에서 파일 시스템(103)의 점유율이 높아지며, 따라서 프로세서의 처리 효율이 떨어지게 되는 문제점을 함께 유발시킨다.In addition, the above problem causes the share of the file system 103 to increase in the mobile communication exchange, thereby causing a problem that the processing efficiency of the processor decreases.

본 발명은 상기와 같은 문제점을 해결하기 위하여 제안된 것으로, 단일 디렉토리 구조를 사용하는 이동 통신 교환기의 파일 시스템에서 연결 리스트 구조를 이용하여 파일 생성/제거 속도를 높이기 위한 파일 생성/제거 속도 향상 방법 및 상기 방법들을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는데 그 목적이 있다.The present invention has been proposed to solve the above problems, and a file creation / removal speed improving method for speeding up file creation / removal using a linked list structure in a file system of a mobile communication exchange using a single directory structure; It is an object of the present invention to provide a computer-readable recording medium having recorded thereon a program for realizing the above methods.

본 발명이 속한 기술 분야에서 통상의 지식을 가진 자는 본 명세서의 도면, 발명의 상세한 설명 및 특허청구범위로부터 본 발명의 다른 목적 및 장점을 쉽게 인식할 수 있다.Those skilled in the art to which the present invention pertains can easily recognize other objects and advantages of the present invention from the drawings, the detailed description of the invention, and the claims.

도 1 은 이동 통신 교환기 파일 시스템에서 사용하고 있는 하드 디스크의 구조도.1 is a structural diagram of a hard disk used in a mobile switching center file system.

도 2 는 본 발명의 일실시예에 따라 하드 디스크의 초기화 과정을 나타낸 흐름도.2 is a flowchart illustrating a process of initializing a hard disk according to an embodiment of the present invention.

도 3a 및 도 3b는 상기 도 2의 수행 결과에 따른 리스트 구조 및 하드 디스크의 데이터 저장 상태를 나타내는 구조도.3A and 3B are structural diagrams showing a list structure and a data storage state of a hard disk according to the result of performing FIG.

도 4a 및 도 4b는 본 발명의 일실시예에 따라 파일 생성 요구시 리스트 생성 과정을 나타낸 흐름도 및 하드 디스크의 데이터 저장 상태를 나타내는 구조도.4A and 4B are flowcharts illustrating a list generation process when a file is generated and a data storage state of a hard disk according to an embodiment of the present invention.

도 5a 내지 도 5d는 본 발명의 일실시예에 따라 파일 삭제 요구시 리스트 변경 과정을 나타낸 흐름도 및 하드 디스크의 데이터 저장 상태를 나타내는 구조도.5A to 5D are flowcharts illustrating a list change process when a file deletion request is made, and a structure diagram showing a data storage state of a hard disk according to an embodiment of the present invention.

* 도면의 주요 부분에 대한 부호의 설명* Explanation of symbols for the main parts of the drawings

101 : 응용 프로그램 103 : CROS 파일 시스템101: Application 103: CROS File System

105 : 하드 디스크105: hard disk

상기 목적을 달성하기 위한 본 발명은, 디렉토리를 갖는 이동 교환기의 단일 파일 시스템에서 하드 디스크의 초기화 방법에 있어서, 상기 디렉토리의 파일 정보로부터 파일의 시작 주소(start)와 파일 크기(size)를 추출하는 제 1 단계; 상기 파일의 시작 주소(start)가 포함되는 리스트를 검색하는 제 2 단계; 상기 리스트가 표현하는 하드 디스크의 프리 스페이스 시작 주소(list의 start)와 상기 시작 주소(start)가 일치하는 경우, 상기 프리 스페이스의 시작 주소(list의 start)를 최초 주소로부터 상기 파일 크기(size)만큼 이동시키고, 상기 프리 스페이스의 크기(list의 size)를 상기 크기(size)만큼 감소시키는 제 3 단계; 상기 제 3 단계의 프리 스페이스의 크기(list의 size)가 영(零)인 경우, 상기 리스트를 삭제하는 제 4 단계; 상기 리스트가 표현하는 하드 디스크의 프리 스페이스 시작 주소(list의 start)와 상기 시작 주소(start)가 일치하지 않는 경우, 상기 시작 주소(start)와 크기(size)의 합을 시작 주소(new_start)로 할당하고, 상기 프리 스페이스의 끝 주소(list의 start + list의 size)에서 상기 시작 주소(new_start)를 뺀 값을 크기(new_size)로 할당하는 제 5 단계; 상기 프리 스페이스의 크기(list의 size)를 상기 시작 주소(start)에서 상기 프리 스페이스의 시작 주소(list의 start)를 뺀 값으로 할당하는 제 6 단계; 상기 시작 주소(new_start)와 상기 크기(new_size)의 프리 스페이스를 표현하는 리스트를 추가하는 제 7 단계; 및 전체 프리 스페이스의 크기(total_size)에서 상기 파일 크기(size)를 빼는 제 8 단계를 포함하되, 상기 리스트(list)는 해당 프리 스페이스의 시작 주소(start) 및 크기(size) 및 다음 리스트를 나타내는 포인터(next)로 구성된 연결 리스트 구조를 가지며, 최초 리스트의 시작 리스트를 나타내는 포인터(head), 상기 리스트 중에서 마지막 리스트를 나타내는 포인터(tail) 및 전체 프리 스페이스의 크기(total_size)로 구성된 리스트 정보(ListInform) 구조를 가지며, 상기 제 2 단계는, 상기 최초 리스트(head)가 정의되어 있지 않은 경우에는, 상기 하드 디스크의 데이터 저장 영역의 시작 주소(file_start_addr)를 시작 주소(start)로 하고, 상기 하드 디스크의 데이터 저장 영역의 전체 크기(disk_data_size)를 크기(size)로 하는 새로운 리스트(list)를 생성하는 제 9 단계; 상기 리스트(list)를 상기 최초 리스트(head) 및 상기 마지막 리스트(tail)에 할당하는 제 10 단계; 및 상기 최초 리스트(head)가 정의되어 있는 경우에는, 상기 최초 리스트(head)를 리스트(list)에 할당하는 제 11 단계를 포함하여 이루어진 것을 특징으로 한다.In order to achieve the above object, the present invention provides a method of initializing a hard disk in a single file system of a mobile switch having a directory, the method including extracting a start address and a file size of a file from file information of the directory. First step; A second step of searching for a list including a start address of the file; When the free space start address (list start) of the hard disk represented by the list and the start address (start) coincide with each other, the start address of the free space (start start of the list) is set from the first address to the file size. A third step of shifting the free space and reducing the size of the free space by the size; A fourth step of deleting the list if the size of the free space of the third step is zero; When the free space start address (list of list) of the hard disk represented by the list does not match the start address (start), the sum of the start address (start) and size (size) is used as a start address (new_start). A fifth step of allocating a value obtained by subtracting the start address (new_start) from the end address of the free space (start + list size of list) as a size (new_size); A sixth step of allocating the size of the free space (list size) to a value obtained by subtracting the start address of the free space from the start address (start); Adding a list representing a free space of the start address (new_start) and the size (new_size); And an eighth step of subtracting the file size from total_size of the total free space, wherein the list indicates a start address and size of the corresponding free space and a next list. List information (ListInform) having a linked list structure consisting of a pointer (next), a pointer representing a start list of an initial list, a pointer representing a last list of the list, and a total free space size (total_size). In the second step, when the initial list is not defined, the start address file_start_addr of the data storage area of the hard disk is set as a start address, and the hard disk A ninth step of creating a new list in which the total size (disk_data_size) of the data storage area of the size is set to size; A tenth step of allocating the list to the first list and the last list; And an eleventh step of allocating the first list to a list when the first list is defined.

그리고, 본 발명은 초기화된 하드 디스크에 파일을 생성하는 방법에 있어서, 생성하고자 하는 파일의 크기(size)를 수신하는 제 1 단계; 상기 파일의 크기(size)가 상기 전체 프리 스페이스의 크기(total_size)보다 큰 경우에는 파일 생성 실패 메시지를 리턴하는 제 2 단계; 상기 파일의 크기(size)가 상기 전체 프리 스페이스의 크기(total_size)보다 작은 경우에는 상기 파일의 크기(size)보다 큰 리스트를 상기 연결 리스트 구조에서 검색하는 제 3 단계; 상기 검색된 리스트가 표현하는 프리 스페이스의 시작 주소(list의 start)를 상기 파일의 시작 주소(start)로 할당하는 제 4 단계; 상기 프리 스페이스의 시작 주소(list의 start)를 최초 시작 주소로부터 상기 파일의 크기(size)만큼 이동한 값으로 할당하고, 상기 프리 스페이스의 크기(list의 size)를 최초 크기에서 상기 파일의 크기(size)만큼 뺀 값으로 할당하는 제 5 단계; 상기 프리 스페이스의 크기(list의 size)가 영(零)이면 상기 리스트를 삭제하는 제 6 단계; 및 전체 프리 스페이스의 크기(total_size)에서 상기 파일 크기(size)를 빼는 제 7 단계를 포함하여 이루어진 것을 특징으로 한다.또한, 본 발명은 상기 연결 리스트를 기초로 파일을 제거하는 방법에 있어서, 삭제하고자 하는 파일의 시작 주소(start) 및 파일의 크기(size)를 수신하는 제 1 단계; 상기 파일의 끝 주소(start + size)의 이후에 시작 주소를 갖는 프리 스페이스의 리스트(list)를 상기 연결 리스트 구조에서 검색하는 제 2 단계; 상기 프리 스페이스의 직전 프리 스페이스의 리스트(pre)를 확인하는 제 3 단계; 상기 파일의 끝 주소(start + size)가 리스트(list)로 표현되는 프리 스페이스의 시작 주소(list의 start)와 일치하는 경우에는, 상기 프리 스페이스의 시작 주소(list의 start)를 상기 파일의 시작 주소(start)로 할당하고, 상기 프리 스페이스의 크기(list의 size)를 상기 파일의 크기(size)로 할당하는 제 4 단계; 상기 프리 스페이스의 시작 주소(list의 start)가 리스트(pre)로 표현되는 프리 스페이스의 끝 주소와 일치하는 경우에는, 리스트(pre)로 표현되는 프리 스페이스의 크기(pre의 size)를 원래의 크기와 상기 프리 스페이스의 크기(list의 size)의 합으로 할당하고, 상기 프리 스페이스의 리스트(list)를 삭제하는 제 5 단계; 및 상기 파일의 시작 주소(start)와 상기 리스트(pre)로 표현되는 프리 스페이스의 끝 주소와 일치하지 않고 상기 파일의 끝 주소(start + size)와 상기 리스트(list)로 표현되는 프리 스페이스의 시작 주소(list의 start)와 일치하지 않는 경우에는, 상기 파일의 시작 주소(start)를 시작 주소로 하고, 상기 파일의 크기(size)를 크기로 하는 새로운 리스트를 상기 연결 리스트 구조에서 상기 리스트(pre)와 리스트(list) 사이에 삽입하는 제 6 단계를 포함하여 이루어진 것을 특징으로 한다.한편, 본 발명은 디렉토리를 갖는 이동 교환기의 단일 파일 시스템에서 하드 디스크의 초기화 를 위해, 프로세서를 구비한 이동 교환기에, 상기 디렉토리의 파일 정보로부터 파일의 시작 주소(start)와 파일 크기(size)를 추출하는 제 1 기능; 상기 파일의 시작 주소(start)가 포함되는 리스트를 검색하는 제 2 기능; 상기 리스트가 표현하는 하드 디스크의 프리 스페이스 시작 주소(list의 start)와 상기 시작 주소(start)가 일치하는 경우, 상기 프리 스페이스의 시작 주소(list의 start)를 최초 주소로부터 상기 파일 크기(size)만큼 이동시키고, 상기 프리 스페이스의 크기(list의 size)를 상기 크기(size)만큼 감소시키는 제 3 기능; 상기 제 3 기능의 프리 스페이스의 크기(list의 size)가 영(零)인 경우, 상기 리스트를 삭제하는 제 4 기능; 상기 리스트가 표현하는 하드 디스크의 프리 스페이스 시작 주소(list의 start)와 상기 시작 주소(start)가 일치하지 않는 경우, 상기 시작 주소(start)와 크기(size)의 합을 시작 주소(new_start)로 할당하고, 상기 프리 스페이스의 끝 주소(list의 start + list의 size)에서 상기 시작 주소(new_start)를 뺀 값을 크기(new_size)로 할당하는 제 5 기능; 상기 프리 스페이스의 크기(list의 size)를 상기 시작 주소(start)에서 상기 프리 스페이스의 시작 주소(list의 start)를 뺀 값으로 할당하는 제 6 기능; 상기 시작 주소(new_start)와 상기 크기(new_size)의 프리 스페이스를 표현하는 리스트를 추가하는 제 7 기능; 및 전체 프리 스페이스의 크기(total_size)에서 상기 파일 크기(size)를 빼는 제 8 기능을 실현시키되, 상기 리스트(list)는 해당 프리 스페이스의 시작 주소(start) 및 크기(size) 및 다음 리스트를 나타내는 포인터(next)로 구성된 연결 리스트 구조를 가지며, 최초 리스트의 시작 리스트를 나타내는 포인터(head), 상기 리스트 중에서 마지막 리스트를 나타내는 포인터(tail) 및 전체 프리 스페이스의 크기(total_size)로 구성된 리스트 정보(ListInform) 구조를 가지며, 상기 제 2 기능은, 상기 최초 리스트(head)가 정의되어 있지 않은 경우에는, 상기 하드 디스크의 데이터 저장 영역의 시작 주소(file_start_addr)를 시작 주소(start)로 하고, 상기 하드 디스크의 데이터 저장 영역의 전체 크기(disk_data_size)를 크기(size)로 하는 새로운 리스트(list)를 생성하는 제 9 기능; 상기 리스트(list)를 상기 최초 리스트(head) 및 상기 마지막 리스트(tail)에 할당하는 제 10 기능; 및 상기 최초 리스트(head)가 정의되어 있는 경우에는, 상기 최초 리스트(head)를 리스트(list)에 할당하는 제 11 기능을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.그리고, 본 발명은 초기화된 하드 디스크에 파일을 생성하기 위해, 프로세서를 구비한 이동 교환기에, 생성하고자 하는 파일의 크기(size)를 수신하는 제 1 기능; 상기 파일의 크기(size)가 상기 전체 프리 스페이스의 크기(total_size)보다 큰 경우에는 파일 생성 실패 메시지를 리턴하는 제 2 기능; 상기 파일의 크기(size)가 상기 전체 프리 스페이스의 크기(total_size)보다 작은 경우에는 상기 파일의 크기(size)보다 큰 리스트를 상기 연결 리스트 구조에서 검색하는 제 3 기능; 상기 검색된 리스트가 표현하는 프리 스페이스의 시작 주소(list의 start)를 상기 파일의 시작 주소(start)로 할당하는 제 4 기능; 상기 프리 스페이스의 시작 주소(list의 start)를 최초 시작 주소로부터 상기 파일의 크기(size)만큼 이동한 값으로 할당하고, 상기 프리 스페이스의 크기(list의 size)를 최초 크기에서 상기 파일의 크기(size)만큼 뺀 값으로 할당하는 제 5 기능; 상기 프리 스페이스의 크기(list의 size)가 영(零)이면 상기 리스트를 삭제하는 제 6 기능; 및 전체 프리 스페이스의 크기(total_size)에서 상기 파일 크기(size)를 빼는 제 7 기능을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.또한, 본 발명은 상기 연결 리스트를 기초로 파일을 제거하기 위해, 프로세서를 구비한 이동 교환기에, 삭제하고자 하는 파일의 시작 주소(start) 및 파일의 크기(size)를 수신하는 제 1 기능; 상기 파일의 끝 주소(start + size)의 이후에 시작 주소를 갖는 프리 스페이스의 리스트(list)를 상기 연결 리스트 구조에서 검색하는 제 2 기능; 상기 프리 스페이스의 직전 프리 스페이스의 리스트(pre)를 확인하는 제 3 기능; 상기 파일의 끝 주소(start + size)가 리스트(list)로 표현되는 프리 스페이스의 시작 주소(list의 start)와 일치하는 경우에는, 상기 프리 스페이스의 시작 주소(list의 start)를 상기 파일의 시작 주소(start)로 할당하고, 상기 프리 스페이스의 크기(list의 size)를 상기 파일의 크기(size)로 할당하는 제 4 기능; 상기 프리 스페이스의 시작 주소(list의 start)가 리스트(pre)로 표현되는 프리 스페이스의 끝 주소와 일치하는 경우에는, 리스트(pre)로 표현되는 프리 스페이스의 크기(pre의 size)를 원래의 크기와 상기 프리 스페이스의 크기(list의 size)의 합으로 할당하고, 상기 프리 스페이스의 리스트(list)를 삭제하는 제 5 기능; 및 상기 파일의 시작 주소(start)와 상기 리스트(pre)로 표현되는 프리 스페이스의 끝 주소와 일치하지 않고 상기 파일의 끝 주소(start + size)와 상기 리스트(list)로 표현되는 프리 스페이스의 시작 주소(list의 start)와 일치하지 않는 경우에는, 상기 파일의 시작 주소(start)를 시작 주소로 하고, 상기 파일의 크기(size)를 크기로 하는 새로운 리스트를 상기 연결 리스트 구조에서 상기 리스트(pre)와 리스트(list) 사이에 삽입하는 제 6 기능을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.In addition, the present invention provides a method for creating a file on an initialized hard disk, comprising: a first step of receiving a size of a file to be created; A second step of returning a file creation failure message if the size of the file is larger than the total free size; Searching for a list in the linked list structure that is larger than the size of the file when the size of the file is smaller than the total free size; A fourth step of allocating a start address of a free space represented by the searched list (start of list) as a start address of the file; The start address of the free space (list start) is allocated to a value shifted from the initial start address by the size of the file, and the size of the free space (list size) is used as the size of the file at the initial size ( a fifth step of allocating the subtracted by size); A sixth step of deleting the list if the size of the free space is zero; And a seventh step of subtracting the file size from the total free space size. The present invention also provides a method for removing a file based on the linked list. A first step of receiving a start address of a file to be started and a size of the file; Retrieving a list of free spaces having a start address after the end address (start + size) of the file from the linked list structure; A third step of checking a list (pre) immediately before the free space; When the end address (start + size) of the file coincides with the start address of the free space represented by the list (start), the start address of the free space (start of the list) is determined by the start of the file. A fourth step of allocating an address to start and allocating a size of the free space as a size of the file; If the start address of the free space (list start) coincides with the end address of the free space represented by the list pre, the size of the free space represented by the list pre is used as the original size. A fifth step of allocating the sum of the free space and the size of the free space and deleting the list of the free space; And the start of the free space represented by the end address (start + size) of the file and the list without matching the start address of the file and the end address of the free space represented by the list pre. If the address does not match the start of the list, a new list having the start address of the file as the start address and the size of the file as the size is selected in the linked list structure. And a sixth step of inserting between the list and the list. Meanwhile, the present invention provides a mobile switch with a processor for initialization of a hard disk in a single file system of a mobile switch with a directory. A first function of extracting a start address and a file size of a file from file information of the directory; A second function of retrieving a list including a start address of the file; When the free space start address (list start) of the hard disk represented by the list and the start address (start) coincide with each other, the start address of the free space (start start of the list) is set from the first address to the file size. A third function of shifting by the size and reducing the size of the free space by the size; A fourth function of deleting the list if the size of the free space of the third function is zero; When the free space start address (list of list) of the hard disk represented by the list does not match the start address (start), the sum of the start address (start) and size (size) is used as a start address (new_start). A fifth function of allocating a value obtained by subtracting the start address (new_start) from the end address of the free space (start + list size of the list) as a size (new_size); A sixth function of allocating a size of the free space (list size) to a value obtained by subtracting the start address of the free space from the start address (start); A seventh function of adding a list representing a free space of the start address new_start and the size new_size; And an eighth function of subtracting the file size from the total free space size, wherein the list indicates the start address and size of the corresponding free space and the next list. List information (ListInform) having a linked list structure consisting of a pointer (next), a pointer representing a start list of an initial list, a pointer representing a last list of the list, and a total free space size (total_size). The second function has a start address (file_start_addr) of the data storage area of the hard disk as a start address when the first list (head) is not defined, and the hard disk. A ninth function of creating a new list in which the total size (disk_data_size) of the data storage area of the size is set to size; A tenth function of allocating said list to said first list and said last list; And a computer readable recording medium having recorded thereon a program for realizing the eleventh function of allocating the first head to a list when the first head is defined. The present invention provides a mobile switching device having a processor for generating a file on an initialized hard disk, comprising: a first function of receiving a size of a file to be created; A second function of returning a file creation failure message when the size of the file is larger than the total_size of the total free space; A third function of searching the linked list structure for a list larger than the size of the file when the size of the file is smaller than the size of the total free space; A fourth function of allocating a start address of a free space represented by the searched list (start of list) as a start address of the file; The start address of the free space (list start) is allocated to a value shifted from the initial start address by the size of the file, and the size of the free space (list size) is used as the size of the file at the initial size ( a fifth function of allocating by size minus size); A sixth function of deleting the list if the size of the free space is zero; And a computer-readable recording medium having recorded thereon a program for realizing a seventh function of subtracting the file size from the total free space size. To remove a file, the mobile switch having a processor, comprising: a first function of receiving a start address of a file to be deleted and a size of the file; A second function of retrieving a list of free spaces having a start address after the end address (start + size) of the file from the linked list structure; A third function of checking a list of prespaces immediately before said freespace; When the end address (start + size) of the file coincides with the start address of the free space represented by the list (start), the start address of the free space (start of the list) is determined by the start of the file. A fourth function of allocating at an address and allocating a size of the free space as a size of the file; If the start address of the free space (list start) coincides with the end address of the free space represented by the list pre, the size of the free space represented by the list pre is used as the original size. And a fifth function of allocating a sum of a size of the free space and a list of the free space; And the start of the free space represented by the end address (start + size) of the file and the list without matching the start address of the file and the end address of the free space represented by the list pre. If the address does not match the start of the list, a new list having the start address of the file as the start address and the size of the file as the size is selected in the linked list structure. And a computer-readable recording medium having recorded thereon a program for realizing a sixth function to be inserted between a list and a list.

본 발명에 따르면, 비트맵 대신 연결 리스트(linked list) 구조를 이용하여 하드 디스크에 파일을 생성/제거할 때 연결 리스트에서 프리 스페이스를 검색함으로써 하드 디스크의 프리 스페이스 검색 시간을 단축하여 파일 생성/제거 속도를 향상시키게 된다.According to the present invention, when creating / removing a file on the hard disk using a linked list structure instead of a bitmap, the free space search time is shortened by retrieving the free space from the linked list, thereby creating / removing a file. It will speed up.

상술한 목적, 특징 및 장점들은 첨부된 도면과 관련한 다음의 상세한 설명을 통하여 보다 분명해 질 것이다. 우선 각 도면의 구성요소들에 참조 번호를 부가함에 있어서, 동일한 구성 요소들에 한해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 번호를 가지도록 하고 있음에 유의하여야 한다. 또한, 본 발명을 설명함에 있어서, 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명한다.The above objects, features and advantages will become more apparent from the following detailed description taken in conjunction with the accompanying drawings. First of all, in adding reference numerals to the components of each drawing, it should be noted that the same components have the same number as much as possible even if displayed on different drawings. In addition, in describing the present invention, when it is determined that the detailed description of the related known technology may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 2 는 본 발명의 일실시예에 따라 하드 디스크의 초기화 과정을 나타낸 흐름도이다.본 발명에 따라 파일 시스템(103)에서 하드 디스크(105)를 초기화하는 과정은, 하드 디스크(105)의 데이터 저장 영역(119)을 프리 스페이스로 간주하는 것에서 출발하여, 디렉토리(117)에 저장되어 있는 파일 정보를 기초로 프리 스페이스에서 제외한 후, 나머지 영역에 대한 정보를 연결 리스트로 생성/관리하는 것이다. 연결 리스트에 의한 데이터 저장 영역(119)의 프리 스페이스 관리는 추후에 응용 프로그램(101)이 파일 생성을 요구하는 경우에, 비트맵(115) 대신 연결 리스트를 검색함으로써 이루어지며, 프리 스페이스의 검색 시간을 줄일 수 있게 된다.2 is a flowchart illustrating a process of initializing a hard disk according to an embodiment of the present invention. The process of initializing the hard disk 105 in the file system 103 according to the present invention includes storing data of the hard disk 105. Starting from considering the area 119 as a free space, the area 119 is excluded from the free space based on the file information stored in the directory 117, and information about the remaining areas is generated / managed as a linked list. The free space management of the data storage area 119 by the linked list is performed by retrieving the linked list instead of the bitmap 115 when the application 101 requests the file generation later, and the search time of the free space. Can be reduced.

도 2에 도시된 바와 같이, 하드 디스크(105)의 초기화 과정은, 수퍼 블럭(113)의 데이터를 읽어 파일 시스템(103)에 대한 정보를 획득하는 것으로 시작하여(S201), 디렉토리(117) 영역에 저장되어 있는 파일 정보를 순차적으로 읽어(S203) 연결 리스트를 생성하게 된다(S205). 이 연결 리스트 생성 프로세스(S205)는 디렉토리(117) 영역에 저장되어 있는 모든 파일 정보를 기초로 수행된다(S207). 그리고, 연결 리스트 생성 프로세스(S205)는 디렉토리(117)에 저장되어 있는 파일 정보 중 파일이 하드 디스크(105)에 저장되어 있는 시작 주소(file_start) 및 파일의 크기(file_size)를 각각 start 및 size의 입력 파라메터로 하여 수행된다.As shown in FIG. 2, the initialization process of the hard disk 105 begins by reading data of the super block 113 to obtain information about the file system 103 (S201), and then the area of the directory 117. The file information stored in the program is sequentially read (S203), and a connection list is generated (S205). This linked list generation process (S205) is performed based on all file information stored in the directory 117 area (S207). Then, the connection list generation process (S205) determines the start address (file_start) and the file size (file_size) of the file information stored in the directory 117 in which the file is stored in the hard disk 105, respectively, of start and size. This is done with input parameters.

상기 연결 리스트 생성 프로세스(S205)를 살펴보면, 우선 Listinform의 head가 널(Null)인지를 판단한다(S211).여기서, Listinform은 도 3a에 도시된 바와 같이 프리 스페이스를 표현하는 리스트의 총 사이즈(total_size)(301), 프리 스페이스 리스트의 처음 리스트 주소를 나타내는 포인터(head)(303) 및 마지막 리스트 주소를 나타내는 포인터(tail)(305)로 구성된 데이터 구조이다. 즉, 데이터 저장 영역(119)의 프리 스페이스를 표시하는 데이터 구조가 도 3a의 Free List이고, 데이터 저장 영역(119)의 프리 스페이스의 총 사이즈, Free List의 시작 주소 및 마지막 주소에 대한 정보는 ListInform에 저장된다.Looking at the linked list generation process (S205), first, it is determined whether the head of the Listinform is null (S211). Here, the Listinform is the total size (total_size) of the list representing the free space as shown in FIG. 3A. 301, a pointer head indicating the first list address of the free space list, and a tail 305 indicating the last list address. That is, the data structure indicating the free space of the data storage area 119 is the Free List of FIG. 3A, and the information about the total size of the free space of the data storage area 119, the start address and the last address of the Free List is ListInform. Are stored in.

판단 결과(S211), Listinform의 head가 널(Null)인 경우는, Free List가 아직 구성되지 않은 상태로서, 최초 파일에 대한 하드 디스크 초기화 과정임을 의미한다. 이 경우 데이터 저장 영역(119) 전체를 list라는 로컬 변수로 표현되는 리스트를 생성한다(S215). 그리고, 현재 상태는 Free List에 list라는 하나의 리스트만이 생성되어 있으므로, 프리 스페이스 리스트의 처음 리스트 주소를 나타내는 포인터(head)(303) 및 마지막 리스트 주소를 나타내는 포인터(tail)(305)를 모두 list로 할당한다(S217).As a result of the determination (S211), when the head of the Listinform is null, it means that the Free List is not yet configured, and it is a hard disk initialization process for the first file. In this case, a list in which the entire data storage area 119 is represented by a local variable called list is generated (S215). In the current state, since only one list called list is generated in the Free List, both the pointer 303 indicating the first list address of the free space list and the tail 305 indicating the last list address are both displayed. Assign to list (S217).

다음으로, list의 start 필드에는 데이터 저장 영역(119)의 시작 주소( file_start_addr)를 할당하고, list의 size 필드에는 데이터 저장 영역(119)의 전체 크기(disk_data_size)를 할당한다(S219).Next, the start address (file_start_addr) of the data storage area 119 is assigned to the start field of the list, and the total size (disk_data_size) of the data storage area 119 is assigned to the size field of the list (S219).

여기서, 도 3a를 참조하여 Free List의 데이터 포맷을 설명하면, 프리 스페이스의 시작 주소를 나타내는 start 필드(311a~311n), 당해 프리 스페이스의 크기를 나타내는 size 필드 및 다음 프리 스페이스를 나타내는 리스트의 주소를 나타내는 next 필드로 구성된다. 따라서, start 필드(311a~311n)는 데이터 저장 영역(119)의 프리 스페이스를 표시하는 포인터이고, next 필드는 Free List의 다음 리스트를 표시하는 포인터이다.Referring to FIG. 3A, the data format of the free list will be described. The start fields 311a to 311n indicating the start address of the free space, the size field indicating the size of the free space, and the address of the list indicating the next free space are described. It consists of the next field that represents it. Therefore, the start fields 311a to 311n are pointers for indicating the free space of the data storage area 119, and the next field is the pointer for displaying the next list of the Free List.

상기 판단 결과(S211), Listinform의 head가 널(Null)이 아닌 경우에는, 이미 ListInform이 생성된 상태이므로, Listinform의 head로 표현되는 리스트를 list라는 로컬 변수에 할당한다(S213).As a result of the determination (S211), if the head of the Listinform is not null, since the ListInform is already generated, the list represented by the head of the Listinform is assigned to a local variable called list (S213).

다음으로, 입력 파라메터인 start를 기초로 해당 파일의 사이즈만큼 프리 스페이스를 삭제할 Free List를 검사한다(S221,S223).Next, based on the input parameter start, the free list to delete the free space by the size of the file is examined (S221, S223).

해당 list를 찾은 다음에는 입력 파라메터인 start가 해당 list의 start와 일치하는지를 판단한다(S225). 즉, 해당 프리 스페이스의 시작 주소와 해당 파일의 시작 주소가 일치하는지를 판단한다.After finding the list, it is determined whether the input parameter start matches the start of the list (S225). That is, it is determined whether the start address of the corresponding free space and the start address of the file are identical.

판단 결과(S225), 해당 프리 스페이스의 시작 주소와 해당 파일의 시작 주소가 일치하는 경우에는, 해당 프리 스페이스를 나타내는 리스트의 필드 정보를 갱신하여야 한다. 따라서, list의 start 필드는 현재 저장되어 있는 list의 start 필드값, 즉 프리 스페이스로 정의되어 있는 데이터 저장 영역(119)의 시작 주소와, 입력 파라메터인 파일의 크기, 즉 size값의 합을 할당한다(S227). 이 결과, 프리 스페이스를 표현하는 리스트의 시작 주소는 원래의 시작 주소로부터 해당 파일이 차지하는 크기만큼 이동한 값으로 변경된다.As a result of the determination (S225), when the start address of the corresponding free space and the start address of the file correspond, the field information of the list indicating the free space must be updated. Therefore, the start field of the list allocates the sum of the start field value of the currently stored list, that is, the start address of the data storage area 119 defined by the free space, and the size of the file which is an input parameter, that is, the size value. (S227). As a result, the start address of the list representing the free space is changed from the original start address to a value shifted by the size occupied by the file.

상기의 시작 주소 변경과 마찬가지로 해당 프리 스페이스를 나타내는 리스트의 크기 필드값을 갱신해야 한다. 따라서, list의 size 필드는 현재 저장되어 있는 list의 size 필드값, 즉 프리 스페이스로 정의되어 있는 데이터 저장 영역(119)의 크기에서 입력 파라메터인 파일의 크기, 즉 size 값을 뺀 값을 할당한다(S229). 이 결과, 프리 스페이스를 표현하는 리스트의 크기는 원래의 크기에서 해당 파일이 차지하는 크기만큼 뺀 값으로 변경된다.Similar to the above starting address change, the size field value of the list representing the corresponding free space must be updated. Accordingly, the size field of the list allocates the value of the size field of the currently stored list, that is, the size of the data storage area 119 defined as free space minus the size of the input parameter file, that is, the size value ( S229). As a result, the size of the list representing the free space is changed to the original size minus the size occupied by the file.

상기 단계 S227 및 단계 S229 수행 결과, list의 size 필드값이 '0'이고 해당 리스트가 Free List의 마지막 리스트(ListInform의 tail)가 아닌 경우에는(S231), 당해 리스트를 삭제한다(S233). 그 이유는, 크기가 '0'인 리스트는 더 이상 데이터를 할당할 수 없는 데이터 저장 영역(119)을 표현하는, 무의미한 리스트이기 때문이다.As a result of performing steps S227 and S229, when the size field value of the list is '0' and the corresponding list is not the last list of the free list (tail of ListInform) (S231), the list is deleted (S233). The reason is that a list of size '0' is a meaningless list, representing a data storage area 119 where data can no longer be allocated.

그러나, 크기가 '0'일지라도 해당 리스트가 Free List의 마지막 리스트(ListInform의 tail)인 경우에는(S231), 기준 리스트 설정의 편의상 당해 리스트를 삭제하지 않는다. 그 이유는, 최초에 설정한 Free List의 마지막 리스트(ListInform의 tail)를 크기가 '0'이라는 이유로 변경할 경우 알고리즘이 복잡해지며, 최초에 설정한 Free List의 마지막 리스트(ListInform의 tail)를 그대로 유지하여도 나중에 프리 스페이스 검색시 검색 속도에 큰 영향을 미치지 않기 때문이다.However, even if the size is '0', when the list is the last list of the free list (tail of ListInform) (S231), the list is not deleted for convenience of setting the reference list. The reason is that if you change the last list (the tail of ListInform) of the first Free List set because the size is '0', the algorithm becomes complicated, and the last list (the tail of the ListInform) of the first Free List is set as it is. This is because the search speed does not have a significant effect on the free space search later.

한편, 도 2에서는 크기가 '0'일지라도 해당 리스트가 Free List의 마지막 리스트(ListInform의 tail)인 경우에는 기준 리스트 설정의 편의상 당해 리스트를 삭제하지 않는 것으로 하였으나, 기준 리스트의 설정은 임의의 알고리즘에 의해 다양하게 변화될 수 있음은 본 발명이 속한 기술 분야에서 통상의 지식을 가진 자에게 명백한 것이다. 따라서, 본 발명은 도면에 도시된 바와 같은 기준 리스트의 설정에 한정되지 않는 것으로 이해되어야 한다.On the other hand, in FIG. 2, even if the size is '0', when the list is the last list of the free list (the tail of ListInform), the list is not deleted for convenience of setting the reference list. It is apparent to those skilled in the art that the present invention may be variously changed by the present invention. Therefore, it should be understood that the present invention is not limited to the setting of the reference list as shown in the drawings.

다음으로, 상기 과정에 따라 ListInform의 total_size에서 정의한 프리 스페이스가 변경되었으므로, 변경된 크기, 즉 해당 파일의 크기만큼을 뺀 값으로 변경한다(S243).Next, since the free space defined by the total_size of the ListInform has been changed according to the above process, it is changed to the value obtained by subtracting the changed size, that is, the size of the file (S243).

상기 판단 결과(S225), 해당 프리 스페이스의 시작 주소와 해당 파일의 시작 주소가 일치하지 않는 것으로 판단된 경우에는, 해당 프리 스페이스를 표현하는 리스트의 중간에 해당 파일만큼 프리 스페이스를 삭제하여야 하는 경우로서, 2개의 프리 스페이스를 표현하는 리스트가 생성되는 결과를 가져온다. 따라서, new_start 및 new_size라는 로컬 변수를 새로 도입한다. 여기서, new_start는 새로이 생성될 리스트가 표현하는 데이터 영역(119)의 프리 스페이스의 시작 주소를 나타내는 포인터이고, new_size는 새로이 생성될 리스트가 표현하는 데이터 영역(119)의 프리 스페이스의 크기를 나타내는 필드이다. 따라서, new_start는 입력 파라메터인 start 및 size의 합을 할당하고, new_size에는 list가 표현하는 프리 스페이스의 마지막 부분의 주소(list의 size 필드값과 list의 start 필드값의 합)에서 new_start 필드값을 뺀 값을 할당한다(S235). 그 결과로서, 새로이 생성될 리스트가 표현하는 프리 스페이스의 시작 주소(new_start)는 해당 파일의 시작 주소로부터 해당 파일의 크기만큼 이동한 값이 되며, 새로이 생성될 리스트가 표현하는 프리 스페이스의 크기는 new_start로 표현되는 시작 부분에서부터 원래 list가 표현하는 프리 스페이스의 마지막 부분(list의 size 필드값과 list의 start 필드값의 합)까지가 된다.As a result of the determination (S225), if it is determined that the start address of the free space does not match the start address of the file, it is necessary to delete the free space by the file in the middle of the list representing the free space. The result is a list of two free spaces. Therefore, we introduce new local variables called new_start and new_size. Here, new_start is a pointer indicating the start address of the free space of the data area 119 represented by the newly created list, and new_size is a field indicating the size of the free space of the data area 119 represented by the newly created list. . Therefore, new_start allocates the sum of the input parameters start and size, and new_size is the address of the last part of the free space represented by list minus the value of the new_start field from the value of the list field's size and the list's start field. Assign a value (S235). As a result, the start address (new_start) of the free space represented by the newly created list is a value shifted from the start address of the file by the size of the file, and the size of the free space represented by the newly created list is new_start. From the beginning of the expression to the end of the free space represented by the list (the sum of the size field of the list and the value of the start field of the list).

다음으로, 원래 list의 size 필드를 변경한다(S237). 그 이유는, 해당 파일만큼 프리 스페이스가 삭제되고, 또 다른 리스트가 새로이 생성되었기 때문이다. list의 start 필드는 변경 사항이 없다. 해당 파일이 list가 나타내는 프리 스페이스의 중간 부분에 위치하기 때문이다. 따라서, list의 size 필드값에는 입력 파라메터, 즉 해당 파일의 시작 주소 포인터인 start 값에서 list의 start 필드값을 뺀 값을 할당한다.Next, the size field of the original list is changed (S237). The reason is that the free space is deleted by the corresponding file, and another list is newly created. The start field of the list has no change. This is because the file is located in the middle of the free space indicated by list. Therefore, the size field value of the list is assigned an input parameter, that is, a value obtained by subtracting the value of the start field of the list from the start value that is the start address pointer of the file.

그 결과, 예를 들어 원래 list의 start 값이 '10'이고, list의 size 값이 '90'인 경우에 입력 파라메터인 해당 파일의 시작 주소(start)가 '50'이고 해당 파일의 크기(size)가 '15'이면, new_start 값은 '65'(=50+15), new_size 값은 '35'(=90+10-65)가 되고 변경된 list의 size 값은 '40'(=50-10)이 된다.As a result, for example, if the start value of the original list is '10' and the size value of the list is '90', the start address (start) of the corresponding input parameter is '50' and the size of the file ) Is '15', new_start value is '65' (= 50 + 15), new_size value is '35' (= 90 + 10-65), and the changed list's size value is '40' (= 50-10). )

다음으로, new_size가 '0'이고 list가 Free List의 마지막 리스트(ListInform의 tail)가 아닌 경우에는(S239), 리스트를 새로이 생성하지 않는다. 그 이유는, 크기가 '0'인 리스트는 더 이상 데이터를 할당 할 수 없는 데이터 저장 영역(119)을 표현하는, 무의미한 리스트이기 때문이다.Next, when new_size is '0' and list is not the last list of the free list (tail of ListInform) (S239), a new list is not generated. The reason is that a list of size '0' is a meaningless list, representing a data storage area 119 where data can no longer be allocated.

그러나, 이외의 경우에는 설사 new_size가 '0'이라도 기준 리스트 설정의 편의상 새로운 리스트를 생성한다(S241). 그 이유는, 최초에 설정한 Free List의 마지막 리스트(ListInform의 tail)를 크기가 '0'이라는 이유로 변경할 경우 알고리즘이 복잡해지며, 최초에 설정한 Free List의 마지막 리스트(ListInform의 tail)를 그대로 유지하여도 나중에 프리 스페이스 검색시 검색 속도에 큰 영향을 미치지 아니하기 때문이다.However, in other cases, even if new_size is '0', a new list is generated for convenience of setting the reference list (S241). The reason is that if you change the last list (the tail of ListInform) of the first Free List set because the size is '0', the algorithm becomes complicated, and the last list (the tail of the ListInform) of the first Free List is set as it is. This is because the search speed does not significantly affect the search speed during the free space search later.

한편, 도 2에서는 new_size가 '0'이라도 기준 리스트 설정의 편의상 새로운 리스트를 생성하는 것으로 하였으나, 기준 리스트의 설정은 임의의 알고리즘에 의해 다양하게 변화될 수 있음은 본 발명이 속한 기술 분야에서 통상의 지식을 가진 자에게 명백한 것이다. 따라서, 본 발명은 도면에 도시된 바와 같은 기준 리스트의 설정에 한정되지 않는 것으로 이해되어야 한다.Meanwhile, in FIG. 2, although new_size is '0', a new list is generated for the convenience of setting the reference list. However, the setting of the reference list may be variously changed by an arbitrary algorithm. It is evident to those who have knowledge. Therefore, it should be understood that the present invention is not limited to the setting of the reference list as shown in the drawings.

다음으로, 상기 과정에 따라 ListInform의 total_size에서 정의한 프리 스페이스가 변경되었으므로, 변경된 크기, 즉 해당 파일의 크기만큼을 뺀 값으로 변경한다(S243).Next, since the free space defined by the total_size of the ListInform has been changed according to the above process, it is changed to the value obtained by subtracting the changed size, that is, the size of the file (S243).

도 3a 및 도 3b는 상기 도 2의 수행 결과에 따른 리스트 구조 및 하드 디스크의 데이터 저장 상태를 나타내는 구조도이다.도 3a에 나타난 각 Free List(311a 내지 311n)는 도 3b의 데이터 저장 영역(119)의 프리 스페이스(321a 내지321n)에 각각 대응한다. 각 리스트(311a 내지 311n)의 start 필드는 대응하는 프리 스페이스(321a 내지321n)의 시작 주소를 나타내는 포인터, size 필드는 대응하는 프리 스페이스(321a 내지321n)의 크기를 나타내고, next 필드는 다음 리스트(311a 내지 311n)를 나타내는 포인터이다.3A and 3B are structural diagrams showing a list structure and a data storage state of a hard disk according to the result of FIG. 2. Each free list 311a to 311n illustrated in FIG. 3A is a data storage area 119 of FIG. 3B. Corresponds to the free spaces 321a to 321n respectively. The start field of each list 311a to 311n represents a pointer indicating the start address of the corresponding free spaces 321a to 321n, the size field represents the size of the corresponding free spaces 321a to 321n, and the next field represents the next list ( 311a to 311n).

도 4a 및 도 4b는 본 발명의 일실시예에 따라 파일 생성 요구시 리스트 생성 과정을 나타낸 흐름도 및 하드 디스크의 데이터 저장 상태를 나타내는 구조도이다.본 발명에 따른 리스트 생성 과정은 파일 생성 요구시에 입력되는 생성 파일의 크기를 size의 입력 파라메터로 하여 수행된다.4A and 4B are flowcharts illustrating a list generation process when a file is generated and a data storage state of a hard disk according to an embodiment of the present invention. The list generation process according to the present invention is input when a file generation is requested. The size of the generated file is set as the size input parameter.

우선, 생성하고자 하는 파일의 크기(size)와 현재 데이터 저장 영역(119)의 전체 프리 스페이스 크기(ListInform의 total_size 필드값)와 비교하여 요구된 파일을 생성할 수 있는지를 판단한다(S401).판단 결과(S401), 생성하고자 하는 파일의 크기가 전체 프리 스페이스의 크기보다 큰 경우에는, Free List를 검색할 필요도 없이 파일 생성 실패 메시지를 리턴한다(S421).First, it is determined whether the requested file can be generated by comparing the size (size) of the file to be created with the total free space size (total_size field value of ListInform) of the current data storage area 119 (S401). As a result (S401), if the size of the file to be created is larger than the size of the entire free space, the file creation failure message is returned without having to search for the free list (S421).

판단 결과(S401), 생성하고자 하는 파일의 크기가 전체 프리 스페이스의 크기보다 작은 경우에, 비로소 각 Free List를 검색하여 생성하고자 하는 파일의 크기(size)보다 큰 프리 스페이스를 표현하는 리스트를 찾는다(S403, S405, S407, S409).As a result of the determination (S401), when the size of the file to be created is smaller than the size of the entire free space, each Free List is searched to find a list representing a free space larger than the size of the file to be created ( S403, S405, S407, S409).

도 4a에서는 Free List의 마지막 리스트(ListInform의 tail)를 최초 검색 시작 포인트로 하였으나, 검색 시작 포인트는 임의의 알고리즘에 의해 다양하게 변화될 수 있음은 본 발명이 속한 기술 분야에서 통상의 지식을 가진 자에게 명백한 것이다. 따라서, 본 발명은 도면에 도시된 바와 같이 검색 시작 포인트를 Free List의 마지막 리스트(ListInform의 tail)로 하는 것에 한정되지 않는 것으로 이해되어야 한다.In FIG. 4A, the last list of the free list (tail of ListInform) is used as an initial search start point, but the search start point may be variously changed by an arbitrary algorithm. It is obvious to you. Accordingly, it should be understood that the present invention is not limited to making the search start point the last list of the Free List (the tail of ListInform) as shown in the figure.

상기 단계 S405, 단계 S407 및 단계S409의 수행 결과, 생성하고자 하는 파일의 크기(size)보다 큰 프리 스페이스를 표현하는 리스트를 찾을 수 없는 경우에는, 파일 생성 실패 메시지를 리턴한다(S421).As a result of performing steps S405, S407, and S409, if a list representing a free space larger than the size of the file to be created cannot be found, a file creation failure message is returned (S421).

그러나, 생성하고자 하는 파일의 크기(size)보다 큰 프리 스페이스를 표현하는 list를 찾은 경우에는, list의 strat 필드값을 start라는 로컬 변수에 할당한다(S411). 이때, list의 start 필드는 파일이 생성될 데이터 저장 영역(119)의 시작 주소를 나타낸다. 또한, 현재 저장되어 있는 list의 start 필드값, 즉 프리 스페이스로 정의되어 있는 데이터 저장 영역(119)의 시작 주소와, 입력 파라메터인 파일의 크기, 즉 size 값의 합을 list의 start 필드에 할당한다(S411). 이 결과, 프리 스페이스를 표현하는 리스트의 시작 주소는 원래의 시작 주소로부터 해당 파일이 차지하는 크기만큼 이동한 값으로 변경된다.However, when a list representing a free space larger than the size of the file to be created is found, the strat field value of the list is assigned to a local variable called start (S411). At this time, the start field of the list indicates the start address of the data storage area 119 in which the file is to be created. In addition, the start field value of the list currently stored, that is, the sum of the start address of the data storage area 119 defined in the free space and the size of the input parameter file, that is, the size value, is assigned to the start field of the list. (S411). As a result, the start address of the list representing the free space is changed from the original start address to a value shifted by the size occupied by the file.

상기의 시작 주소 변경과 마찬가지로 해당 프리 스페이스를 나타내는 리스트의 크기 필드값을 갱신해야 한다. 따라서, list의 size 필드는 현재 저장되어 있는 list의 size 필드값, 즉 프리 스페이스로 정의되어 있는 데이터 저장 영역(119)의 크기에서, 입력 파라메터인 파일의 크기, 즉 size 값을 뺀 값을 할당한다(S413). 이 결과, 프리 스페이스를 표현하는 리스트의 크기는 원래의 크기에서 해당 파일이 차지하는 크기만큼 뺀 값으로 변경된다.Similar to the above starting address change, the size field value of the list representing the corresponding free space must be updated. Therefore, the size field of the list allocates the value of the size field of the currently stored list, that is, the size of the data storage area 119 defined as free space, minus the size of the input parameter file, that is, the size value. (S413). As a result, the size of the list representing the free space is changed to the original size minus the size occupied by the file.

상기 단계 S411 및 단계 S413 수행 결과, list의 size 필드값이 '0'이고 해당 리스트가 Free List의 유일한 리스트가 아닌 경우(ListInform의 head와 ListInform의 tail이 일치하지 않는 경우)에는, 당해 리스트를 삭제한다(S417). 그 이유는, 크기가 '0'인 리스트는 더 이상 데이터를 할당 할 수 없는 데이터 저장 영역(119)을 표현하는, 무의미한 리스트이기 때문이다.As a result of performing steps S411 and S413, if the size field value of the list is '0' and the list is not the only list of the free list (when the head of the ListInform and the tail of the ListInform do not match), the list is deleted. (S417). The reason is that a list of size '0' is a meaningless list, representing a data storage area 119 where data can no longer be allocated.

그러나, 크기가 '0'일지라도 해당 리스트가 Free List의 유일한 리스트인 경우(ListInform의 head와 ListInform의 tail이 일치하는 경우)에는, 당해 리스트를 삭제하지 않는다.However, even if the size is '0', if the list is the only list of the free list (when the head of the ListInform and the tail of the ListInform match), the list is not deleted.

다음으로, 상기 과정에 따라 ListInform의 total_size에서 정의한 프리 스페이스가 변경되었으므로, 변경된 크기, 즉 해당 파일의 크기만큼을 뺀 값으로 변경한다(S419).Next, since the free space defined by the total_size of the ListInform is changed according to the above process, it is changed to the value obtained by subtracting the changed size, that is, the size of the corresponding file (S419).

도 4a에 도시된 프로세스의 수행 결과로서 start 필드값을 리턴하게 되면, start가 포인팅하는 데이터 저장 영역(119)의 주소를 시작 주소로 하여 파일을 생성할 수 있게 되고, Free List는 파일 생성에 따라 변경된다.When the start field value is returned as a result of the process shown in FIG. 4A, a file can be created using the address of the data storage area 119 to which start points as a start address. Is changed.

즉, 도4b에 도시된 바와 같이, 파일 생성 요구 이전에는 start(401) size(403)으로 표현되었던 프리 스페이스의 리스트가 size(405)를 입력 파라메터로 하여 파일 생성 요구를 수신하게 되면 도4a에 도시된 프로세스를 수행하여 start(407)의 파일 시작 주소를 리턴하게 되며, 리스트의 필드는 각각 start(409) 및 size(411)로 변경된다.That is, as shown in FIG. 4B, if the list of free spaces expressed as start (401) size (403) before the file creation request receives a file creation request with size (405) as an input parameter, FIG. The illustrated process is performed to return a file start address of start 407, and the fields of the list are changed to start (409) and size (411), respectively.

도 5a 내지 도 5d는 본 발명의 일실시예에 따라 파일 삭제 요구시 리스트 변경 과정을 나타낸 흐름도 및 하드 디스크의 데이터 저장 상태를 나타내는 구조도이다.도면에 도시된 바와 같이, 본 발명의 일실시예에 따른 파일 삭제 요구시 리스트 변경 프로세스는 파일 삭제 요구시에 함께 수신되는 삭제 파일의 시작 주소 및 삭제 파일의 크기를 각각 start 및 size의 입력 파라메터로 하여 수행된다.5A to 5D are flowcharts illustrating a list change process when a file deletion request is made, and a structure diagram showing a data storage state of a hard disk. As shown in FIG. According to the file deletion request, the list change process is performed using the start address and the size of the deletion file, which are received together with the file deletion request, as input parameters of start and size, respectively.

우선, 삭제하고자 하는 파일의 끝 주소(end=start+size)를 구한다(S501).First, an end address (end = start + size) of a file to be deleted is obtained (S501).

다음으로, 각 Free List를 검색하여 삭제하고자 하는 파일의 끝 주소(end)보다 이후에 있는 번지를 시작 주소로 하는 프리 스페이스의 리스트를 찾는다(S503, S505, S507, S509).Next, each Free List is searched to find a list of free spaces whose address is later than the end address of the file to be deleted (S503, S505, S507, S509).

도 5a에서는 Free List의 처음 리스트(ListInform의 head)를 최초 검색 시작 포인트로 하였으나, 검색 시작 포인트는 임의의 알고리즘에 의해 다양하게 변화될 수 있음은 본 발명이 속한 기술 분야에서 통상의 지식을 가진 자에게 명백한 것이다. 따라서 본 발명은 도면에 도시된 바와 같이 검색 시작 포인트를 Free List의 처음 리스트(ListInform의 head)로 하는 것에 한정되지 않는 것으로 이해되어야 한다.In FIG. 5A, the first list of the free list (the head of ListInform) is used as the initial search start point, but the search start point may be variously changed by an arbitrary algorithm. It is obvious to you. Therefore, it is to be understood that the present invention is not limited to setting the search start point as the first list of Free List (head of ListInform) as shown in the figure.

상기 단계 S505, 단계 S507 및 단계 S509의 수행 결과, 삭제하고자 하는 파일의 끝 주소(end)보다 이후에 있는 번지를 시작 주소로 하는 프리 스페이스의 리스트를 찾을 수 없는 경우에는, 파일 삭제 실패 메시지를 리턴한다.As a result of performing steps S505, S507, and S509, if a list of free spaces whose address is later than the end address of the file to be deleted cannot be found, a file deletion failure message is returned. do.

그러나, 삭제하고자 하는 파일의 끝 주소(end)보다 이후에 있는 번지를 시작 주소로 하는 프리 스페이스의 list를 찾은 경우에는, 해당 list의 직전에 있는 리스트를 pre라는 로컬 변수에 할당하고(S511), pre가 표현하는 프리 스페이스의 끝 주소(pre의 start 필드값과 pre의 size 필드값의 합)를 구한다(S513).However, when a list of free spaces whose address is later than the end address of the file to be deleted is found, the list immediately before the list is assigned to the local variable pre (S511). The end address (the sum of the start field value of pre and the size field value of pre) represented by pre is obtained (S513).

한편, 삭제하고자 하는 파일의 위치는 다음 중 어느 하나에 해당한다.On the other hand, the location of the file to be deleted corresponds to any one of the following.

1. pre로 표현되는 프리 스페이스의 직후1. immediately after the free space represented by pre

2. list로 표현되는 프리 스페이스의 직전2. Immediately before the free space represented by the list

3, 저장되어 있는 파일 데이터의 중간3, the middle of the stored file data

따라서, 삭제하고자 하는 파일의 위치가 상기 세가지 경우 중 어느 경우에 해당하는지를 판단한다(S515, S517).Therefore, it is determined which of the three cases the location of the file to be deleted corresponds to (S515, S517).

판단 결과, 삭제하고자 하는 파일의 위치가 pre로 표현되는 프리 스페이스의 직후인 경우(start 값과 pre의 end 값이 일치하는 경우)에는, 단순히 pre의 size 필드에는 원래의 필드값과 입력 파라메터인 size 값의 합을 할당하면 된다(S519). 그 결과, pre로 표현되는 프리 스페이스의 크기가 삭제된 파일의 크기만큼 커지게 된다.If it is determined that the position of the file to be deleted is immediately after the free space represented by pre (when the start value and the end value of pre match), the size field of pre is simply the original field value and the input parameter size. The sum of the values may be allocated (S519). As a result, the size of the free space represented by pre is increased by the size of the deleted file.

도 5b는 삭제하고자 하는 파일의 위치가 pre로 표현되는 프리 스페이스의 직후인 경우에 데이터 저장 영역(119)의 변화 상태를 나타내는 도면으로서, 변경 전에는 start 값(501)과 pre의 end 값(511)이 일치하여 size(503) 값의 크기를 갖는 파일이 삭제되면 pre로 표현되는 프리 스페이스의 크기는 원래의 pre의 size 필드값(507)과 삭제 파일의 size(503) 값의 합(513)이 된다.5B is a diagram showing a change state of the data storage area 119 when the position of the file to be deleted is immediately after the prespace represented by pre. Before the change, the start value 501 and the end value 511 of pre are shown. When a file having a size of size (503) is deleted in this match, the size of the free space represented by pre is the sum of the value of the size field of the original pre (507) and the size of the deleted file (513) (513). do.

상기 판단 결과, 삭제하고자 하는 파일의 위치가 list로 표현되는 프리 스페이스의 직전인 경우(end 값과 list의 start 필드값이 일치하는 경우)에는, list의 start 필드에는 입력 파라메터인 삭제 파일의 시작 주소 즉 start 값을 할당하고, list의 size 필드에는 원래 list의 size 필드값과 입력 파라메터인 삭제 파일의 크기, 즉 size 값의 합을 할당한다(S521). 그 결과, list로 표현되는 프리 스페이스의 시작 주소가 삭제 파일의 시작 주소로 이동되며, 프리 스페이스의 크기가 삭제 파일의 크기만큼 커지게 된다.As a result of the determination, when the position of the file to be deleted is immediately before the free space represented by the list (when the end value and the start field value of the list coincide), the start address of the deleted file which is an input parameter in the start field of the list That is, the start value is allocated, and the size field of the list is assigned the sum of the size field value of the original list and the size of the deleted file which is an input parameter, that is, the size value (S521). As a result, the start address of the free space represented by the list is moved to the start address of the deleted file, and the size of the free space is increased by the size of the deleted file.

다음으로, pre의 end 값과 list의 start 필드값이 일치하는지 여부를 검사한다(S523). 이는 파일 삭제의 결과로 pre로 표현되는 프리 스페이스 직후에 list로 표현되는 프리 스페이스가 위치하게 되면 하나의 리스트로 표현되는 프리 스페이스로 병합하고, 나머지 리스트는 의미없는 리스트로서 삭제하여야 하기 때문이다.Next, it is checked whether the end value of pre and the start field value of list match (S523). This is because when a free space represented by a list is located immediately after the free space represented by pre as a result of file deletion, it is merged into a free space represented by one list, and the remaining list must be deleted as a meaningless list.

검사 결과, pre의 end 값과 list의 start 필드값이 일치하지 않는 경우에는, pre로 표현되는 프리 스페이스와 list로 표현되는 프리 스페이스는 상호 인접하지 않는 별개의 프리 스페이스이므로 절차를 종료한다.If the end value of pre does not match the value of the start field of the list as a result of the check, the procedure ends because the free space represented by pre and the free space represented by list are separate free spaces which are not adjacent to each other.

검사 결과, pre의 end 값과 list의 start 필드값이 일치하는 경우에는, pre의 size 필드에는 원래의 pre의 size 필드값과 list의 size 필드값의 합을 할당하고(S525), list는 삭제한다(S527). 그 결과, list로 표현되는 프리 스페이스는 pre로 표현되는 프리 스페이스에 흡수되고, list는 더이상 의미없는 리스트로서 삭제된다. 즉, pre로 표현되는 프리 스페이스의 크기는 list로 표현되었던 프리 스페이스의 크기만큼 커지게 된다.As a result of the check, if the end value of pre and the start field value of the list match, the pre size field is assigned the sum of the original pre size field value and the list size field value (S525), and the list is deleted. (S527). As a result, the free space represented by list is absorbed by the free space represented by pre, and the list is deleted as a no longer meaningful list. In other words, the size of the prespace represented by pre is increased by the size of the prespace represented by the list.

도 5c는 삭제하고자 하는 파일의 위치가 list로 표현되는 프리 스페이스의 직전인 경우에 데이터 저장 영역(119)의 변화 상태를 나타내는 도면으로서, 변경 전에는 end 값(502)과 list의 start 필드값(506)이 일치하여 size(503) 값의 크기를 갖는 파일이 삭제되면 list로 표현되는 프리 스페이스의 크기는 원래의 list의 size 필드값(508)과 삭제 파일의 size(503) 값의 합(517)이 되고, list로 표현되는 프리 스페이스의 시작 주소는 원래의 list의 start 필드값(506)으로부터 삭제 파일의 시작 주소, 즉 start 값(501)으로 이동하게 된다.FIG. 5C is a diagram showing the change state of the data storage area 119 when the position of the file to be deleted is immediately before the free space represented by the list, before the end value 502 and the start field value 506 of the list. If the file with size of size (503) is deleted because) is matched, the size of the free space represented by list is the sum of the size field value (508) of the original list and the size (503) value of the deleted file (517). The start address of the free space represented by the list is moved from the start field value 506 of the original list to the start address of the deleted file, that is, the start value 501.

만약, 변경된 list의 start 필드값이 pre의 end 값과 일치하는 경우(도 5c에서 pre로 표현되는 프리 스페이스와 list로 표현되는 프리 스페이스 사이의 파일이 없는 경우)에는, pre의 size 필드에는 원래 pre의 size 필드값과 list의 size 필드값의 합을 할당하고, list는 삭제된다. 그 결과, 프리 스페이스는 pre로만 표현되는 것이다.If the start field value of the changed list matches the end value of pre (there is no file between the free space represented by pre in FIG. 5C and the free space represented by list), the size field of pre does not include the original pre. Allocate the sum of the value of the size field and the size field of the list, and delete the list. As a result, the free space is represented only by pre.

상기 판단 결과, 삭제하고자 하는 파일의 위치가 저장되어 있는 파일 데이터의 중간인 경우(start 값과 pre의 end 값이 일치하지 않고, end 값과 list의 start 필드값이 일치하지 않는 경우)에는, 삭제 파일의 시작 주소(입력 파라메터인 start 값)를 start 필드값으로 하고, 삭제 파일의 크기(입력 파라메터인 size 값)를 size 필드값으로 하는(S531) 새로운 리스트인 new_list를 생성하고(S529), Free List에서 pre와 list의 사이에 삽입한다(S533).As a result of the determination, when the position of the file to be deleted is in the middle of the stored file data (when the start value and the end value of pre do not match, and the end value and the start field value of the list do not coincide), deletion is performed. Create a new list, new_list, with the start address of the file (start value as an input parameter) as the start field value, and the size of the deleted file (size value as the input parameter) as the size field value (S531) (S529) The list is inserted between pre and list (S533).

도 5d는 삭제하고자 하는 파일의 위치가 저장되어 있는 파일 데이터의 중간인 경우에 데이터 저장 영역(119)의 변화 상태를 나타내는 도면으로서, 변경 전의 삭제 파일의 시작 주소인 start 값(501)은 변경 후에 new_list의 start 필드값(521)으로 변경되고, 삭제 파일의 크기인 size 값(503)은 변경 후에 new_list의 size 필드값(523)으로 변경된다. 그 결과, pre의 next 필드값은 new_list를 포인팅하게 되고, new_list의 next 필드값은 list를 포인팅하게 된다.5D is a diagram showing a change state of the data storage area 119 when the location of the file to be deleted is in the middle of the stored file data, and the start value 501 which is the start address of the deleted file before the change is shown after the change. It is changed to the start field value 521 of new_list, and the size value 503 which is the size of the deleted file is changed to the size field value 523 of new_list after the change. As a result, the next field value of pre points to new_list, and the next field value of new_list points to list.

상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 기록매체(시디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 저장될 수 있다.The method of the present invention as described above may be implemented as a program and stored in a computer-readable recording medium (CD-ROM, RAM, ROM, floppy disk, hard disk, magneto-optical disk, etc.).

이상에서 설명한 본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 여러 가지 치환, 변형 및 변경이 가능하다는 것이 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 있어서 명백하다 할 것이다.The present invention described above is not limited to the above-described embodiments and the accompanying drawings, and various substitutions, modifications, and changes are possible in the technical field of the present invention without departing from the technical spirit of the present invention. It will be clear to those of ordinary knowledge.

상기한 바와 같이 본 발명에 따르면, 비트맵 대신 연결 리스트(linked list) 구조를 이용하여 하드 디스크에 파일을 생성/제거할 때 연결 리스트에서 프리 스페이스를 검색함으로써 하드 디스크의 프리 스페이스 검색 시간을 단축하여 파일 생성/제거 속도가 향상되는 효과가 있다.또한, 본 발명은 파일 시스템의 점유율이 낮아지므로 프로세서의 처리 효율을 향상시킬 수 있으며, 파일 생성 시간을 고려하지 않아도 되므로 프로그램의 구조를 간단히 할 수 있는 효과가 있다.As described above, according to the present invention, when creating / removing a file on the hard disk using a linked list structure instead of a bitmap, the free space searching time is shortened by searching the free space in the linked list. In addition, the file creation / removal speed is improved. In addition, the present invention can reduce the file system occupancy, thereby improving the processing efficiency of the processor, and simplifying the structure of the program because the file generation time is not taken into consideration. It works.

Claims (18)

삭제delete 삭제delete 디렉토리를 갖는 이동 교환기의 단일 파일 시스템에서 하드 디스크의 초기화 방법에 있어서,A method of initializing a hard disk in a single file system of a mobile exchange having a directory, 상기 디렉토리의 파일 정보로부터 파일의 시작 주소(start)와 파일 크기(size)를 추출하는 제 1 단계;Extracting a start address and a file size of a file from file information of the directory; 상기 파일의 시작 주소(start)가 포함되는 리스트를 검색하는 제 2 단계;A second step of searching for a list including a start address of the file; 상기 리스트가 표현하는 하드 디스크의 프리 스페이스 시작 주소(list의 start)와 상기 시작 주소(start)가 일치하는 경우, 상기 프리 스페이스의 시작 주소(list의 start)를 최초 주소로부터 상기 파일 크기(size)만큼 이동시키고, 상기 프리 스페이스의 크기(list의 size)를 상기 크기(size)만큼 감소시키는 제 3 단계;When the free space start address (list start) of the hard disk represented by the list and the start address (start) coincide with each other, the start address of the free space (start start of the list) is set from the first address to the file size. A third step of shifting the free space and reducing the size of the free space by the size; 상기 제 3 단계의 프리 스페이스의 크기(list의 size)가 영(零)인 경우, 상기 리스트를 삭제하는 제 4 단계;A fourth step of deleting the list if the size of the free space of the third step is zero; 상기 리스트가 표현하는 하드 디스크의 프리 스페이스 시작 주소(list의 start)와 상기 시작 주소(start)가 일치하지 않는 경우, 상기 시작 주소(start)와 크기(size)의 합을 시작 주소(new_start)로 할당하고, 상기 프리 스페이스의 끝 주소(list의 start + list의 size)에서 상기 시작 주소(new_start)를 뺀 값을 크기(new_size)로 할당하는 제 5 단계;When the free space start address (list of list) of the hard disk represented by the list does not match the start address (start), the sum of the start address (start) and size (size) is used as a start address (new_start). A fifth step of allocating a value obtained by subtracting the start address (new_start) from the end address of the free space (start + list size of list) as a size (new_size); 상기 프리 스페이스의 크기(list의 size)를 상기 시작 주소(start)에서 상기 프리 스페이스의 시작 주소(list의 start)를 뺀 값으로 할당하는 제 6 단계;A sixth step of allocating the size of the free space (list size) to a value obtained by subtracting the start address of the free space from the start address (start); 상기 시작 주소(new_start)와 상기 크기(new_size)의 프리 스페이스를 표현하는 리스트를 추가하는 제 7 단계; 및Adding a list representing a free space of the start address (new_start) and the size (new_size); And 전체 프리 스페이스의 크기(total_size)에서 상기 파일 크기(size)를 빼는 제 8 단계를 포함하되,An eighth step of subtracting the file size from the total free space size (total_size), 상기 리스트(list)는 해당 프리 스페이스의 시작 주소(start) 및 크기(size) 및 다음 리스트를 나타내는 포인터(next)로 구성된 연결 리스트 구조를 가지며, 최초 리스트의 시작 리스트를 나타내는 포인터(head), 상기 리스트 중에서 마지막 리스트를 나타내는 포인터(tail) 및 전체 프리 스페이스의 크기(total_size)로 구성된 리스트 정보(ListInform) 구조를 가지며,The list has a linked list structure consisting of a start address and a size of the corresponding free space and a pointer indicating a next list, a pointer indicating a start list of the first list, and It has a list information (ListInform) structure consisting of a pointer (tail) indicating the last list of the list and the size of the total free space (total_size), 상기 제 2 단계는,The second step, 상기 최초 리스트(head)가 정의되어 있지 않은 경우에는, 상기 하드 디스크의 데이터 저장 영역의 시작 주소(file_start_addr)를 시작 주소(start)로 하고, 상기 하드 디스크의 데이터 저장 영역의 전체 크기(disk_data_size)를 크기(size)로 하는 새로운 리스트(list)를 생성하는 제 9 단계;When the initial list is not defined, the start address (file_start_addr) of the data storage area of the hard disk is set as the start address, and the total size (disk_data_size) of the data storage area of the hard disk is set. A ninth step of generating a new list of sizes; 상기 리스트(list)를 상기 최초 리스트(head) 및 상기 마지막 리스트(tail)에 할당하는 제 10 단계; 및A tenth step of allocating the list to the first list and the last list; And 상기 최초 리스트(head)가 정의되어 있는 경우에는, 상기 최초 리스트(head)를 리스트(list)에 할당하는 제 11 단계An eleventh step of allocating the first list to a list when the first list is defined 를 포함하는 하드 디스크의 초기화 방법.Initialization method of the hard disk comprising a. 제 3 항에 있어서,The method of claim 3, wherein 상기 제 4 단계는,The fourth step, 상기 리스트(list)가 마지막 리스트(tail)인 경우에는 삭제하지 않는 것을 특징으로 하는 하드 디스크의 초기화 방법.And if the list is a last list, not deleting the list. 제 3 항에 있어서,The method of claim 3, wherein 상기 제 7 단계는,The seventh step, 상기 크기(new_size)가 영(零)이고 상기 리스트(list)가 마지막 리스트(tail)가 아닌 경우에는, 상기 시작 주소(new_start)와 상기 크기(new_size)의 프리 스페이스를 표현하는 리스트를 추가하지 않는 것을 특징으로 하는 하드 디스크의 초기화 방법.If the size new_size is zero and the list is not the last tail, a list representing the free space of the start address new_start and the size new_size is not added. Initializing a hard disk, characterized in that. 제 3 항의 방법에 의해 초기화된 하드 디스크에 파일을 생성하는 방법에 있어서,In the method for creating a file on a hard disk initialized by the method of claim 3, 생성하고자 하는 파일의 크기(size)를 수신하는 제 1 단계;A first step of receiving a size of a file to be created; 상기 파일의 크기(size)가 상기 전체 프리 스페이스의 크기(total_size)보다 큰 경우에는 파일 생성 실패 메시지를 리턴하는 제 2 단계;A second step of returning a file creation failure message if the size of the file is larger than the total free size; 상기 파일의 크기(size)가 상기 전체 프리 스페이스의 크기(total_size)보다 작은 경우에는 상기 파일의 크기(size)보다 큰 리스트를 상기 연결 리스트 구조에서 검색하는 제 3 단계;Searching for a list in the linked list structure that is larger than the size of the file when the size of the file is smaller than the total free size; 상기 검색된 리스트가 표현하는 프리 스페이스의 시작 주소(list의 start)를 상기 파일의 시작 주소(start)로 할당하는 제 4 단계;A fourth step of allocating a start address of a free space represented by the searched list (start of list) as a start address of the file; 상기 프리 스페이스의 시작 주소(list의 start)를 최초 시작 주소로부터 상기 파일의 크기(size)만큼 이동한 값으로 할당하고, 상기 프리 스페이스의 크기(list의 size)를 최초 크기에서 상기 파일의 크기(size)만큼 뺀 값으로 할당하는 제 5 단계;The start address of the free space (list start) is allocated to a value shifted from the initial start address by the size of the file, and the size of the free space (list size) is used as the size of the file at the initial size ( a fifth step of allocating the subtracted by size); 상기 프리 스페이스의 크기(list의 size)가 영(零)이면 상기 리스트를 삭제하는 제 6 단계; 및A sixth step of deleting the list if the size of the free space is zero; And 전체 프리 스페이스의 크기(total_size)에서 상기 파일 크기(size)를 빼는 제 7 단계A seventh step of subtracting the file size from the total free space size 를 포함하는 파일 생성 방법.File generation method comprising a. 제 6 항에 있어서,The method of claim 6, 상기 제 3 단계는The third step is 상기 연결 리스트 구조 전체를 검색하여도 상기 파일(size)보다 큰 리스트를 찾을 수 없는 경우에는 파일 생성 실패 메시지를 리턴하는 것을 특징으로 하는 파일 생성 방법.And a file creation failure message is returned when a list larger than the file size is not found even though the entire linked list structure is searched. 제 7 항에 있어서,The method of claim 7, wherein 상기 제 3 단계는The third step is 마지막 리스트(tail)를 시점으로 하여 전체 리스트를 검색하는 것을 특징으로 하는 파일 생성 방법.A method for generating a file, characterized in that for retrieving the entire list using the last list as a starting point. 제 6 항에 있어서,The method of claim 6, 상기 제 6 단계는The sixth step 상기 리스트가 상기 연결 리스트 구조에서 유일한 리스트인 경우에는 상기 리스트를 삭제하지 않는 것을 특징으로 하는 파일 생성 방법.And if the list is the only list in the linked list structure, deleting the list. 제 3 항 내지 제 9 항 중 어느 한 항에 의해 구성된 상기 연결 리스트를 기초로 파일을 제거하는 방법에 있어서,A method for removing a file based on the linked list constructed by any one of claims 3 to 9, 삭제하고자 하는 파일의 시작 주소(start) 및 파일의 크기(size)를 수신하는 제 1 단계;A first step of receiving a start address of a file to be deleted and a size of the file; 상기 파일의 끝 주소(start + size)의 이후에 시작 주소를 갖는 프리 스페이스의 리스트(list)를 상기 연결 리스트 구조에서 검색하는 제 2 단계;Retrieving a list of free spaces having a start address after the end address (start + size) of the file from the linked list structure; 상기 프리 스페이스의 직전 프리 스페이스의 리스트(pre)를 확인하는 제 3 단계;A third step of checking a list (pre) immediately before the free space; 상기 파일의 끝 주소(start + size)가 리스트(list)로 표현되는 프리 스페이스의 시작 주소(list의 start)와 일치하는 경우에는, 상기 프리 스페이스의 시작 주소(list의 start)를 상기 파일의 시작 주소(start)로 할당하고, 상기 프리 스페이스의 크기(list의 size)를 상기 파일의 크기(size)로 할당하는 제 4 단계;When the end address (start + size) of the file coincides with the start address of the free space represented by the list (start), the start address of the free space (start of the list) is determined by the start of the file. A fourth step of allocating an address to start and allocating a size of the free space as a size of the file; 상기 프리 스페이스의 시작 주소(list의 start)가 리스트(pre)로 표현되는 프리 스페이스의 끝 주소와 일치하는 경우에는, 리스트(pre)로 표현되는 프리 스페이스의 크기(pre의 size)를 원래의 크기와 상기 프리 스페이스의 크기(list의 size)의 합으로 할당하고, 상기 프리 스페이스의 리스트(list)를 삭제하는 제 5 단계; 및If the start address of the free space (list start) coincides with the end address of the free space represented by the list pre, the size of the free space represented by the list pre is used as the original size. A fifth step of allocating the sum of the free space and the size of the free space and deleting the list of the free space; And 상기 파일의 시작 주소(start)와 상기 리스트(pre)로 표현되는 프리 스페이스의 끝 주소와 일치하지 않고 상기 파일의 끝 주소(start + size)와 상기 리스트(list)로 표현되는 프리 스페이스의 시작 주소(list의 start)와 일치하지 않는 경우에는, 상기 파일의 시작 주소(start)를 시작 주소로 하고, 상기 파일의 크기(size)를 크기로 하는 새로운 리스트를 상기 연결 리스트 구조에서 상기 리스트(pre)와 리스트(list) 사이에 삽입하는 제 6 단계Start address of the file and start address of the free space represented by the end address of the file (start + size) and the list (list) do not match the start address of the file and the end address of the free space represented by the list (pre) If it does not match the start of the list, a new list having the start address of the file as the start address and the size of the file as the size is selected in the linked list structure. 6th step to insert between and list 를 포함하는 파일 제거 방법.How to remove files that include. 제 10 항에 있어서,The method of claim 10, 상기 제 2 단계는The second step is 상기 연결 리스트 구조 전체를 검색하여도 상기 파일의 끝 주소(start + size)의 이후에 시작 주소를 갖는 프리 스페이스의 리스트(list)를 찾을 수 없는 경우에는 파일 제거 실패 메시지를 리턴하는 것을 특징으로 하는 파일 제거 방법.If a list of free spaces having a start address after the end address (start + size) of the file cannot be found even after searching the entire linked list structure, a file removal failure message is returned. How to remove files. 제 11 항에 있어서,The method of claim 11, 상기 제 2 단계는The second step is 최초 리스트(head)를 시점으로 하여 전체 리스트를 검색하는 것을 특징으로 하는 파일 제거 방법.A method of removing a file, wherein the entire list is searched using the initial list as the starting point. 삭제delete 삭제delete 삭제delete 디렉토리를 갖는 이동 교환기의 단일 파일 시스템에서 하드 디스크의 초기화 를 위해, 프로세서를 구비한 이동 교환기에,In a mobile exchange with a processor, for initialization of the hard disk in a single file system of the mobile exchange with a directory, 상기 디렉토리의 파일 정보로부터 파일의 시작 주소(start)와 파일 크기(size)를 추출하는 제 1 기능;A first function of extracting a start address and a file size of a file from file information of the directory; 상기 파일의 시작 주소(start)가 포함되는 리스트를 검색하는 제 2 기능;A second function of retrieving a list including a start address of the file; 상기 리스트가 표현하는 하드 디스크의 프리 스페이스 시작 주소(list의 start)와 상기 시작 주소(start)가 일치하는 경우, 상기 프리 스페이스의 시작 주소(list의 start)를 최초 주소로부터 상기 파일 크기(size)만큼 이동시키고, 상기 프리 스페이스의 크기(list의 size)를 상기 크기(size)만큼 감소시키는 제 3 기능;When the free space start address (list start) of the hard disk represented by the list and the start address (start) coincide with each other, the start address of the free space (start start of the list) is set from the first address to the file size. A third function of shifting by the size and reducing the size of the free space by the size; 상기 제 3 기능의 프리 스페이스의 크기(list의 size)가 영(零)인 경우, 상기 리스트를 삭제하는 제 4 기능;A fourth function of deleting the list if the size of the free space of the third function is zero; 상기 리스트가 표현하는 하드 디스크의 프리 스페이스 시작 주소(list의 start)와 상기 시작 주소(start)가 일치하지 않는 경우, 상기 시작 주소(start)와 크기(size)의 합을 시작 주소(new_start)로 할당하고, 상기 프리 스페이스의 끝 주소(list의 start + list의 size)에서 상기 시작 주소(new_start)를 뺀 값을 크기(new_size)로 할당하는 제 5 기능;When the free space start address (list of list) of the hard disk represented by the list does not match the start address (start), the sum of the start address (start) and size (size) is used as a start address (new_start). A fifth function of allocating a value obtained by subtracting the start address (new_start) from the end address of the free space (start + list size of the list) as a size (new_size); 상기 프리 스페이스의 크기(list의 size)를 상기 시작 주소(start)에서 상기 프리 스페이스의 시작 주소(list의 start)를 뺀 값으로 할당하는 제 6 기능;A sixth function of allocating a size of the free space (list size) to a value obtained by subtracting the start address of the free space from the start address (start); 상기 시작 주소(new_start)와 상기 크기(new_size)의 프리 스페이스를 표현하는 리스트를 추가하는 제 7 기능; 및A seventh function of adding a list representing a free space of the start address new_start and the size new_size; And 전체 프리 스페이스의 크기(total_size)에서 상기 파일 크기(size)를 빼는 제 8 기능을 실현시키되,To realize the eighth function of subtracting the file size from the total free space size; 상기 리스트(list)는 해당 프리 스페이스의 시작 주소(start) 및 크기(size) 및 다음 리스트를 나타내는 포인터(next)로 구성된 연결 리스트 구조를 가지며, 최초 리스트의 시작 리스트를 나타내는 포인터(head), 상기 리스트 중에서 마지막 리스트를 나타내는 포인터(tail) 및 전체 프리 스페이스의 크기(total_size)로 구성된 리스트 정보(ListInform) 구조를 가지며,The list has a linked list structure consisting of a start address and a size of the corresponding free space and a pointer indicating a next list, a pointer indicating a start list of the first list, and It has a list information (ListInform) structure consisting of a pointer (tail) indicating the last list of the list and the size of the total free space (total_size), 상기 제 2 기능은,The second function is, 상기 최초 리스트(head)가 정의되어 있지 않은 경우에는, 상기 하드 디스크의 데이터 저장 영역의 시작 주소(file_start_addr)를 시작 주소(start)로 하고, 상기 하드 디스크의 데이터 저장 영역의 전체 크기(disk_data_size)를 크기(size)로 하는 새로운 리스트(list)를 생성하는 제 9 기능;If the initial list is not defined, the start address (file_start_addr) of the data storage area of the hard disk is set as a start address, and the total size (disk_data_size) of the data storage area of the hard disk is set. A ninth function of creating a new list of sizes; 상기 리스트(list)를 상기 최초 리스트(head) 및 상기 마지막 리스트(tail)에 할당하는 제 10 기능; 및A tenth function of allocating said list to said first list and said last list; And 상기 최초 리스트(head)가 정의되어 있는 경우에는, 상기 최초 리스트(head)를 리스트(list)에 할당하는 제 11 기능An eleventh function of allocating the first head to a list when the first list is defined 을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.A computer-readable recording medium having recorded thereon a program for realizing this. 제 16 항에 의해 초기화된 하드 디스크에 파일을 생성하기 위해, 프로세서를 구비한 이동 교환기에,A mobile switch with a processor for creating a file on a hard disk initialized by claim 16, 생성하고자 하는 파일의 크기(size)를 수신하는 제 1 기능;A first function of receiving a size of a file to be created; 상기 파일의 크기(size)가 상기 전체 프리 스페이스의 크기(total_size)보다 큰 경우에는 파일 생성 실패 메시지를 리턴하는 제 2 기능;A second function of returning a file creation failure message when the size of the file is larger than the total_size of the total free space; 상기 파일의 크기(size)가 상기 전체 프리 스페이스의 크기(total_size)보다 작은 경우에는 상기 파일의 크기(size)보다 큰 리스트를 상기 연결 리스트 구조에서 검색하는 제 3 기능;A third function of searching the linked list structure for a list larger than the size of the file when the size of the file is smaller than the size of the total free space; 상기 검색된 리스트가 표현하는 프리 스페이스의 시작 주소(list의 start)를 상기 파일의 시작 주소(start)로 할당하는 제 4 기능;A fourth function of allocating a start address of a free space represented by the searched list (start of list) as a start address of the file; 상기 프리 스페이스의 시작 주소(list의 start)를 최초 시작 주소로부터 상기 파일의 크기(size)만큼 이동한 값으로 할당하고, 상기 프리 스페이스의 크기(list의 size)를 최초 크기에서 상기 파일의 크기(size)만큼 뺀 값으로 할당하는 제 5 기능;The start address of the free space (list start) is allocated to a value shifted from the initial start address by the size of the file, and the size of the free space (list size) is used as the size of the file at the initial size ( a fifth function of allocating by size minus size); 상기 프리 스페이스의 크기(list의 size)가 영(零)이면 상기 리스트를 삭제하는 제 6 기능; 및A sixth function of deleting the list if the size of the free space is zero; And 전체 프리 스페이스의 크기(total_size)에서 상기 파일 크기(size)를 빼는 제 7 기능A seventh function of subtracting the file size from the total free space size 을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.A computer-readable recording medium having recorded thereon a program for realizing this. 제 16 항 또는 제 17 항에 의해 구성된 상기 연결 리스트를 기초로 파일을 제거하기 위해, 프로세서를 구비한 이동 교환기에,18. A mobile switch with a processor for removing a file based on the linked list configured by claim 16 or 17, 삭제하고자 하는 파일의 시작 주소(start) 및 파일의 크기(size)를 수신하는 제 1 기능;A first function of receiving a start address of a file to be deleted and a size of the file; 상기 파일의 끝 주소(start + size)의 이후에 시작 주소를 갖는 프리 스페이스의 리스트(list)를 상기 연결 리스트 구조에서 검색하는 제 2 기능;A second function of retrieving a list of free spaces having a start address after the end address (start + size) of the file from the linked list structure; 상기 프리 스페이스의 직전 프리 스페이스의 리스트(pre)를 확인하는 제 3 기능;A third function of checking a list of prespaces immediately before said freespace; 상기 파일의 끝 주소(start + size)가 리스트(list)로 표현되는 프리 스페이스의 시작 주소(list의 start)와 일치하는 경우에는, 상기 프리 스페이스의 시작 주소(list의 start)를 상기 파일의 시작 주소(start)로 할당하고, 상기 프리 스페이스의 크기(list의 size)를 상기 파일의 크기(size)로 할당하는 제 4 기능;When the end address (start + size) of the file coincides with the start address of the free space represented by the list (start), the start address of the free space (start of the list) is determined by the start of the file. A fourth function of allocating at an address and allocating a size of the free space as a size of the file; 상기 프리 스페이스의 시작 주소(list의 start)가 리스트(pre)로 표현되는 프리 스페이스의 끝 주소와 일치하는 경우에는, 리스트(pre)로 표현되는 프리 스페이스의 크기(pre의 size)를 원래의 크기와 상기 프리 스페이스의 크기(list의 size)의 합으로 할당하고, 상기 프리 스페이스의 리스트(list)를 삭제하는 제 5 기능; 및If the start address of the free space (list start) coincides with the end address of the free space represented by the list pre, the size of the free space represented by the list pre is used as the original size. And a fifth function of allocating a sum of a size of the free space and a list of the free space; And 상기 파일의 시작 주소(start)와 상기 리스트(pre)로 표현되는 프리 스페이스의 끝 주소와 일치하지 않고 상기 파일의 끝 주소(start + size)와 상기 리스트(list)로 표현되는 프리 스페이스의 시작 주소(list의 start)와 일치하지 않는 경우에는, 상기 파일의 시작 주소(start)를 시작 주소로 하고, 상기 파일의 크기(size)를 크기로 하는 새로운 리스트를 상기 연결 리스트 구조에서 상기 리스트(pre)와 리스트(list) 사이에 삽입하는 제 6 기능Start address of the file and start address of the free space represented by the end address of the file (start + size) and the list (list) do not match the start address of the file and the end address of the free space represented by the list (pre) If it does not match the start of the list, a new list having the start address of the file as the start address and the size of the file as the size is selected in the linked list structure. 6th function to insert between and list 을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.A computer-readable recording medium having recorded thereon a program for realizing this.
KR10-2001-0022858A 2001-04-27 2001-04-27 Method for Improving the Speed of File Creation/Deletion in File System of Mobile Switching Center KR100428859B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR10-2001-0022858A KR100428859B1 (en) 2001-04-27 2001-04-27 Method for Improving the Speed of File Creation/Deletion in File System of Mobile Switching Center

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR10-2001-0022858A KR100428859B1 (en) 2001-04-27 2001-04-27 Method for Improving the Speed of File Creation/Deletion in File System of Mobile Switching Center

Publications (2)

Publication Number Publication Date
KR20020083330A KR20020083330A (en) 2002-11-02
KR100428859B1 true KR100428859B1 (en) 2004-04-28

Family

ID=27702813

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-2001-0022858A KR100428859B1 (en) 2001-04-27 2001-04-27 Method for Improving the Speed of File Creation/Deletion in File System of Mobile Switching Center

Country Status (1)

Country Link
KR (1) KR100428859B1 (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR980013142A (en) * 1995-08-11 1998-04-30 제프리 엘. 포만 Asynchronous Transfer Mode Communication Network, System Processing Performance and Memory Usage Enhancement Method
JPH11154113A (en) * 1997-11-21 1999-06-08 Nec Corp Memory managing method
KR20010019128A (en) * 1999-08-25 2001-03-15 정선종 Linked-list common memory switch
KR20010030592A (en) * 1997-09-12 2001-04-16 인피니언 테크놀로지스 노쓰 아메리카 코포레이션 Data processing unit with hardware assisted context switching capability

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR980013142A (en) * 1995-08-11 1998-04-30 제프리 엘. 포만 Asynchronous Transfer Mode Communication Network, System Processing Performance and Memory Usage Enhancement Method
KR20010030592A (en) * 1997-09-12 2001-04-16 인피니언 테크놀로지스 노쓰 아메리카 코포레이션 Data processing unit with hardware assisted context switching capability
JPH11154113A (en) * 1997-11-21 1999-06-08 Nec Corp Memory managing method
KR20010019128A (en) * 1999-08-25 2001-03-15 정선종 Linked-list common memory switch

Also Published As

Publication number Publication date
KR20020083330A (en) 2002-11-02

Similar Documents

Publication Publication Date Title
US10120869B2 (en) Method and apparatus for fault-tolerant memory management
US7480775B2 (en) Method and apparatus for block-oriented memory management provided in smart card controllers
EP1089177B1 (en) Transaction processing system using efficient file update processing and recovery processing
US20100146213A1 (en) Data Cache Processing Method, System And Data Cache Apparatus
US11347711B2 (en) Sparse infrastructure for tracking ad-hoc operation timestamps
US6704432B2 (en) Extensible file format
CN111522507B (en) Low-delay file system address space management method, system and medium
US7818749B2 (en) Data processing method, data processing apparatus, and data processing program
US11392314B2 (en) Sequentially writing metadata into a solid state disk by redirect-on-write
US6961739B2 (en) Method for managing directories of large-scale file system
KR100907477B1 (en) Apparatus and method for managing index of data stored in flash memory
CN110795386B (en) Data writing method and server
KR100428859B1 (en) Method for Improving the Speed of File Creation/Deletion in File System of Mobile Switching Center
CN112612753B (en) System and method for dynamically managing Java Card storage space
CN112527196B (en) Cache read-write method and device, computer readable storage medium and electronic equipment
CN117377953A (en) Tree-based data structure
CN113568868A (en) File system management method, system, electronic device and medium
CN112269784A (en) Hash table structure based on hardware realization and inserting, inquiring and deleting method
EP2164005B1 (en) Content addressable storage systems and methods employing searchable blocks
JP2006127377A (en) Fat file system
JP2008134777A (en) Caching method of file allocation table
KR20090090570A (en) Method for allocating a page of a memory and a computer-readable recording medium for program which accomplishes thereof
JP2002091825A (en) Network cache device, network cache control method and recording medium
JP3578501B2 (en) Document search method and apparatus
CN112052217A (en) Snapshot implementation method and device

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
N231 Notification of change of applicant
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20070405

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee