KR20050072224A - Image forming apparatus and the method of memory management thereof - Google Patents

Image forming apparatus and the method of memory management thereof Download PDF

Info

Publication number
KR20050072224A
KR20050072224A KR1020040000541A KR20040000541A KR20050072224A KR 20050072224 A KR20050072224 A KR 20050072224A KR 1020040000541 A KR1020040000541 A KR 1020040000541A KR 20040000541 A KR20040000541 A KR 20040000541A KR 20050072224 A KR20050072224 A KR 20050072224A
Authority
KR
South Korea
Prior art keywords
memory
image data
printing
stored
released
Prior art date
Application number
KR1020040000541A
Other languages
Korean (ko)
Inventor
한호성
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020040000541A priority Critical patent/KR20050072224A/en
Publication of KR20050072224A publication Critical patent/KR20050072224A/en

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65FGATHERING OR REMOVAL OF DOMESTIC OR LIKE REFUSE
    • B65F1/00Refuse receptacles; Accessories therefor
    • B65F1/0006Flexible refuse receptables, e.g. bags, sacks
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65FGATHERING OR REMOVAL OF DOMESTIC OR LIKE REFUSE
    • B65F1/00Refuse receptacles; Accessories therefor
    • B65F1/0006Flexible refuse receptables, e.g. bags, sacks
    • B65F1/0013Flexible refuse receptables, e.g. bags, sacks with means for fixing and mounting of the receptacle to walls, doors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65FGATHERING OR REMOVAL OF DOMESTIC OR LIKE REFUSE
    • B65F1/00Refuse receptacles; Accessories therefor
    • B65F1/0006Flexible refuse receptables, e.g. bags, sacks
    • B65F1/002Flexible refuse receptables, e.g. bags, sacks with means for opening or closing of the receptacle
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65FGATHERING OR REMOVAL OF DOMESTIC OR LIKE REFUSE
    • B65F1/00Refuse receptacles; Accessories therefor
    • B65F1/14Other constructional features; Accessories
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65DCONTAINERS FOR STORAGE OR TRANSPORT OF ARTICLES OR MATERIALS, e.g. BAGS, BARRELS, BOTTLES, BOXES, CANS, CARTONS, CRATES, DRUMS, JARS, TANKS, HOPPERS, FORWARDING CONTAINERS; ACCESSORIES, CLOSURES, OR FITTINGS THEREFOR; PACKAGING ELEMENTS; PACKAGES
    • B65D2313/00Connecting or fastening means
    • B65D2313/08Double sided adhesive tape, e.g. for suspension of the container
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65DCONTAINERS FOR STORAGE OR TRANSPORT OF ARTICLES OR MATERIALS, e.g. BAGS, BARRELS, BOTTLES, BOXES, CANS, CARTONS, CRATES, DRUMS, JARS, TANKS, HOPPERS, FORWARDING CONTAINERS; ACCESSORIES, CLOSURES, OR FITTINGS THEREFOR; PACKAGING ELEMENTS; PACKAGES
    • B65D33/00Details of, or accessories for, sacks or bags
    • B65D33/007Details of, or accessories for, sacks or bags for facilitating the separation of the two walls, e.g. walls of inequal height, tabs; for maintaining the mouth of the sack or bag open
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65DCONTAINERS FOR STORAGE OR TRANSPORT OF ARTICLES OR MATERIALS, e.g. BAGS, BARRELS, BOTTLES, BOXES, CANS, CARTONS, CRATES, DRUMS, JARS, TANKS, HOPPERS, FORWARDING CONTAINERS; ACCESSORIES, CLOSURES, OR FITTINGS THEREFOR; PACKAGING ELEMENTS; PACKAGES
    • B65D33/00Details of, or accessories for, sacks or bags
    • B65D33/14Suspension means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B65CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
    • B65FGATHERING OR REMOVAL OF DOMESTIC OR LIKE REFUSE
    • B65F2210/00Equipment of refuse receptacles
    • B65F2210/18Suspending means

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Record Information Processing For Printing (AREA)

Abstract

화상형성장치 및 그의 메모리 관리방법이 개시된다. 본 발명에 의한 화상형성장치는, 적어도 하나의 JOB에 대한 인쇄 조건 정보 및 인쇄 데이터를 전송하는 호스트장치와의 통신 인터페이스를 제공하는 인터페이스부, 저장되는 정보의 해제 시점에 따라 할당 영역이 구분되며, 각각의 해당 영역에 인쇄 조건 정보, 인쇄 데이터 및 인쇄 데이터가 인쇄 가능한 포맷으로 처리된 이미지 데이터가 저장되는 메모리, 이미지 데이터를 인쇄 용지에 출력하는 엔진부 및 인터페이스부를 통해 수신한 인쇄 데이터를 이미지 데이터로 전환 처리하며, 메모리의 할당 및 해제 동작을 수행하는 프로세서를 포함한다. 여기에서 메모리는, 이미지 데이터 생성을 위한 에뮬레이션 처리를 위해 요구되며, 에뮬레이션 처리 종료 후 해제되는 제1 메모리 영역, 페이지별로 이미지 데이터가 소정 크기 단위로 저장되며, 페이지의 인쇄가 완료되면 해제되는 제2 메모리 영역 및 JOB에 대한 인쇄 조건 정보가 저장되며, JOB의 인쇄 완료 후 해제되는 제3 메모리 영역으로 분류되며, 각각의 메모리는 할당 받는 영역을 달리하여 관리된다.An image forming apparatus and a memory management method thereof are disclosed. In the image forming apparatus according to the present invention, an allocation unit is divided according to a printing condition information for at least one JOB and an interface unit for providing a communication interface with a host device that transmits print data, and a release point of stored information. Print data received through the print unit and the interface unit for printing the print condition information, the print data, and the image data processed in the format in which the print data can be printed, the engine unit for outputting the image data to the print paper, and the interface unit in each corresponding area. And a processor that performs the switching process and performs memory allocation and deallocation operations. Here, the memory is required for an emulation process for generating image data, and includes a first memory area which is released after the emulation process is finished and a second data which is stored in units of a predetermined size for each page, and released when the page is finished printing. The memory area and the printing condition information for the JOB are stored, and are classified into a third memory area which is released after the printing of the JOB is completed.

Description

화상형성장치 및 그의 메모리 관리방법{Image forming apparatus and the method of memory management thereof}Image forming apparatus and the method of memory management

본 발명은 화상형성장치 및 그의 메모리 관리 방법에 관한 것으로서, 보다 상세하게는 제한된 메모리를 기록되는 정보의 해제 시점에 따라 할당 영역을 구분하여 효율적으로 관리하는 화상형성장치 및 그의 메모리 관리 방법에 관한 것이다.BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an image forming apparatus and a memory management method thereof, and more particularly, to an image forming apparatus and a memory management method thereof, in which a limited memory is classified and efficiently managed according to a release point of recorded information. .

화상형성장치는 통신 인터페이스를 통해 호스트로부터 인쇄데이터를 수신하여 인쇄데이터에 대응하는 이미지를 인쇄용지와 같은 기록매체에 인쇄 처리하는 기기로 그 예로서 화상형성장치, 팩시밀리, 복합기 등이 있다.An image forming apparatus is a device that receives print data from a host through a communication interface and prints an image corresponding to the print data on a recording medium such as printing paper. Examples of the image forming apparatus include an image forming apparatus, a facsimile machine, a multifunction device, and the like.

화상형성장치는 이미지 처리 등과 같은 그들의 JOB을 수행하기 위해 많은 메모리를 요구한다. 이와 같이 메모리를 사용하여 인쇄 작업을 수행하는 장치에서는 메모리의 효율적인 관리가 시스템의 성능을 좌우하는 커다란 요소로 작용하므로, 필요로 하는 메모리를 효율적으로 제공해 줄 수 있는 메모리 관리 방법은 매우 중요하다. 일반적으로, 화상형성장치가 갖는 메모리는 한정적이기 때문에, 이들은 제한된 메모리를 동적으로 할당하고 해제하는 작업을 되풀이 하게 된다.Image forming apparatuses require a lot of memory to perform their JOB such as image processing and the like. In such a device that uses a memory to perform a print job, the effective management of the memory is a big factor in determining the performance of the system, so a memory management method that can efficiently provide the required memory is very important. In general, since the memory of the image forming apparatus is limited, they repeat the task of dynamically allocating and freeing the limited memory.

종래기술에 의한 메모리 관리는 메모리 초기화, 메모리 할당, 메모리 해제로 구성된다. 메모리 초기화는 동적 메모리 영역을 기설정된 메모리 관리 정책에 맞도록 초기화하여, 관리 영역내의 모든 영역이 할당될 수 있는 상태가 되도록 하는 것을 말한다. 그리고, 메모리 할당시에는 메모리 요구자로부터 저장될 데이터의 크기에 대한 정보를 입력 받아 그 크기에 적합한 메모리 영역을 검색하고, 그 영역에 대한 정보를 메모리 요구자에게 보낸다. 한편, 메모리 해제의 경우는 메모리 요구자의 요청에 따라 해당 주소의 해당 크기의 메모리를 해제하거나, 적절한 시점에서 더 이상 필요하지 않은 메모리 블록을 스스로 해제할 수도 있다.Memory management in the prior art consists of memory initialization, memory allocation, and memory release. Memory initialization refers to initializing a dynamic memory area in accordance with a predetermined memory management policy so that all areas within the management area can be allocated. When allocating the memory, the memory requester receives information about the size of data to be stored, searches for a memory area suitable for the size, and sends information about the area to the memory requester. On the other hand, in the case of memory release, a memory of a corresponding size of a corresponding address may be released according to a request of a memory requestor, or a memory block that is no longer needed at an appropriate time may be released by itself.

상기한 종래기술에 의하면, 할당과 해제가 반복됨에 따라서 메모리 파편화(fragmentation)가 발생하게 된다. 메모리 파편화가 발생하게 되면, 전체 할당 가능한 메모리가 할당시 요구되는 크기 이상이더라도, 연속적인 메모리 공간이 아니기 때문에 할당 요구에 응답할 수 없는 상태가 된다. 특히, 연속적인 페이지, 혹은 연속적인 JOB의 인쇄가 요청된 경우는 메모리 파편화는 더욱 심각한 문제가 된다. 이를 해결하기 위해서는 메모리 패킹(packing) 작업을 해야 하는데, 패킹 작업은 복잡하고, 처리 시간이 장시간 소요될 수 있기 때문에, 시스템의 전체적인 성능 저하를 가져올 수 있다는 문제점이 있다.According to the above-described prior art, memory fragmentation occurs as allocation and release are repeated. When memory fragmentation occurs, even if the total allocable memory is larger than or equal to the size required for allocation, it is not a continuous memory space and thus becomes unable to respond to the allocation request. In particular, fragmentation of memory becomes a more serious problem when continuous pages or continuous JOB printing is requested. In order to solve this problem, a memory packing operation must be performed. Since the packing operation is complicated and the processing time can be long, there is a problem that the overall performance of the system can be reduced.

본 발명은 상기한 문제점을 해결하기 위해 안출된 것으로서, 오버헤드를 줄이고 메모리 파편화를 최소한으로 감소시킴으로서, 효율적인 메모리 관리에 의한 향상된 성능을 갖는 화상형성장치 및 그의 메모리 관리방법을 제공하는 것을 목적으로 한다.SUMMARY OF THE INVENTION The present invention has been made to solve the above problems, and an object thereof is to provide an image forming apparatus and memory management method thereof having improved performance by efficient memory management by reducing overhead and minimizing memory fragmentation. .

상기한 목적을 달성하기 위해, 본 발명에 따른 화상형성장치는, 적어도 하나의 JOB에 대한 인쇄 조건 정보 및 인쇄 데이터를 전송하는 적어도 하나의 호스트장치와의 통신 인터페이스를 제공하는 인터페이스부, 저장되는 정보의 해제 시점에 따라 할당 영역이 구분되며, 각각의 해당 영역에 상기 인쇄 조건 정보, 상기 인쇄 데이터 및 상기 인쇄 데이터가 인쇄 가능한 포맷으로 처리된 이미지 데이터가 저장되는 메모리, 상기 이미지 데이터를 인쇄 용지에 출력하는 엔진부 및 상기 인터페이스부를 통해 수신한 상기 인쇄 데이터를 상기 이미지 데이터로 전환 처리하며, 상기 메모리의 할당 및 해제 동작을 수행하는 프로세서를 포함한다.In order to achieve the above object, the image forming apparatus according to the present invention, an interface unit for providing a communication interface with at least one host device for transmitting the print condition information and the print data for at least one JOB, the stored information The allocation area is divided according to the release time of the memory, the memory for storing the printing condition information, the print data and the image data processed in a format in which the print data is printable, and outputting the image data on a printing sheet. And a processor configured to convert the print data received through the engine unit and the interface unit into the image data, and to perform an allocation and releasing operation of the memory.

상기 메모리는, 상기 이미지 데이터 생성을 위한 에뮬레이션 처리를 위해 요구되며, 상기 에뮬레이션 처리 종료 후 해제되는 제1 메모리 영역, 페이지별로 상기 이미지 데이터가 연결 목록(Linked list) 형식의 소정 크기 단위로 저장되며, 상기 페이지의 인쇄가 완료되면 해제되는 제2 메모리 영역 및 상기 JOB에 대한 인쇄 조건 정보가 저장되며, 상기 JOB의 인쇄 완료 후 해제되는 제3 메모리 영역;로 분류되고, 상기 제1 및 제3 메모리 영역은 상기 메모리의 하위 어드레스부터 할당되며, 상기 제2 메모리 영역은 상기 메모리의 상위 어드레스부터 할당되는 것이 바람직하다.The memory is required for emulation processing for generating the image data, and the image data is stored in a predetermined size unit in a linked list format for each page of the first memory area and page released after the emulation processing is finished. A second memory area which is released when the printing of the page is completed and printing condition information for the JOB is stored, and a third memory area which is released after the printing of the JOB is completed; and is classified into the first and third memory areas. Is allocated from a lower address of the memory, and the second memory area is allocated from an upper address of the memory.

그리고, 상기 이미지 데이터의 인쇄가 완료되어 이에 대응하는 상기 제2 메모리 영역이 해제되면, 상기 소정 크기 단위로 구성된 마지막 어드레스의 상기 제2 메모리 영역의 이미지 데이터가 상기 해제된 어드레스로 이동되도록 설정한다. When the printing of the image data is completed and the corresponding second memory area is released, the image data of the second memory area of the last address configured in the predetermined size unit is moved to the released address.

한편, 본 발명에 따른 화상형성장치의 메모리 관리 방법은, (a) 메모리의 상위 및 하위 어드레스 중 어느 하나에서부터 메모리를 할당하여 적어도 하나의 호스트로부터 수신한 적어도 하나의 JOB에 대한 인쇄 데이터와 그의 인쇄 조건 정보를 저장하는 단계, (b) 상기 저장된 인쇄 데이터를 독출하여 인쇄 가능한 형식의 이미지 데이터를 생성한 후 상기 인쇄 데이터에 저장된 메모리를 해제하는 단계, (c) 메모리의 상위 및 하위 어드레스 중 상기 (a)단계의 어드레스와 다른 어드레스부터 메모리 할당을 하여 상기 이미지 데이터를 연결 목록(Linked list) 형식의 소정 크기 단위로 저장하는 단계, (d) 상기 이미지 데이터가 저장된 메모리를 인쇄 완료 후 해제하는 단계 및 (e) 상기 JOB의 수행이 완료되면, 상기 인쇄 조건 정보가 저장된 메모리를 해제하는 단계를 포함한다.On the other hand, the memory management method of the image forming apparatus according to the present invention, (a) the print data for at least one JOB received from at least one host by allocating the memory from any one of the upper and lower addresses of the memory and its printing Storing condition information; (b) reading the stored print data to generate image data in a printable format, and then releasing the memory stored in the print data; and (c) the upper and lower addresses of the memory; storing the image data in a predetermined size unit in a linked list format by allocating a memory from an address different from the address of step a), (d) releasing and then completing printing of the memory in which the image data is stored; (e) when the execution of the JOB is completed, releasing the memory in which the printing condition information is stored. It should.

그리고, 상기 이미지 데이터가 해제되면, 마지막 어드레스에 저장된 상기 소정 크기 단위의 이미지 데이터가 상기 해제된 어드레스로 이동하는 단계를 더 포함한다. When the image data is released, the method further includes moving the image data of the predetermined size unit stored in the last address to the released address.

이하에서는 첨부된 도면을 참조하여 본 발명을 보다 상세히 설명한다.Hereinafter, with reference to the accompanying drawings will be described the present invention in more detail.

도 1은 본 발명의 바람직한 일실시예에 따른 화상형성장치의 구성을 도시한 블록도이다. 도 1을 참조하면, 본 화상형성장치는 인터페이스부(10), ROM(20), RAM(30), 엔진부(40) 및 프로세서(50)를 포함한다.1 is a block diagram showing the configuration of an image forming apparatus according to a preferred embodiment of the present invention. Referring to FIG. 1, the image forming apparatus includes an interface unit 10, a ROM 20, a RAM 30, an engine unit 40, and a processor 50.

화상형성장치의 인쇄과정은, 먼저 사용자가 응용프로그램에서 인쇄명령을 내리면, 호스트컴퓨터는 호스트컴퓨터의 화상형성장치구동기(driver)를 통해 인쇄할 문서를 화상형성장치가 알 수 있는 명령어(이를테면 PCL 에뮬레이션인 경우 PCL 명령어)로 변환하여, 호스트컴퓨터의 직렬포트(serial port) 또는 병렬 포트(parallel port)를 통해 화상형성장치에 데이터를 다운로딩(downloading)한다.In the printing process of an image forming apparatus, first, when a user issues a printing command from an application program, the host computer uses a command of the image forming apparatus driver of the host computer to recognize a document to be printed (for example, PCL emulation). In this case, the data is downloaded to the image forming apparatus through a serial port or a parallel port of the host computer.

그러면, 화상형성장치의 프로세서(50)는 인터페이스부(10)를 통해 다운로딩된 데이터를 해석하여, 한 페이지에 대한 데이터를 화상형성장치가 알 수 있는 비트맵 형태의 이미지 데이터로 전환한 후에, 화상형성장치의 엔진부(40)에 전송하여 인쇄를 수행한다.Then, the processor 50 of the image forming apparatus interprets the downloaded data through the interface unit 10 and converts the data for one page into image data in a bitmap form that the image forming apparatus can know. Transfer to the engine unit 40 of the image forming apparatus to perform printing.

화상형성장치는, JOB 수행을 위한 응용프로그램들과 JOB 수행 과정 중 생성되는 데이터들을 저장하기 위한 메모리 수단이 필요한데, 본 발명에서는 ROM(20) 및 RAM(30)을 사용한다.The image forming apparatus needs application programs for executing the JOB and memory means for storing data generated during the JOB process. The present invention uses the ROM 20 and the RAM 30.

ROM(20)에는 JOB 수행을 위한 응용프로그램들, 특히 호스트컴퓨터로부터 수신한 인쇄 데이터를 비트맵 형태로 전환하기 위한 에뮬레이션 응용프로그램이 저장된다.The ROM 20 stores application programs for performing JOB, in particular, an emulation application program for converting print data received from a host computer into a bitmap form.

RAM(30)에는 인쇄 데이터, 인쇄 조건 정보 및 한 페이지 단위로 구성되는 비트맵 형태의 데이터가 저장되며, 또한 RAM(30)은 에뮬레이션 응용프로그램의 실행을 위한 공간을 제공한다.The RAM 30 stores print data, print condition information, and data in the form of a bitmap constituted by one page. The RAM 30 also provides a space for executing an emulation application program.

프로세서(50)는, RAM(30)을 초기화하며, 후술할 메모리 관리 방법에 따라 할당되지 않은 영역을 검색하여 메모리를 할당하여 데이터들을 저장하고 해제하는 동작을 수행한다.The processor 50 initializes the RAM 30, searches for an unallocated area, allocates memory, and stores and releases data according to a memory management method to be described later.

본 발명에서는 메모리의 효율적인 관리를 위해, RAM(30)에 저장되는 정보의 해제 시점에 따라 RAM(30)의 할당 영역을 구분하여 관리한다. 메모리의 해제 시점에 따라 메모리를 임시 할당 메모리, 페이지 메모리 및 JOB 메모리로 구분한다.In the present invention, to efficiently manage the memory, the allocation area of the RAM 30 is divided and managed according to the release time of the information stored in the RAM 30. The memory is divided into temporary allocated memory, page memory, and JOB memory according to the memory release time.

임시 할당 메모리는 에뮬레이션 처리를 위해 요구되며, 에뮬레이션 처리 종료 후 해제된다. 그리고, 페이지 메모리는 페이지별로 비트맵 형태의 데이터가 소정 크기 단위로 할당 받아, 페이지의 인쇄가 완료되면 해제된다. 한편, JOB 메모리는 JOB에 대한 포트, 패턴 등의 인쇄 조건 정보의 저장에 할당되며, JOB의 인쇄 완료 후 해제된다.Temporary allocation memory is required for the emulation process and is released after the emulation process ends. The page memory receives bitmap data in units of a predetermined size for each page and is released when printing of the page is completed. On the other hand, the JOB memory is allocated for storing printing condition information such as a port and a pattern for the JOB, and is released after the printing of the JOB is completed.

CPU(50)는 이러한 메모리들이 RAM(30)의 서로 다른 영역에 할당되도록 관리한다. 도 2를 참조하면, 페이지 메모리는 RAM(30)의 할당 가능 영역중 상위 어드레스부터 순차로 제 1영역(31)에 메모리를 할당 받는다. 페이지 메모리는 일반적으로 비트맵 형태의 각각의 페이지에 대한 이미지 데이터가 일정 크기의 크기(band) 단위로 처리된다. 이미지 데이터는 압축(compressed)방식 또는 디스플레이 리스트(display list) 방식으로 처리될 수 있다. 한편, 임시 할당 메모리 및 JOB 메모리는 RAM(30)의 할당 가능 영역중 하위 어드레스부터 순차로 제2 영역(32)에 메모리를 할당 받는다.The CPU 50 manages such memories to be allocated to different areas of the RAM 30. Referring to FIG. 2, the page memory is sequentially allocated to the first region 31 from the upper address among the allocable regions of the RAM 30. In the page memory, image data of each page in the form of a bitmap is generally processed in units of a predetermined size band. The image data may be processed in a compressed manner or a display list manner. On the other hand, the temporary allocation memory and the JOB memory are sequentially allocated memory to the second area 32 from the lower address among the allocable areas of the RAM 30.

도 3a는 RAM(30)에 페이지 메모리가 할당된 상태를 나타내는 일예를 도시한 도면이다. 도 3a에서 도시한 RAM(30)에는 3페이지의 JOB1의 이미지 데이터 및 2페이지 이상의 JOB2의 이미지 데이터(31-4, 31-5, 31-6)가 제1 영역(31)에 페이지 메모리(31-1, 31-2, 31-3, 31-4, 31-5, 31-6)를 할당 받아 저장된 상태이다. 이 경우, 제2 영역에는 JOB1 및 JOB2에 대한 인쇄 조건 정보가 저장된다.3A is a diagram illustrating an example of a state in which a page memory is allocated to the RAM 30. In the RAM 30 illustrated in FIG. 3A, image data of three pages of JOB1 and image data of four or more pages of JOB2 31-4, 31-5, and 31-6 are stored in the first area 31 in the page memory 31. -1, 31-2, 31-3, 31-4, 31-5, 31-6) is allocated and stored. In this case, printing condition information for JOB1 and JOB2 is stored in the second area.

도 3b는 JOB1의 1페이지가 인쇄 완료된 후의 RAM(30)의 메모리 할당 상태를 나타낸다. JOB1의 1페이지가 인쇄 완료되면, 첫번째 어드레스에 할당된 JOB1의 1페이지에 대한 페이지 메모리(31-1)는 해제되고, 일정 크기 단위의 마지막 페이지 메모리(31-5)에 저장된 JOB2의 2페이지에 대한 이미지 데이터가 첫번째 어드레스의 페이지 메모리(31-1')를 할당 받아 저장된다. 그리고, 다섯번째 페이지 메모리(31-5)는 해제되고, 여섯번째 페이지 메모리(31-6)에 저장된 이미지 데이터는 다섯번째 어드레스의 페이지 메모리(31-5')를 할당 받아 저장된다. 이와 같이 할당된 메모리 사이에 할당되지 않은 메모리의 발생을 막음으로서, 할당 가능한 제2 영역을 보다 넓게 확보할 수 있게 된다.3B shows a memory allocation state of the RAM 30 after one page of JOB1 has been printed. When one page of JOB1 has been printed, the page memory 31-1 for one page of JOB1 assigned to the first address is released, and the second page of JOB2 stored in the last page memory 31-5 of a certain size unit is released. Image data is allocated by storing page memory 31-1 'of the first address. The fifth page memory 31-5 is released, and the image data stored in the sixth page memory 31-6 is allocated by storing the page memory 31-5 ′ of the fifth address. By preventing the occurrence of unallocated memory among the allocated memories in this way, it is possible to secure a second allocable area.

도 3c는 JOB1과 JOB2의 1페이지가 인쇄 완료되고, 2페이지의 JOB3의 이미지 데이터와 1페이지 이상의 JOB4의 이미지 데이터가 생성되어 저장된 후의 RAM(30)의 메모리 할당 상태를 나타낸다. 이때 제2 영역에 할당된 JOB1의 인쇄 조건 정보에 대한 JOB 메모리는 해제된다. 그런데, 이미지 데이터가 한 페이지씩 인쇄될 때마다 도 3b에서 설명한 바와 같은 동작이 이루어 지면, 일정 크기 단위 보다 작은 다수개의 할당되지 않은 메모리 파편이 발생한다. 3C shows a memory allocation state of the RAM 30 after one page of JOB1 and JOB2 has been printed, image data of two pages of JOB3 and image data of one or more pages of JOB4 are generated and stored. At this time, the JOB memory for printing condition information of JOB1 allocated to the second area is released. However, when an operation as described in FIG. 3B is performed every time image data is printed one page at a time, a plurality of unallocated memory fragments smaller than a predetermined size unit may be generated.

이와 같이 메모리 파편이 발생하면, 연결 목록(linked list) 방식으로 메모리를 할당한다. 여기에서 연결 목록이란, 각 데이터 요소가 포인터(pointer)에 의해 다른 데이터 요소에 연결되는 목록으로서, 데이터 요소가 기억 장치 중 여기저기 분산되어 있지만 각 데이터 요소에는 목록 중 다른 데이터 요소의 기억 장소를 가리키는 포인터가 수용되어 있어서 그 포인터의 순서에 따라서 데이터 요소의 물리적 위치는 변경하지 않고 데이터 요소를 삽입, 삭제, 분할, 결합 및 검색할 수 있고 순서를 변경할 수 있게 하는 목록이다. When a memory fragment occurs in this way, memory is allocated in a linked list manner. In this case, a linked list is a list in which each data element is linked to another data element by a pointer. Although the data elements are distributed throughout the storage device, each data element points to a storage place of another data element in the list. It is a list that contains pointers that allow you to insert, delete, split, combine, and search for data elements without changing their physical positions, and to change the order, depending on the order of the pointers.

예를들면, 도 3c에서 JOB3의 1페이지의 이미지 데이터는 세번째 어드레스의 페이지 메모리(31-3")와 일곱번째 어드레스의 페이지 메모리(31-7")에 저장되어 있으며, 세번째 어드레스의 페이지 메모리(31-3")는 나머지 데이터가 저장된 일곱번째 어드레스에 대한 정보를 포함하고 있다.For example, in FIG. 3C, image data of one page of JOB3 is stored in the page memory 31-3 "of the third address and the page memory 31-7" of the seventh address, and the page memory of the third address ( 31-3 ") includes information on the seventh address where the remaining data is stored.

도 4는 본 발명의 바람직한 일실시예에 따른 화상형성장치의 메모리 관리방법을 설명하는 흐름도이다. 호스트컴퓨터로부터 소정 JOB에 대한 인쇄 요청이 있으면, 프로세서(50)는 인터페이스부(10)를 통해 요청된 JOB에 대한 인쇄 데이터를 수신한다(S100).4 is a flowchart illustrating a memory management method of an image forming apparatus according to an exemplary embodiment of the present invention. If there is a print request for a predetermined JOB from the host computer, the processor 50 receives the print data for the requested JOB through the interface unit 10 (S100).

다음으로, 프로세서(50)는 RAM(30)에 메모리를 할당하여 수신한 인쇄데이터 및 이와 함께 전송된 요청된 JOB에 대한 포트, 패턴 등의 인쇄 조건 정보를 저장한다(S110). 이때, 할당되는 메모리는 RAM(30)의 할당 가능한 영역의 하위 어드레스부터 할당된다. 또한, 하위 어드레스 영역에 수신한 데이터를 비트맵 형식의 이미지 데이터로 전환하기 위한 장소를 제공하는 임시 할당 메모리 영역이 할당된다. Next, the processor 50 allocates memory to the RAM 30 and stores the print data received and the print condition information such as a port, a pattern, and the like for the requested JOB transmitted thereto (S110). At this time, the allocated memory is allocated from the lower address of the assignable area of the RAM 30. In addition, a temporary allocation memory area is allocated to the lower address area, which provides a place for converting the received data into image data in bitmap format.

프로세서(50)는 임시 할당 메모리를 이용하여 페이지 단위로 인쇄 데이터를 비트맵 이미지로 전환한다(S120). 이때, 생성된 비트맵 이미지에 대한 인쇄 데이터가 저장된 메모리는 해제되며, 비트맵 이미지는 RAM(30)의 할당 가능한 영역의 상위 어드레스부터 할당된 페이지 메모리에 저장한다(S130). 각 페이지는 일정 크기의 크기 단위로 처리되므로 각 크기는 연결목록 방식으로 연결된다. The processor 50 converts the print data into a bitmap image in units of pages using the temporary allocation memory (S120). At this time, the memory in which the print data for the generated bitmap image is stored is released, and the bitmap image is stored in the allocated page memory starting from the upper address of the assignable area of the RAM 30 (S130). Each page is processed in a certain size unit, so each size is linked.

그리고, 프로세서(50)는 페이지 단위의 비트맵 이미지를 하나씩 독출하여 인쇄부(40)로 보내 인쇄 출력한다. 비트맵 이미지의 인쇄가 완료되면, 이에 대응되는 페이지 메모리는 해제된다(S140). 이때, 일정 크기 크기 단위를 갖는 마지막 어드레스의 비트맵 이미지는 S140 단계에서 해제된 어드레스로 메모리를 할당 받아 저장되고 마지막 어드레스의 메모리는 해제된다.The processor 50 reads the bitmap images in units of pages one by one and sends them to the printing unit 40 for printing. When the printing of the bitmap image is completed, the page memory corresponding thereto is released (S140). In this case, the bitmap image of the last address having a certain size unit is allocated and stored as an address released in step S140 and the memory of the last address is released.

한 JOB에 대한 모든 페이지의 인쇄 작업이 완료 여부를 검출하고(S160), 검출결과 JOB이 완료되었으면 인쇄 조건 정보가 저장된 JOB 메모리를 해제한다(S170). 이와 같이 메모리의 해제 시점에 따라 메모리를 분류하여 할당 영역을 달리하고 작업의 수행 과정에서 비할당 영역이 할당 영역 사이에 존재하지 않도록, 즉 메모리의 파편이 최소화 되도록 메모리를 관리한다.It is detected whether a print job of all pages for one JOB is completed (S160). If the JOB is completed as a result of the detection, the JOB memory in which the printing condition information is stored is released (S170). In this way, the memory is classified according to the release time of the memory to change the allocated area, and the memory is managed so that the unallocated area does not exist between the allocated areas in the process of performing a task, that is, the fragment of the memory is minimized.

이상에서 설명한 바와 같이, 본 발명에 의하면, 제한된 메모리를 저장되는 정보의 해제 시점에 따라 할당 영역을 구분하여 관리하고 연결목록 방식으로 메모리를 관리함으로서 메모리의 파편화를 초소화 할 수 있고 오버헤드를 줄일 수 있다. As described above, according to the present invention, it is possible to minimize the fragmentation of the memory and to reduce overhead by managing the allocated area according to the release time of the stored information and managing the memory by the linked list method. Can be.

또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.In addition, although the preferred embodiment of the present invention has been shown and described above, the present invention is not limited to the specific embodiments described above, but the technical field to which the invention belongs without departing from the spirit of the invention claimed in the claims. Of course, various modifications can be made by those skilled in the art, and these modifications should not be individually understood from the technical spirit or the prospect of the present invention.

도 1은 본 발명의 바람직한 일실시예에 따른 화상형성장치의 구성을 도시한 블록도,1 is a block diagram showing the configuration of an image forming apparatus according to an embodiment of the present invention;

도 2는 도 1에 도시된 RAM의 메모리 할당 방법을 제공하는 도면,2 is a diagram illustrating a memory allocation method of a RAM illustrated in FIG. 1;

도 3a 내지 도 3c는 도 1에 도시된 RAM에 할당된 페이지 메모리의 상태를 나타내는 일예들을 도시한 도면, 그리고, 3A to 3C are diagrams showing examples of a state of a page memory allocated to a RAM illustrated in FIG. 1, and

도 4는 본 발명의 바람직한 일실시예에 따른 화상형성장치의 메모리 관리방법을 설명하는 흐름도이다.4 is a flowchart illustrating a memory management method of an image forming apparatus according to an exemplary embodiment of the present invention.

Claims (5)

적어도 하나의 JOB에 대한 인쇄 조건 정보 및 인쇄 데이터를 전송하는 적어도 하나의 호스트장치와의 통신 인터페이스를 제공하는 인터페이스부;An interface unit for providing a communication interface with at least one host device that transmits print condition information and print data for at least one JOB; 저장되는 정보의 해제 시점에 따라 할당 영역이 구분되며, 각각의 해당 영역에 상기 인쇄 조건 정보, 상기 인쇄 데이터 및 상기 인쇄 데이터가 인쇄 가능한 포맷으로 처리된 이미지 데이터가 저장되는 메모리;An allocation area is divided according to a release time point of the stored information, and a memory storing the printing condition information, the print data, and image data processed in a format in which the print data is printable in each corresponding area; 상기 이미지 데이터를 인쇄 용지에 출력하는 엔진부; 및 An engine unit for outputting the image data on a printing sheet; And 상기 인터페이스부를 통해 수신한 상기 인쇄 데이터를 상기 이미지 데이터로 전환 처리하며, 상기 메모리의 할당 및 해제 동작을 수행하는 프로세서;를 포함하는 것을 특징으로 하는 화상형성장치.And a processor configured to convert the print data received through the interface unit into the image data, and to perform an allocation and release operation of the memory. 제 1항에 있어서,The method of claim 1, 상기 메모리는, The memory, 상기 이미지 데이터 생성을 위한 에뮬레이션 처리를 위해 요구되며, 상기 에뮬레이션 처리 종료 후 해제되는 제1 메모리 영역;A first memory area required for emulation processing for generating the image data and released after completion of the emulation processing; 페이지별로 상기 이미지 데이터가 연결 목록(Linked list) 형식의 소정 크기 단위로 저장되며, 상기 페이지의 인쇄가 완료되면 해제되는 제2 메모리 영역; 및A second memory area in which the image data is stored in units of a predetermined size in a linked list format for each page and is released when printing of the page is completed; And 상기 JOB에 대한 인쇄 조건 정보가 저장되며, 상기 JOB의 인쇄 완료 후 해제되는 제3 메모리 영역;로 분류되며,A third memory area in which printing condition information on the JOB is stored and released after the printing of the JOB is completed; 상기 제1 및 제3 메모리 영역은 상기 메모리의 하위 어드레스부터 할당되며, 상기 제2 메모리 영역은 상기 메모리의 상위 어드레스부터 할당되는 것을 특징으로 하는 화상형성장치.And the first and third memory areas are allocated from a lower address of the memory, and the second memory area is allocated from an upper address of the memory. 제 2항에 있어서,The method of claim 2, 상기 이미지 데이터의 인쇄가 완료되어 이에 대응하는 상기 제2 메모리 영역이 해제되면, 상기 소정 크기 단위로 구성된 마지막 어드레스의 상기 제2 메모리 영역의 이미지 데이터가 상기 해제된 어드레스로 이동하는 것을 특징으로 하는 화상형성장치.When the printing of the image data is completed and the corresponding second memory area is released, the image data of the second memory area of the last address configured in the predetermined size unit is moved to the released address. Forming device. (a) 메모리의 상위 및 하위 어드레스 중 어느 하나에서부터 메모리를 할당하여 적어도 하나의 호스트로부터 수신한 적어도 하나의 JOB에 대한 인쇄 데이터와 그의 인쇄 조건 정보를 저장하는 단계;(a) allocating a memory from any one of upper and lower addresses of the memory and storing print data and print condition information of at least one JOB received from at least one host; (b) 상기 저장된 인쇄 데이터를 독출하여 인쇄 가능한 형식의 이미지 데이터를 생성한 후 상기 인쇄 데이터에 저장된 메모리를 해제하는 단계;(b) reading the stored print data to generate image data in a printable format and then releasing the memory stored in the print data; (c) 메모리의 상위 및 하위 어드레스 중 상기 (a)단계의 어드레스와 다른 어드레스부터 메모리 할당을 하여 상기 이미지 데이터를 연결 목록(Linked list) 형식의 소정 크기 단위로 저장하는 단계; (c) assigning a memory from an address different from the address of step (a) among upper and lower addresses of the memory and storing the image data in a predetermined size unit in a linked list format; (d) 상기 이미지 데이터가 저장된 메모리를 인쇄 완료 후 해제하는 단계; 및(d) releasing after printing the memory in which the image data is stored; And (e) 상기 JOB의 수행이 완료되면, 상기 인쇄 조건 정보가 저장된 메모리를 해제하는 단계;를 포함하는 것을 특징으로 하는 화상형성장치의 메모리 관리 방법.and (e) releasing the memory in which the printing condition information is stored when the JOB is completed. 제 4항에 있어서,The method of claim 4, wherein 상기 이미지 데이터가 해제되면, 마지막 어드레스에 저장된 상기 소정 크기 단위의 이미지 데이터가 상기 해제된 어드레스로 이동하는 단계를 더 포함하는 것을 특징으로 하는 화상형성장치의 메모리 관리 방법.And if the image data is released, moving the image data of a predetermined size unit stored at a last address to the released address.
KR1020040000541A 2004-01-06 2004-01-06 Image forming apparatus and the method of memory management thereof KR20050072224A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020040000541A KR20050072224A (en) 2004-01-06 2004-01-06 Image forming apparatus and the method of memory management thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040000541A KR20050072224A (en) 2004-01-06 2004-01-06 Image forming apparatus and the method of memory management thereof

Publications (1)

Publication Number Publication Date
KR20050072224A true KR20050072224A (en) 2005-07-11

Family

ID=37261723

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040000541A KR20050072224A (en) 2004-01-06 2004-01-06 Image forming apparatus and the method of memory management thereof

Country Status (1)

Country Link
KR (1) KR20050072224A (en)

Similar Documents

Publication Publication Date Title
JP5475307B2 (en) Memory management method, computer readable medium and apparatus for rasterization
JP5663941B2 (en) Printed document conversion apparatus and program
US7055015B2 (en) Information processing apparatus in which processes can reduce overhead of memory access and efficiently share memory
JP5680841B2 (en) Optimal memory allocation unit system and method
KR100490412B1 (en) Method of controlling printing job schedule and print system employing the same
JP5482528B2 (en) Printed document conversion apparatus and program
US7911639B2 (en) Image forming device
JP5832556B2 (en) Image processing apparatus and image forming apparatus
JP5642951B2 (en) PIXMAP MANAGEMENT METHOD, PROGRAM, AND RECORDING MEDIUM CONTAINING THE PROGRAM
US8085426B2 (en) Intelligent page buffer allocation
EP2808798B1 (en) Memory management apparatus and process for moving, expanding or writing of a virtual area
KR20050072224A (en) Image forming apparatus and the method of memory management thereof
JPH11157146A (en) Method for processing image of printer and printer
JP7158656B2 (en) Image forming apparatus, image forming method and image forming program
JP2006344184A (en) Image formation device
JP2011039790A (en) Virtual machine image transfer device, method and program
JP6078954B2 (en) Image processing device
JPH03265025A (en) Control system for memory
JPH03114856A (en) Printer data management system
JP3703227B2 (en) Information processing apparatus and information transfer method thereof
JP5787211B2 (en) Image processing apparatus and image processing program
JP2001213011A (en) Method for managing memory and imaging apparatus
JP2003015835A (en) Printing system
JPH05100941A (en) Managing method for memory area
JPH10307695A (en) Printer device and printer control method

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application