KR20180045557A - The Apparatus For Memory - Google Patents

The Apparatus For Memory Download PDF

Info

Publication number
KR20180045557A
KR20180045557A KR1020160140034A KR20160140034A KR20180045557A KR 20180045557 A KR20180045557 A KR 20180045557A KR 1020160140034 A KR1020160140034 A KR 1020160140034A KR 20160140034 A KR20160140034 A KR 20160140034A KR 20180045557 A KR20180045557 A KR 20180045557A
Authority
KR
South Korea
Prior art keywords
area
memory device
size information
volatile memory
image
Prior art date
Application number
KR1020160140034A
Other languages
Korean (ko)
Other versions
KR102571501B1 (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 KR1020160140034A priority Critical patent/KR102571501B1/en
Publication of KR20180045557A publication Critical patent/KR20180045557A/en
Application granted granted Critical
Publication of KR102571501B1 publication Critical patent/KR102571501B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0653Monitoring storage devices or systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

As the size of partitions of a nonvolatile memory device can be flexibly varied, a user is able to secure a more available space when storing more data, and stoppage of the system can be prevented when image upgrade is performed. Accordingly, an embodiment of the present invention relates to the nonvolatile memory device mounted in an electric device. The memory device comprises: an image area in which an image including a boot loader is installed; a free area in which data generated by use of a user are stored; and an information storage area in which usable space size information and partition size information are stored. The image area, the free area, and the information storage area are divided by the partitions. The sizes of usable spaces and free spaces of the image area and the free area are monitored by a control unit, mounted in the electric device, in real time. When it is determined that re-partitioning needs to be performed by the control unit, the usable space size information and the partition size information are updated. When the electric device is rebooted, the boot loader installed in the image area loads the updated usable space size information and the updated partition size information and performs the re-partitioning.

Description

메모리 장치{The Apparatus For Memory}[0001] The present invention relates to a memory device,

본 발명은 메모리 장치에 관한 것으로서, 보다 상세하게는 파티션의 사이즈가 유동적으로 변동될 수 있어, 하나의 영역에서 여유 공간이 필요하면, 나머지 하나의 영역에 존재하는 여유 공간을 활용할 수 있는 메모리 장치에 관한 것이다.The present invention relates to a memory device, and more particularly, to a memory device that can utilize a free space existing in one area when a size of a partition can be flexibly changed and a spare area is required in one area will be.

임베디드 시스템(Embedded System)이란, 미리 정해진 특정 기능을 수행하기 위해 각종 전자제품이나 장치 등에 프로세서를 내장하여 장치를 조작하는 제어시스템이다. 임베디드 시스템은 MCU(Main Control Unit)와 그 MCU를 구동하여 특정한 기능을 수행하도록 프로그램을 탑재함으로써 해당 장치의 용도에 맞는 기본적인 컴퓨팅 능력을 가지고 그 용도에 맞는 어플리케이션을 이용하여 제어 동작을 수행하게 된다.An embedded system is a control system for operating a device by incorporating a processor in various electronic products or devices in order to perform predetermined functions. The embedded system includes a main control unit (MCU) and a program for performing a specific function by driving the MCU. Thus, the basic system has the basic computing ability suitable for the purpose of the device, and performs the control operation using the application suitable for the purpose.

이러한 임베디드 시스템은 임베디드 리눅스(Embedded Linux)를 OS(운영체제)로 사용하고, 운영체제와 프로그램을 저장하기 위해 메모리 장치를 통해 프로그램과 리소스를 저장한다. 최근 하드웨어의 소형화에 따라, 이러한 임베디드 시스템도 크기가 작은 메모리를 사용하며 단가를 낮추고 성능이 최적화되도록 구현하여야 한다. 따라서 임베디드 시스템에서는 저장공간으로 플래시 메모리(Flash Memory)를 많이 사용하고 있으며, 프로그램의 동작을 위해서 DDR 메모리를 사용하고 있다.These embedded systems use Embedded Linux as an operating system (OS) and store programs and resources through memory devices to store operating systems and programs. In recent years, with the miniaturization of hardware, such an embedded system must also use a small-sized memory, and should be implemented to reduce the unit cost and optimize the performance. Therefore, in the embedded system, a lot of flash memory is used as the storage space, and the DDR memory is used for the operation of the program.

플래시 메모리는 작고 가벼우며, 비휘발성이면서도 전력 소모가 적고 충격에 강하다. 이러한 장점 때문에 최근 휴대폰이나 디지털 카메라 등의 휴대 기기의 저장 장치로 많이 사용되고 있다. 이러한 플래시 메모리를 하드 디스크와 같이 사용하기 위하여 MTD(Memory Technology Device)를 사용하게 된다. MTD란 다양한 메모리 형태의 장치를 지원하기 위해 만들어진 기술이며, 플래시 메모리는 MTD에 의해 MTD 파티션(MTD Partition)이라고 부르는 몇 개의 부분들로 나누어져 있고, MTD 서브시스템이 플래시 메모리의 MTD 파티션을 지원한다.Flash memory is small, lightweight, nonvolatile, low in power consumption, and impact resistant. Due to these advantages, it is widely used as a storage device for portable devices such as mobile phones and digital cameras. In order to use such a flash memory with a hard disk, an MTD (Memory Technology Device) is used. MTD is a technology designed to support various types of memory devices. Flash memory is divided into several parts called MTD partitions by MTD, and MTD subsystem supports MTD partitions of flash memory .

그러나 종래에는 각 MTD 파티션마다 사이즈(Size)가 미리 할당이 되도록 세팅되어 있었다. 따라서 플래시 메모리의 하나의 영역에서 여유 공간이 필요한 경우에, 전체적으로는 여유 공간이 있음에도 불구하고 다른 영역에 존재하는 여유 공간을 활용할 수 없어, 문제가 되었다. 또한 DDR 메모리도 하나의 단일 공간으로 사용되어지는 경우가 많고, 분할을 시켜 여러 개의 영역으로 나누더라도 공간을 변경하지 못해 효율적으로 메모리 공간을 활용하지 못하는 단점이 있다.However, conventionally, each MTD partition has been set so that a size is allocated in advance. Therefore, when a spare area is required in one area of the flash memory, the spare area existing in another area can not be used despite the spare area as a whole. Also, the DDR memory is often used as a single space, and even if it is divided into a plurality of areas, the memory space can not be efficiently used because the space can not be changed.

한국공개공보 제 2009-0060774 호Korean Laid-Open Publication No. 2009-0060774 한국공개공보 제 2013-0075018 호Korean Laid-Open Publication No. 2013-0075018

본 발명이 해결하고자 하는 과제는, 파티션의 사이즈가 유동적으로 변동될 수 있어, 하나의 영역에서 여유 공간이 필요하면, 나머지 하나의 영역에 존재하는 여유 공간을 활용할 수 있는 메모리 장치를 제공하는 것이다.SUMMARY OF THE INVENTION It is an object of the present invention to provide a memory device in which the size of partitions can be flexibly changed and a free space existing in one area can be utilized when a spare area is required in one area.

본 발명의 과제들은 이상에서 언급한 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The problems of the present invention are not limited to the above-mentioned problems, and other problems not mentioned can be clearly understood by those skilled in the art from the following description.

상기 과제를 해결하기 위한 본 발명의 실시예에 따른 메모리 장치는 전자 기기에 내장되는 메모리 장치에 있어서, 부트로더를 포함하는 이미지가 설치되는 이미지 영역; 사용자의 사용에 의해 발생하는 데이터가 저장되는 프리 영역; 및 사용 공간 사이즈 정보 및 파티션 사이즈 정보를 저장하는 정보 저장 영역을 포함하고, 상기 이미지 영역, 상기 프리 영역 및 상기 정보 저장 영역은, 각각 파티션들로 분할되어 형성되되, 상기 전자 기기에 내장된 제어부에 의해 상기 이미지 영역 및 상기 프리 영역의 사용 공간 및 여유 공간 사이즈가 실시간으로 모니터링 되고, 상기 제어부에 의해 재파티셔닝의 수행이 필요한 것으로 판단되면, 상기 사용 공간 사이즈 정보 및 상기 파티션 사이즈 정보가 업데이트되며, 상기 전자 기기가 재부팅되면, 상기 이미지 영역에 설치된 상기 부트로더가 업데이트된 상기 사용 공간 사이즈 정보 및 상기 파티션 사이즈 정보를 로딩하여 재파티셔닝을 수행한다.According to an aspect of the present invention, there is provided a memory device embedded in an electronic device, the memory device including: an image area in which an image including a boot loader is installed; A free area in which data generated by use of the user is stored; And an information storage area for storing usage space size information and partition size information, wherein the image area, the free space and the information storage area are divided into partitions, and the control part built in the electronic device Wherein the used space size information and the partition size information are updated when the used space and the free space size of the image area and the free space are monitored in real time and it is determined that the re-partitioning needs to be performed by the controller, When the electronic device is rebooted, the boot loader installed in the image area loads the updated used space size information and the partition size information to perform re-partitioning.

본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.Other specific details of the invention are included in the detailed description and drawings.

본 발명의 실시예들에 의하면 적어도 다음과 같은 효과가 있다.The embodiments of the present invention have at least the following effects.

비휘발성 메모리 장치의 파티션의 사이즈가 유동적으로 변동될 수 있으므로, 사용자가 데이터를 더 저장하고자 할 때 여유 공간을 더 확보할 수 있고, 이미지 업그레이드를 수행할 때 시스템이 정상적으로 작동하지 않는 것을 방지할 수 있다.Since the size of the partition of the nonvolatile memory device can be flexibly varied, it is possible to secure more free space when the user wants to store more data, and to prevent the system from operating normally when performing the image upgrade .

나아가, 휘발성 메모리 장치의 파티션의 사이즈도 유동적으로 변동될 수 있으므로, OS의 동작 속도가 저하되는 것을 방지하거나, 영상 처리의 속도가 저하되는 것을 방지할 수 있다.Furthermore, since the size of the partition of the volatile memory device can also be flexibly varied, the operating speed of the OS can be prevented from being lowered or the speed of image processing can be prevented from being lowered.

본 발명에 따른 효과는 이상에서 예시된 내용에 의해 제한되지 않으며, 더욱 다양한 효과들이 본 명세서 내에 포함되어 있다.The effects according to the present invention are not limited by the contents exemplified above, and more various effects are included in the specification.

도 1은 본 발명의 일 실시예에 따른 저장부(1)가 장착된 카메라의 구성을 나타낸 블록도이다.
도 2는 본 발명의 일 실시예에 따른 저장부(1)의 상세한 구성을 나타낸 블록도이다.
도 3은 본 발명의 일 실시예에 따른 비휘발성 메모리 장치(11)의 MTD 파티션 분할을 도시한 테이블이다.
도 4는 본 발명의 일 실시예에 따른 비휘발성 메모리 장치(11)의 구성을 나타내는 개념도이다.
도 5는 본 발명의 일 실시예에 따른 정보 저장 영역(114)의 상세한 구성을 나타낸 블록도이다.
도 6은 본 발명의 다른 실시예에 따른 비휘발성 메모리 장치(11)의 구성을 나타내는 개념도이다.
도 7은 본 발명의 일 실시예에 따른 프리 영역(112)에 여유 공간(1122)이 부족한 경우를 나타내는 개념도이다.
도 8은 본 발명의 일 실시예에 따른 이미지 영역(111)의 여유 공간(1115)을 체크하는 모습을 나타내는 개념도이다.
도 9는 본 발명의 일 실시예에 따른 비휘발성 메모리 장치(11)를 재파티셔닝하여 프리 영역(112)의 여유 공간(1122)을 확보하는 모습을 나타내는 개념도이다.
도 10은 본 발명의 일 실시예에 따른 비휘발성 메모리 장치(11)의 재파티셔닝이 완료된 모습을 나타낸 개념도이다.
도 11은 본 발명의 일 실시예에 따른 이미지 영역(111)에 여유 공간(1122)이 부족한 경우를 나타내는 개념도이다.
도 12는 본 발명의 일 실시예에 따른 비휘발성 메모리 장치(11)를 재파티셔닝하여 이미지 영역(111)의 여유 공간(1112)을 확보하는 모습을 나타내는 개념도이다.
도 13은 본 발명의 일 실시예에 따른 비휘발성 메모리 장치(11)의 재파티셔닝이 완료된 모습을 나타낸 개념도이다.
도 14는 본 발명의 일 실시예에 따른 비휘발성 메모리 장치(11) 및 휘발성 메모리 장치(12)의 구성을 나타내는 개념도이다.
도 15는 본 발명의 일 실시예에 따른 휘발성 메모리 장치(12)의 제1 영역(121)에 여유 공간(1212)이 부족한 경우를 나타내는 개념도이다.
도 16은 본 발명의 일 실시예에 따른 휘발성 메모리 장치(12)를 재파티셔닝하여 제1 영역(121)의 여유 공간(1211)을 확보하는 모습을 나타내는 개념도이다.
도 17은 본 발명의 일 실시예에 따른 휘발성 메모리 장치(12)의 재파티셔닝이 완료된 모습을 나타낸 개념도이다.
1 is a block diagram showing a configuration of a camera equipped with a storage unit 1 according to an embodiment of the present invention.
2 is a block diagram showing a detailed configuration of the storage unit 1 according to an embodiment of the present invention.
3 is a table showing MTD partitioning of the nonvolatile memory device 11 according to an embodiment of the present invention.
4 is a conceptual diagram showing a configuration of a nonvolatile memory device 11 according to an embodiment of the present invention.
5 is a block diagram showing a detailed configuration of an information storage area 114 according to an embodiment of the present invention.
6 is a conceptual diagram showing a configuration of a nonvolatile memory device 11 according to another embodiment of the present invention.
7 is a conceptual diagram showing a case where free space 1122 is lacking in free area 112 according to an embodiment of the present invention.
FIG. 8 is a conceptual diagram showing a state of checking the free space 1115 of the image area 111 according to an embodiment of the present invention.
9 is a conceptual diagram showing a state in which free space 1122 of free area 112 is ensured by repartitioning nonvolatile memory device 11 according to an embodiment of the present invention.
FIG. 10 is a conceptual diagram showing the completion of repartitioning of the non-volatile memory device 11 according to an embodiment of the present invention.
11 is a conceptual diagram illustrating a case where the free space 1122 is insufficient in the image area 111 according to an embodiment of the present invention.
12 is a conceptual diagram showing a state in which the spare area 1112 of the image area 111 is reserved by repartitioning the nonvolatile memory device 11 according to an embodiment of the present invention.
FIG. 13 is a conceptual diagram showing the completion of repartitioning of the nonvolatile memory device 11 according to an embodiment of the present invention.
14 is a conceptual diagram showing a configuration of a nonvolatile memory device 11 and a volatile memory device 12 according to an embodiment of the present invention.
FIG. 15 is a conceptual diagram showing a case where the spare area 1212 is insufficient in the first area 121 of the volatile memory device 12 according to an embodiment of the present invention.
16 is a conceptual diagram showing a state in which the spare area 1211 of the first area 121 is ensured by repartitioning the volatile memory device 12 according to an embodiment of the present invention.
FIG. 17 is a conceptual diagram showing the completion of repartitioning of the volatile memory device 12 according to an embodiment of the present invention.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.BRIEF DESCRIPTION OF THE DRAWINGS The advantages and features of the present invention, and the manner of achieving them, will be apparent from and elucidated with reference to the embodiments described hereinafter in conjunction with the accompanying drawings. The present invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. To fully disclose the scope of the invention to those skilled in the art, and the invention is only defined by the scope of the claims. Like reference numerals refer to like elements throughout the specification.

다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.Unless defined otherwise, all terms (including technical and scientific terms) used herein may be used in a sense commonly understood by one of ordinary skill in the art to which this invention belongs. Also, commonly used predefined terms are not ideally or excessively interpreted unless explicitly defined otherwise.

본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소 외에 하나 이상의 다른 구성요소의 존재 또는 추가를 배제하지 않는다.The terminology used herein is for the purpose of illustrating embodiments and is not intended to be limiting of the present invention. In the present specification, the singular form includes plural forms unless otherwise specified in the specification. The terms " comprises "and / or" comprising "used in the specification do not exclude the presence or addition of one or more other elements in addition to the stated element.

이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명하기로 한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 일 실시예에 따른 저장부(1)가 장착된 카메라의 구성을 나타낸 블록도이다.1 is a block diagram showing a configuration of a camera equipped with a storage unit 1 according to an embodiment of the present invention.

본 발명의 일 실시예에 따르면, 저장부(1)에 포함된 비휘발성 메모리 장치(11)는 유동적으로 파티션의 사이즈를 변경할 수 있다. 그럼으로써 비휘발성 메모리 장치(11)의 이미지 영역(111) 또는 프리 영역(112)에서 여유 공간이 필요하면, 다른 영역에 존재하는 여유 공간을 활용할 수 있어, 메모리 공간 활용도가 높고 경제적이다.According to an embodiment of the present invention, the nonvolatile memory device 11 included in the storage unit 1 can flexibly resize the partitions. Thus, if a free space is required in the image area 111 or the free area 112 of the nonvolatile memory device 11, it is possible to utilize the free space existing in the other area, and the memory space utilization is high and economical.

본 발명의 일 실시예에 따른 저장부(1)는 휴대폰이나 디지털 카메라 등의 제한되지 않고 다양한 전자 기기에 내장될 수 있다. 이하, 전자 기기는 카메라인 것으로 설명하나, 이는 설명의 편의를 위한 것이며 권리범위를 제한하기 위함이 아니다.The storage unit 1 according to an embodiment of the present invention can be embedded in various electronic apparatuses such as a cellular phone or a digital camera without limitation. Hereinafter, the electronic device is described as a camera, but this is for convenience of explanation and is not intended to limit the scope of the rights.

카메라는 특정 영역을 촬영하여 영상을 획득하는 촬상부(2), 획득된 영상 및 각종 데이터들을 저장하는 저장부(1), 카메라에 포함된 구성 요소들의 동작을 제어하는 제어부(3)를 포함한다.The camera includes an imaging unit 2 for photographing a specific area to acquire an image, a storage unit 1 for storing the acquired image and various data, and a control unit 3 for controlling the operation of the components included in the camera .

촬상부(2)는 특정 영역에 대한 이미지 신호를 수신하여 영상을 획득한다. 촬상부(2)에는 일반적으로 CCD(Charge Coupled Device)나 CMOS 이미지 센서 등의 촬상 소자가 포함된다. 최근에는 카메라 자체에서 영상을 인코딩하는 인코더가 탑재되어 있으므로, 카메라가 영상을 촬영하면 곧바로 인코딩되어 압축 영상 데이터가 생성된다.The image pickup section 2 receives an image signal for a specific region and acquires an image. The image pickup section 2 generally includes an image pickup element such as a CCD (Charge Coupled Device) or a CMOS image sensor. In recent years, since an encoder for encoding an image is mounted on the camera itself, when the camera captures an image, the compressed image data is generated immediately after being encoded.

도 2는 본 발명의 일 실시예에 따른 저장부(1)의 상세한 구성을 나타낸 블록도이다.2 is a block diagram showing a detailed configuration of the storage unit 1 according to an embodiment of the present invention.

저장부(1)는 도 2에 도시된 바와 같이, 비휘발성 메모리 장치(11) 및 휘발성 메모리 장치(12)를 포함한다. 비휘발성 메모리(Non-Volatile Memory, NVM)는 전원이 공급되지 않더라도 저장된 정보들이 휘발되지 않고 유지되는 메모리를 말한다. 대표적으로 PROM, EPROM, EEPROM 등을 포함하는 롬(ROM), 하드디스크(HDD), 광학디스크(ODD), SSD(Solid State Drive), 플래시 메모리 등이 있다. 최근 가장 많이 사용되는 플래시 메모리는 게이트의 종류에 따라 NAND 타입 및 NOR 타입으로 분류된다. 그 중에서 USB 메모리, SSD 또는 각종 휴대 기기에 내장되는 저장 장치로는, 가격이 저렴한 NAND 타입이 적절하다. 이러한 플래시 메모리는 작고 가벼우며, 전력 소모가 적고, 물리적인 충격 및 열에 강하다는 장점이 있다. 그러나 쓰기 횟수에 제한이 있고, 데이터 삭제를 블록 단위로 한다는 단점이 있다.The storage unit 1 includes a nonvolatile memory device 11 and a volatile memory device 12, as shown in FIG. Non-volatile memory (NVM) refers to a memory in which stored information is not volatilized, even when power is not supplied. ROM, a hard disk (HDD), an optical disk (ODD), a solid state drive (SSD), a flash memory, and the like including a PROM, an EPROM, and an EEPROM. Recently, most used flash memory is classified into NAND type and NOR type according to the type of gate. Among them, a NAND type which is inexpensive is suitable as a storage device built in a USB memory, an SSD, or a portable device. These flash memories have the advantage of being small and light, consuming less power, and being resistant to physical shock and heat. However, there is a limitation in the number of times of writing, and there is a disadvantage in that data deletion is performed on a block-by-block basis.

반면에 휘발성 메모리(Volatile Memory)는 저장된 정보를 유지하기 위해 지속적인 전원의 공급을 필요로 하며, 전력 공급이 중단되면 저장된 정보들이 휘발되는 메모리를 말한다. DRAM(Dynamic Ram), SRAM(Static RAM) 등을 포함하는 램(Random Access Memory, RAM)이 대표적인 휘발성 메모리이다. SDRAM(Synchronous Dynamic RAM)은 제어 신호의 입력이 클락 펄스(Clock Pulse)와 동기화가 된 DRAM을 말하며, 특히 셀의 상승 에지(Rising Edge) 및 하강 에지(Falling Edge) 모두에서 데이터를 전송하여 기존의 대역폭을 2배로 향상시킨 DDR SDRAM(Double Data Rate SDRAM)가 가장 많이 사용된다. 최근에는 이러한 DDR SDRAM이 비약적으로 발전하여 DDR4까지 소개되었으며, DDR5의 개발 계획도 발표되기도 하였다.Volatile memory, on the other hand, is a memory that requires constant power supply to maintain stored information and volatile stored information when power is interrupted. Random access memory (RAM) including dynamic random access memory (DRAM) and static random access memory (SRAM) is a typical volatile memory. SDRAM (Synchronous Dynamic RAM) refers to a DRAM in which the control signal is synchronized with a clock pulse. In particular, the DRAM transmits data in both a rising edge and a falling edge of a cell, DDR SDRAM (Double Data Rate SDRAM), which doubles the bandwidth, is most commonly used. Recently, such DDR SDRAM has been dramatically developed and introduced to DDR4, and the development plan of DDR5 has also been announced.

본 발명의 일 실시예에 따른 비휘발성 메모리 장치(11)는 NAND 플래시 메모리이고, 휘발성 메모리 장치(12)는 DDR SDRAM인 것으로 설명하나, 이는 설명의 편의를 위한 것이며 권리범위를 제한하기 위함이 아니다.Although the nonvolatile memory device 11 according to an embodiment of the present invention is a NAND flash memory and the volatile memory device 12 is a DDR SDRAM, this is for convenience of description and is not intended to limit the scope of the rights .

제어부(3)는 카메라의 전반적인 동작을 제어한다. 예를 들어, 제어부(3)는 촬상부(2)로부터 획득된 영상에 대하여 디코딩 및 렌더링 등의 영상처리를 수행할 수도 있고, 각종 신호 및 데이터들을 저장부(1)에 저장시키며, 저장부(1)로부터 로딩할 수도 있다. 나아가, 저장부(1)에 포함된 비휘발성 메모리 장치(11) 또는 휘발성 메모리 장치(12)의 하나의 영역에 재파티셔닝(Re-Partitioning)이 필요하면, 비휘발성 메모리 장치(11)에 플래그를 설정함으로써 재부팅시 부트로더가 재파티셔닝을 수행하도록 제어한다. 본 발명의 일 실시예에 따른 제어부(3)로는 CPU(Central Processing Unit), MCU(Micro Controller Unit) 또는 DSP(Digital Signal Processor) 등을 사용하는 것이 바람직하나, 이에 제한되지 않고 다양한 논리 연산 프로세서가 사용될 수 있다.The control unit 3 controls the overall operation of the camera. For example, the control unit 3 may perform image processing such as decoding and rendering on the image obtained from the image pickup unit 2, store various signals and data in the storage unit 1, 1). ≪ / RTI > Further, when re-partitioning is required in one area of the non-volatile memory device 11 or the volatile memory device 12 included in the storage unit 1, a flag is set to the non-volatile memory device 11 This controls the boot loader to perform repartitioning on reboot. The controller 3 may be a central processing unit (CPU), a microcontroller unit (MCU), or a digital signal processor (DSP), but the present invention is not limited thereto. Can be used.

도 3은 본 발명의 일 실시예에 따른 비휘발성 메모리 장치(11)의 MTD 파티션 분할을 도시한 테이블이다.3 is a table showing MTD partitioning of the nonvolatile memory device 11 according to an embodiment of the present invention.

상기 기술한 바와 같이, 플래시 메모리를 하드 디스크와 같이 사용하기 위하여 MTD(Memory Technology Device)를 사용하게 된다. MTD란 다양한 메모리 형태의 장치를 지원하기 위해 만들어진 기술이며, 플래시 메모리는 MTD에 의해 MTD 파티션(MTD Partition)이라고 부르는 몇 개의 부분들로 나누어져 있고, MTD 서브시스템이 플래시 메모리의 MTD 파티션을 지원한다. 임베디드 시스템은 전원 온(On) 시 MTD 0의 부트로더(Boot Loader)가 구동되고 MTD 2의 커널(Kernel)을 로딩(Loading)한 후, MTD 4의 루트 파일 시스템(Root File System)의 시스템 파일(System File)을 로딩하여 구동된다.As described above, the MTD (Memory Technology Device) is used to use the flash memory as a hard disk. MTD is a technology designed to support various types of memory devices. Flash memory is divided into several parts called MTD partitions by MTD, and MTD subsystem supports MTD partitions of flash memory . In the embedded system, when MTD 0 boot loader is activated and MTD 2 kernel is loaded, MTD 4 root file system file system file (System File).

도 3에 도시된 바와 같이, MTD0 영역은 운영체제를 구동하기 위한 부트로더가 저장된 영역이고, MTD1 영역은 상기 부트로더의 환경설정이 저장된 영역이다. MTD2 영역은 정상적으로 로드되는 리눅스 커널 이미지가 저장된 영역이고, MTD3 영역은 로고(Logo) 즉, 하드웨어, 응용 소프트웨어가 부분적으로 교체되어도 안정적인 동작을 인증해 주는 로고가 저장된 영역이다. MTD4 영역은 정상적으로 로드되는 루트 파일 시스템이 저장된 영역이고, MTD5 영역은 정상적으로 로드되는 사용자 어플리케이션이 저장된 영역이다. MTD6 영역은 어플리케이션 설정 파라미터들이 저장된 영역이며, MTD7 영역은 MTD6에 저장된 어플리케이션 설정 파라미터들이 중복저장(Mirror)된 영역이다. MTD8 영역은 사용자에 의해 사용되는 데이터가 저장되는 자유 영역이다. MTD9 영역은 재파티셔닝 수행 필요 여부를 나타내는 플래그가 저장되는 영역이고, MTD10 영역은 이미지 또는 파티션 등의 사이즈 정보가 저장되는 영역이다.As shown in FIG. 3, the MTD0 area is an area in which a boot loader for operating the operating system is stored, and the MTD1 area is an area in which the environment setting of the boot loader is stored. The MTD2 area is a region in which a Linux kernel image to be normally loaded is stored, and the MTD3 area is a region in which a logo for authenticating a stable operation is stored even if a logo is partially replaced with hardware or application software. The MTD4 area is an area in which a root file system to be normally loaded is stored, and the MTD5 area is an area in which a user application to be normally loaded is stored. The MTD6 area is an area where application setting parameters are stored, and the MTD7 area is an area where application setting parameters stored in the MTD6 are mirrored. The MTD8 area is a free area in which data used by the user is stored. The MTD9 area is an area for storing a flag indicating whether or not to perform repartitioning, and the MTD10 area is an area for storing size information such as an image or a partition.

위와 같이 리눅스 기반의 임베디드 디바이스가 동작되기 위해서는 부트로더 영역, 리눅스 커널 영역, 기능 수행에 필요한 공통 라이브러리 및 유틸리티, 파티션이 포함되어 있는 루트 파일 시스템 영역, 비즈니스 로직이 구현되어 있는 라이브러리와 영역, 변경 어플리케이션이 포함된 사용자 어플리케이션 가능한 구성 정보 영역 등으로 메모리가 구성될 수 있으며, 사용자 어플리케이션 영역은 루트 파일 시스템 영역에 포함되어 구성될 수도 있다.In order to run the Linux-based embedded device as above, the boot loader area, the Linux kernel area, the common library and utility necessary for performing the functions, the root file system area including the partitions, the library and the area where the business logic is implemented, A user application configurable information area including the user application area, and the user application area may be included in the root file system area.

종래의 경우에는 이러한 각각의 MTD 파티션의 영역마다 사이즈가 고정적으로 할당되어 있었다. 플래시 메모리의 MTD 파티션은 논리적으로 구분되므로 사이즈는 변경할 수 있으나, 이를 변경하기 위해서는 Uboot 환경변수 중에 bootargs를 사용자가 직접 /etc/cmdline 파일을 통해 변경하여야 한다. 여기서 Uboot(Universal Boot Loader)란 주로 PowerPC와 ARM 임베디드 시스템에서 사용되는 부트로더(Boot Loader)를 말한다. 그리고 Uboot 환경변수란 플래시 메모리의 일정 영역에 저장되어 부팅 환경을 변경시키는 값으로, 대표적으로 bootargs, bootcmd, bootdelay, ipaddr 등이 있다. 본 발명을 구현하기 위하여 본 발명의 일 실시예에서는 부트로더로 Uboot를 사용할 수 있으나, 이에 제한되지 않고 다양한 종류의 부트로더가 사용될 수 있다.In the conventional case, the size is fixedly allocated for each area of each MTD partition. MTD partitions of flash memory are logically separated and can be changed in size, but in order to change them, user should change bootargs in / etc / cmdline file in Uboot environment variable. Here Uboot (Universal Boot Loader) refers to the Boot Loader used mainly in PowerPC and ARM embedded systems. The Uboot environment variable is a value that changes the boot environment by being stored in a certain area of the flash memory, and typically includes bootargs, bootcmd, bootdelay, and ipaddr. In order to implement the present invention, Uboot may be used as a boot loader in one embodiment of the present invention, but various types of boot loaders can be used without being limited thereto.

상기와 같은 이유로, 프리(Free) 영역(112)에 특정 데이터를 저장한다면 전체 데이터 사이즈가 프리 영역(112)의 파티션 사이즈보다 커지는 경우에, 사용자는 기존에 저장된 데이터 중 일부를 삭제하거나, 상기 데이터들을 압축하여 저장하여야 했다. 또한 업그레이드 이미지(4)의 사이즈가 MTD 파티션의 사이즈보다 클 경우에 시스템이 정상적으로 동작하지 않는다. 그리고 사용자가 이를 해결하기 위해 어떤 영역의 MTD 파티션의 사이즈를 변경해야 하는지 알아내기 어려우며 그 과정이 번거롭다.If the total data size is larger than the partition size of the free area 112 if the specific data is stored in the free area 112, the user deletes some of the data stored in the free area 112, To be compressed and stored. Also, if the size of the upgrade image (4) is larger than the size of the MTD partition, the system does not operate normally. It is difficult to find out which area of the MTD partition needs to be resized in order to solve this problem, and the process is troublesome.

도 4는 본 발명의 일 실시예에 따른 비휘발성 메모리 장치(11)의 구성을 나타내는 개념도이다.4 is a conceptual diagram showing a configuration of a nonvolatile memory device 11 according to an embodiment of the present invention.

도 4에 도시된 바와 같이, 본 발명의 일 실시예에 따른 비휘발성 메모리 장치(11)는 이미지 영역(111), 프리 영역(112), 플래그 영역(113), 정보 저장 영역(114)으로 구분될 수 있다.4, the nonvolatile memory device 11 according to the embodiment of the present invention is divided into an image area 111, a free area 112, a flag area 113, and an information storage area 114 .

이미지 영역(111)은 상기 기술한 부트로더, 리눅스 커널, 루트 파일 시스템 등의 이미지가 저장되는 영역이다. 각각의 이미지는 각각의 MTD 파티션마다 할당되어 저장되며, 도 4에서는 이미지 영역(111)의 MTD 파티션이 3개 도시되어 3가지의 이미지가 저장되는 것으로 도시하였다. 이하, 제1 MTD(1111)에는 부트로더, 제2 MTD(1112)에는 커널, 제3 MTD(1113)에는 루트 파일 시스템이 저장되는 것으로 설명하나, 이는 설명의 편의를 위한 것이며 권리범위를 제한하기 위함이 아니다.The image area 111 is an area where images such as the boot loader, the Linux kernel, and the root file system described above are stored. Each image is allocated and stored for each MTD partition. In FIG. 4, three MTD partitions of the image area 111 are shown and three images are stored. Hereinafter, the first MTD 1111 is described as a boot loader, the second MTD 1112 is defined as a kernel, and the third MTD 1113 is described as storing a root file system. However, It is not for this purpose.

프리 영역(112)은 임의의 데이터를 저장할 수 있는 영역으로서, 프리 영역(112)도 하나의 MTD 파티션을 차지하는 영역이다. 플래시 메모리를 저장매체로 사용하기 위한 방법에는, 크게 FTL(Flash Translation Layer: 플래시 변환계층)을 구현하여 플래시 메모리와 결합 사용하는 방법과, 플래시 메모리 전용 파일 시스템을 사용하는 방법이 있다.The free area 112 is an area capable of storing arbitrary data, and the free area 112 is also an area occupying one MTD partition. As a method for using a flash memory as a storage medium, there is a method of implementing a flash translation layer (FTL) in combination with a flash memory and a method of using a flash memory dedicated file system.

FTL은 쓰기 연산 시에 파일 시스템이 생성한 논리주소를 플래시 메모리 상에서, 이미 삭제 연산이 수행된 영역에 대한 물리주소로 변환하는 역할을 수행한다. 그리고 상위 계층인 파일 시스템에 쓰기 연산 시 필요한 삭제 연산을 감추어 일반적인 자기 디스크용 파일 시스템이 플래시 메모리 상에서 작동할 수 있도록 하고, 시간 지연 및 마모의 문제를 상위의 운영체제에서 방지할 수 있도록 한다. 이 경우 파일 시스템은 리눅스(linux)에서 널리 쓰이는 ext2(second extended file system, 이차 확장 파일 시스템)이 사용될 수 있다.The FTL translates the logical address generated by the file system into a physical address in the flash memory at the time of the write operation, for the area where the erase operation has already been performed. In addition, the deletion operation required for the write operation to the upper layer file system is hidden to allow the file system for general magnetic disk to operate on the flash memory, and the problem of time delay and wear can be prevented in the upper operating system. In this case, the file system can be used ext2 (second extended file system), which is widely used in Linux.

FTL을 사용하지 않는 경우에는, MTD(Memory Technology Device)를 사용하는 JFFS2(Journaling Flash File System 2), YAFFS (Yet Another Flash File System), 및 YAFFS2 등과 같은 LFS(Log-structured File System: 로그 구조 파일 시스템)가 많이 사용된다. LFS와 같은 파일 시스템들은 저장 공간을 하나의 로그로 보고, 데이터를 앞에서부터 차례로 기록한다. 또한, 데이터를 기록함과 함께 메타데이터가 저장되고, 상기 메타 데이터 기반으로 매핑 테이블(Mapping Table)을 주 메모리 상에 구성하여 관리하게 된다. 본 발명의 일 실시예에 따른 플래시 메모리는 ext2를 사용할 수 있으나 이에 제한되지 않고 다양한 루트 파일 시스템이 사용될 수 있다.If the FTL is not used, a log-structured file system (LFS) such as Journaling Flash File System 2 (JFFS2) using MTD (Memory Technology Device), Yet Another Flash File System (YAFFS) System) is often used. File systems such as LFS view the storage space as a single log and write data sequentially from the front. In addition, data is recorded and meta data is stored, and a mapping table is configured and managed on a main memory based on the meta data. The flash memory according to an embodiment of the present invention can use ext2, but not limited thereto, various root file systems can be used.

플래그 영역(113)은 플래그가 저장되는 영역이다. 플래그는 특정 상태의 성립 여부를 식별하거나, 약속된 신호를 남기기 위해 사용되는 표시로서, 본 발명의 일 실시예에 따른 플래그는 재파티셔닝의 수행이 필요한지 여부를 낸다. 일반적으로, 플래그는 특정 상태가 성립하는지 하지 않는지 두 가지의 경우를 식별하면 되므로, 1Bit의 저장 공간을 차지한다. 그리고, 특정 상태가 성립하면 1, 성립하지 않으면 0을 나타낼 수 있다. 본 발명의 일 실시예에 따른 플래그는 비휘발성 메모리 장치(11)만의 재파티셔닝의 수행 필요 여부를 나타내거나, 비휘발성 메모리 장치(11) 및 휘발성 메모리 장치(12)의 종류를 불문하고 재파티셔닝의 수행 필요 여부를 나타낸다면 1Bit의 크기를 가질 수 있다. 그러나, 비휘발성 메모리 장치(11) 및 휘발성 메모리 장치(12)의 종류를 함께 판단하기 위해서는 2Bit의 크기를 가질 수도 있다. 이에 대한 내용의 자세한 설명은 후술한다.The flag area 113 is an area where a flag is stored. A flag is an indication used to identify whether a particular state is established or to leave a promised signal, and a flag according to an embodiment of the present invention indicates whether or not it is necessary to perform repartitioning. In general, the flag takes up a storage space of 1 bit since it is necessary to identify two cases of whether or not a specific state is established. If the specific state is established, it can be represented by 1. If not, it can be represented by 0. The flag according to an embodiment of the present invention indicates whether the repartitioning of only the nonvolatile memory device 11 is necessary or whether the repartitioning of the nonvolatile memory device 11 and the volatile memory device 12 It can have a size of 1 bit if it indicates whether it needs to perform. However, in order to judge the types of the nonvolatile memory device 11 and the volatile memory device 12 together, they may have a size of 2 bits. A detailed description thereof will be given later.

도 5는 본 발명의 일 실시예에 따른 정보 저장 영역(114)의 상세한 구성을 나타낸 블록도이다.5 is a block diagram showing a detailed configuration of an information storage area 114 according to an embodiment of the present invention.

정보 저장 영역(114)은 도 5에 도시된 바와 같이, 비휘발성 메모리의 사용 공간 사이즈 정보 및 파티션 사이즈 정보(1141, 1142)를 저장한다. 여기서 비휘발성 메모리의 사용 공간 사이즈 정보(1141)는, 이미지 사이즈에 대한 정보뿐만 아니라 데이터 사이즈에 대한 정보를 포함한다.The information storage area 114 stores usage space size information and partition size information 1141 and 1142 of the nonvolatile memory, as shown in FIG. The used space size information 1141 of the nonvolatile memory includes information on the data size as well as information on the image size.

본 발명의 일 실시예에 따른 제어부(3)는 비휘발성 메모리의 사용 공간 사이즈 및 파티션 사이즈를 실시간으로 모니터링 한다. 그리고 비휘발성 메모리의 사용 공간 사이즈가 비휘발성 메모리 장치(11)의 파티션 사이즈보다 크거나, 여유 공간이 얼마 남지 않은 경우에는, 제어부(3)는 플래그 영역(113)의 플래그를 1로 설정하고, 비휘발성 메모리의 사용 공간 사이즈 정보 및 파티션 사이즈 정보(1141, 1142)를 업데이트한다. 그리고 카메라를 재부팅 시킨다. 제어부(3)가 카메라를 재부팅 시킬 때에는, 강제로 재부팅할 수도 있으나, 사용자가 재부팅 여부를 선택할 수 있도록, 화면부(미도시)를 통해 사용자에게 가이드 윈도우를 UI(User Interface)로써 디스플레이 할 수도 있다. 카메라가 재부팅되면, 부트로더는 우선 플래그 영역(113)의 플래그를 로딩한다. 그리고 플래그 영역(113)의 플래그가 0으로 설정되어 있다면 재파티셔닝을 수행하지 않으나, 플래그가 1로 설정되어 있다면 상기 업데이트된 비휘발성 메모리의 사용 공간 사이즈 정보 및 파티션 사이즈 정보(1141, 1142)에 기초하여, 각각의 MTD 파티션의 재파티셔닝을 수행한다.The controller 3 monitors the used space size and the partition size of the nonvolatile memory in real time according to an embodiment of the present invention. When the used space size of the nonvolatile memory is larger than the partition size of the nonvolatile memory device 11 or the spare space is short, the control unit 3 sets the flag of the flag area 113 to 1, The used space size information and the partition size information 1141 and 1142 of the nonvolatile memory are updated. Then reboot the camera. When the control unit 3 reboots the camera, it may forcibly reboot, but may display the guide window as a UI (User Interface) to the user through a screen unit (not shown) so that the user can select whether to reboot . When the camera is rebooted, the boot loader loads the flag of the priority flag area 113 first. If the flag of the flag area 113 is set to 0, no repartitioning is performed. If the flag is set to 1, on the basis of the used space size information and the partition size information 1141 and 1142 of the updated nonvolatile memory, And performs repartitioning of each MTD partition.

정보 저장 영역(114)은 도 5에 도시된 바와 같이, 휘발성 메모리의 사용 리소스 값 정보 및 파티션 사이즈 정보(1143, 1144)를 더 저장할 수 있다. DDR SDRAM은 플래시 메모리와 같이 파티션 분할이 반드시 필수적인 것은 아니다. 그러나, 필요에 따라 사용자가 임의로 파티션 분할을 할 수도 있다.The information storage area 114 may further store usage resource value information and partition size information 1143 and 1144 of the volatile memory, as shown in FIG. DDR SDRAM is not necessarily partitioned like flash memory. However, the user may arbitrarily perform the partitioning as necessary.

도 6은 본 발명의 다른 실시예에 따른 비휘발성 메모리 장치(11)의 구성을 나타내는 개념도이다.6 is a conceptual diagram showing a configuration of a nonvolatile memory device 11 according to another embodiment of the present invention.

본 발명의 다른 실시예에 따르면, 비휘발성 메모리 장치(11)가 복수로 형성될 수 있다. 그리고, 제1 비휘발성 메모리 장치(11a)에는 도 6에 도시된 바와 같이, 이미지 영역(111), 프리 영역(112), 플래그 영역(113)이 형성되고, 제2 비휘발성 메모리 장치(11b)에는 정보 저장 영역(114)이 형성될 수 있다. 즉, 제1 비휘발성 메모리 장치(11a)의 사용 공간 사이즈 정보 및 파티션 사이즈 정보(1141, 1142) 등이, 별도로 형성된 제2 비휘발성 메모리 장치(11b)에 저장될 수 있다. 여기서 제1 비휘발성 메모리 장치(11a)는 플래시 메모리일 수 있고, 제2 비휘발성 메모리 장치(11b)는 EEPROM 또는 HDD 등 다양한 비휘발성 메모리가 될 수 있다. 이러한 경우에는, 제어부(3)는 제1 비휘발성 메모리 장치(11a)의 사용 공간 사이즈 및 파티션 사이즈를 실시간으로 모니터링한다. 그리고 재파티셔닝을 수행할 필요가 있는 경우에는 플래그 영역(113)의 플래그를 1로 설정하고, 제2 비휘발성 메모리 장치(11b)에 저장된 제1 비휘발성 메모리 장치(11a)의 사용 공간 사이즈 정보 및 파티션 사이즈 정보를 업데이트한다. 그리고 카메라를 재부팅 시킨다. 카메라가 재부팅되면, 부트로더는 우선 플래그 영역(113)의 플래그를 로딩한다. 그리고 플래그 영역(113)의 플래그가 0으로 설정되어 있다면 재파티셔닝을 수행하지 않으나, 플래그가 1로 설정되어 있다면 상기 업데이트된 제2 비휘발성 메모리 장치(11b)에 저장된 사용 공간 사이즈 정보 및 파티션 사이즈 정보(1141, 1142)에 기초하여, 제1 비휘발성 메모리 장치(11a)의 각각의 MTD 파티션의 재파티셔닝을 수행한다.According to another embodiment of the present invention, a plurality of nonvolatile memory devices 11 may be formed. 6, an image area 111, a free area 112, and a flag area 113 are formed in the first nonvolatile memory device 11a and a second nonvolatile memory device 11b is formed in the first nonvolatile memory device 11a. An information storage area 114 may be formed. That is, the used space size information and partition size information 1141 and 1142 of the first nonvolatile memory device 11a and the like can be stored in the second nonvolatile memory device 11b separately formed. Here, the first nonvolatile memory device 11a may be a flash memory and the second nonvolatile memory device 11b may be various nonvolatile memories such as an EEPROM or an HDD. In this case, the control unit 3 monitors the used space size and partition size of the first nonvolatile memory device 11a in real time. When it is necessary to perform re-partitioning, the flag of the flag area 113 is set to 1, and the used space size information of the first nonvolatile memory device 11a stored in the second nonvolatile memory device 11b, Update partition size information. Then reboot the camera. When the camera is rebooted, the boot loader loads the flag of the priority flag area 113 first. If the flag of the flag area 113 is set to 0, no repartitioning is performed. If the flag is set to 1, on the basis of the used space size information and the partition size information stored in the updated second nonvolatile memory device 11b, Partitioning of each MTD partition of the first non-volatile memory device 11a, based on the first and second non-volatile memory devices 1141 and 1142, respectively.

도 7은 본 발명의 일 실시예에 따른 프리 영역(112)에 여유 공간(1122)이 부족한 경우를 나타내는 개념도이다.7 is a conceptual diagram showing a case where free space 1122 is lacking in free area 112 according to an embodiment of the present invention.

프리 영역(112)은 상기 기술한 바와 같이, 임의의 데이터를 저장할 수 있는 영역이다. 도 7에 도시된 바와 같이, 이러한 프리 영역(112)의 여유 공간(1122)이 사용 공간(1121)에 비해 부족하다면, 이후에 추가로 저장되어야 할 임의의 데이터의 사이즈가 여유 공간(1122)보다 더 클 수도 있다. 즉, 전체 데이터 사이즈가 프리 영역(112)의 파티션 사이즈보다 커지게 된다. 이러한 경우, 기존에는 사용자가 저장된 데이터 중 일부를 삭제하거나, 상기 데이터들을 압축하여 저장하여야 했다.The free area 112 is an area capable of storing arbitrary data, as described above. 7, if the free space 1122 of the free area 112 is insufficient as compared with the use space 1121, the size of any data to be further stored thereafter is larger than the free space 1122 It may be bigger. That is, the total data size becomes larger than the partition size of the free area 112. [ In this case, the user has to delete some of the stored data or compress and store the data.

본 발명의 일 실시예에 따르면, 제어부(3)가 프리 영역(112)의 데이터 사이즈와 파티션 사이즈를 실시간으로 모니터링 한다. 그리고, 프리 영역(112)의 여유 공간(1122)이 데이터가 차지하는 사용 공간(1121)에 비해 부족하다면, 재파티셔닝이 필요한 것으로 인지한다. 여기서, 여유 공간(1122)이 사용 공간(1121)에 비해 부족한 것은, 여유 공간(1122)이 전체 프리 영역(112)의 파티션 사이즈의 10% 이내인 것이 바람직하나, 이에 제한되지 않는다. 재파티셔닝이 필요한 것으로 판단되면, 도 7에 도시된 바와 같이, 제어부(3)는 플래그 영역(113)에서 플래그를 1로 설정한다.According to an embodiment of the present invention, the controller 3 monitors the data size and the partition size of the free area 112 in real time. If the free space 1122 of the free area 112 is insufficient as compared with the use space 1121 occupied by the data, it is recognized that re-partitioning is necessary. The reason why the free space 1122 is insufficient compared to the use space 1121 is that the free space 1122 is preferably within 10% of the partition size of the entire free area 112, but is not limited thereto. If it is determined that re-partitioning is necessary, the control unit 3 sets the flag to 1 in the flag area 113, as shown in Fig.

도 8은 본 발명의 일 실시예에 따른 이미지 영역(111)의 여유 공간(1115)을 체크하는 모습을 나타내는 개념도이다.FIG. 8 is a conceptual diagram showing a state of checking the free space 1115 of the image area 111 according to an embodiment of the present invention.

제어부(3)가 플래그 영역(113)의 플래그를 1로 설정한 후, 정보 저장 영역(114)에 저장된 비휘발성 메모리의 사용 공간 사이즈 정보 및 파티션 사이즈 정보(1141, 1142) 를 업데이트한다. 구체적으로, 제어부(3)는 현재의 비휘발성 메모리의 사용 공간 사이즈 정보로 업데이트하고, 현재의 비휘발성 메모리의 파티션 사이즈 정보 및 재파티셔닝 되어야 할 파티션 사이즈 정보를 함께 업데이트한다.The control unit 3 updates the used space size information and the partition size information 1141 and 1142 of the nonvolatile memory stored in the information storage area 114 after setting the flag of the flag area 113 to 1. Specifically, the control unit 3 updates the space size information of the current nonvolatile memory with the partition size information of the current nonvolatile memory and the partition size information to be repartitioned together.

그리고 카메라를 재부팅 시킨다. 카메라가 재부팅되면, 부트로더는 우선 플래그 영역(113)을 로딩한다. 그리고 플래그가 1로 설정된 것을 확인하면, 정보 저장 영역(114)에서 상기 업데이트 된 비휘발성 메모리의 사용 공간 사이즈 정보 및 파티션 사이즈 정보(1141, 1142)를 로딩한다.Then reboot the camera. When the camera is rebooted, the boot loader loads the priority flag area 113 first. If the flag is set to '1', the used space size information and partition size information 1141 and 1142 of the updated nonvolatile memory are loaded in the information storage area 114.

상기 기술한 바와 같이, 프리 영역(112)의 사용 공간(1121) 사이즈가 프리 영역(112)의 파티션 사이즈에 비해 너무 커서 여유 공간(1122)이 부족하다. 따라서, 부트로더는 도 8에 도시된 바와 같이, 재파티셔닝을 수행하기 위해 다른 영역에 존재하는 여유 공간을 체크한다.As described above, the size of the use space 1121 of the free area 112 is too large as compared with the size of the partition of the free area 112, and the free space 1122 is insufficient. Thus, the boot loader checks the free space that exists in the other area to perform repartitioning, as shown in FIG.

현재 이미지 영역(111)에는 사용 공간(1114)과 여유 공간(1115)이 어느 정도 병존하고 있다. 그런데, 이미지 영역(111)에 저장되는 부트로더, 커널, 루트 파일 시스템 등은, 이미지가 업그레이드 등으로 변경되지 않는 이상, 그 사이즈가 변경되지 않는다. 따라서, 이미지 영역(111)에 존재하는 여유 공간(1115)을 버리지 않고 활용하는 것이 바람직하다.The current use area 1114 and the spare area 1115 coexist to some extent in the current image area 111. [ However, the size of the boot loader, the kernel, the root file system, etc. stored in the image area 111 is not changed unless the image is changed by an upgrade or the like. Therefore, it is desirable to utilize the free space 1115 existing in the image area 111 without throwing away.

도 9는 본 발명의 일 실시예에 따른 비휘발성 메모리 장치(11)를 재파티셔닝하여 프리 영역(112)의 여유 공간(1122)을 확보하는 모습을 나타내는 개념도이고, 도 10은 본 발명의 일 실시예에 따른 비휘발성 메모리 장치(11)의 재파티셔닝이 완료된 모습을 나타낸 개념도이다.FIG. 9 is a conceptual diagram showing how free space 1122 of free area 112 is ensured by repartitioning non-volatile memory device 11 according to an embodiment of the present invention. FIG. Is a conceptual diagram showing a state in which repartitioning of the nonvolatile memory device 11 according to the example is completed.

도 9에 도시된 바와 같이, 부트로더는 카메라가 재부팅되면, 이미지 영역(111)에 존재하는 여유 공간(1115)을 어느 정도 감소시키고, 프리 영역(112)의 파티션 사이즈를 증가시키도록 재파티셔닝을 수행한다. 따라서, 도 10에 도시된 바와 같이, 프리 영역(112)의 여유 공간(1122)이 증가하여, 더 큰 사이즈의 데이터를 프리 영역(112)에 추가로 저장할 수 있게 된다.As shown in FIG. 9, the boot loader re-partitiones the image to reduce the amount of free space 1115 present in the image area 111 to some extent and increase the partition size of the free area 112 when the camera is rebooted . Therefore, as shown in FIG. 10, the free space 1122 of the free area 112 is increased, so that a larger size of data can be additionally stored in the free area 112.

도 11은 본 발명의 일 실시예에 따른 이미지 영역(111)에 여유 공간(1122)이 부족한 경우를 나타내는 개념도이다.11 is a conceptual diagram illustrating a case where the free space 1122 is insufficient in the image area 111 according to an embodiment of the present invention.

이미지 영역(111)은 상기 기술한 바와 같이, 부트로더, 리눅스 커널, 루트 파일 시스템 등의 이미지가 저장되는 영역이다. 또한, 상기 기술한 바와 같이 이미지 영역(111)에 저장되는 부트로더, 커널, 루트 파일 시스템 등은, 이미지가 업그레이드 등으로 변경되지 않는 이상, 그 사이즈가 변경되지 않는다.The image area 111 is an area in which images such as a boot loader, a Linux kernel, and a root file system are stored, as described above. Also, as described above, the size of the boot loader, the kernel, the root file system, and the like stored in the image area 111 is not changed unless the image is changed by upgrade or the like.

즉, 이미지가 업그레이드 되는 경우에는 각각의 이미지 사이즈가 변경될 수 있다. 그런데 예를 들어 도 11에 도시된 바와 같이, 이미 특정 사이즈로 제1 내지 제3 MTD(1111, 1112, 1113) 파티션들이 파티셔닝되어 있는데, 새로운 업그레이드 이미지(4) 가운데 커널(42)의 사이즈가 제2 MTD(1112) 파티션의 사이즈보다 클 수 있다. 이러한 경우에는 시스템이 정상적으로 동작하지 않게 된다.That is, when the image is upgraded, the respective image sizes can be changed. 11, the first to third MTDs 1111, 1112, and 1113 are already partitioned into a specific size, and the size of the kernel 42 among the new upgrade images 4 is 2 < / RTI > MTD 1112 partition. In this case, the system will not operate normally.

본 발명의 일 실시예에 따르면, 제어부(3)가 이미지 영역(111)의 이미지 사이즈와 파티션 사이즈를 실시간으로 모니터링 한다. 그리고, 이미지 영역(111)을 구성하는 각각의 MTD 파티션들 가운데 하나라도, 그에 대응되는 이미지 사이즈보다 사이즈가 작다면, 재파티셔닝이 필요한 것으로 인지한다. 재파티셔닝이 필요한 것으로 판단되면, 도 11에 도시된 바와 같이, 제어부(3)는 플래그 영역(113)에서 플래그를 1로 설정한다.According to an embodiment of the present invention, the controller 3 monitors the image size and partition size of the image area 111 in real time. If one of the MTD partitions constituting the image area 111 is smaller than the corresponding image size, it is recognized that re-partitioning is necessary. If it is determined that re-partitioning is necessary, the control unit 3 sets the flag to 1 in the flag area 113, as shown in Fig.

제어부(3)가 플래그 영역(113)의 플래그를 1로 설정한 후, 정보 저장 영역(114)에 저장된 비휘발성 메모리의 사용 공간 사이즈 정보 및 파티션 사이즈 정보(1141, 1142)를 업데이트한다. 구체적으로, 제어부(3)는 현재의 비휘발성 메모리의 사용 공간 사이즈 정보로 업데이트하고, 현재의 비휘발성 메모리의 파티션 사이즈 정보 및 재파티셔닝 되어야 할 파티션 사이즈 정보를 함께 업데이트한다.The control unit 3 updates the used space size information and the partition size information 1141 and 1142 of the nonvolatile memory stored in the information storage area 114 after setting the flag of the flag area 113 to 1. Specifically, the control unit 3 updates the space size information of the current nonvolatile memory with the partition size information of the current nonvolatile memory and the partition size information to be repartitioned together.

그리고 카메라를 재부팅 시킨다. 카메라가 재부팅되면, 부트로더는 우선 플래그 영역(113)을 로딩한다. 그리고 플래그가 1로 설정된 것을 확인하면, 정보 저장 영역(114)에서 상기 업데이트 된 비휘발성 메모리의 사용 공간 사이즈 정보 및 파티션 사이즈 정보(1141, 1142)를 로딩한다.Then reboot the camera. When the camera is rebooted, the boot loader loads the priority flag area 113 first. If the flag is set to '1', the used space size information and partition size information 1141 and 1142 of the updated nonvolatile memory are loaded in the information storage area 114.

상기 기술한 바와 같이, 이미지 영역(111)의 사용 공간 사이즈가 이미지 영역(111)의 파티션 사이즈보다 크다. 따라서, 부트로더는 재파티셔닝을 수행하기 위해 다른 영역에 존재하는 여유 공간을 체크한다.As described above, the used space size of the image area 111 is larger than the partition size of the image area 111. [ Thus, the boot loader checks for free space in other areas to perform repartitioning.

현재 프리 영역(112)에는 사용 공간(1121)과 여유 공간(1122)이 어느 정도 병존하고 있다. 그런데, 프리 영역(112)에는 사용자가 카메라를 사용함으로써 생성되는 데이터를 저장하므로, 재부팅을 수행하는 도중에는 데이터의 사이즈가 크게 변경되지 않는다. 따라서, 프리 영역(112)에 존재하는 여유 공간(1122)을 활용하는 것이 바람직하다.At present, the free space 112 and the free space 1122 coexist to some extent. However, since the free area 112 stores data generated by the user using the camera, the size of the data is not significantly changed during the reboot. Therefore, it is preferable to utilize the free space 1122 existing in the free area 112. [

도 12는 본 발명의 일 실시예에 따른 비휘발성 메모리 장치(11)를 재파티셔닝하여 이미지 영역(111)의 여유 공간(1112)을 확보하는 모습을 나타내는 개념도이고, 도 13은 본 발명의 일 실시예에 따른 비휘발성 메모리 장치(11)의 재파티셔닝이 완료된 모습을 나타낸 개념도이다.12 is a conceptual diagram showing a state in which a free space 1112 of an image area 111 is ensured by repartitioning a nonvolatile memory device 11 according to an embodiment of the present invention. Is a conceptual diagram showing a state in which repartitioning of the nonvolatile memory device 11 according to the example is completed.

도 12에 도시된 바와 같이, 부트로더는 카메라가 재부팅되면, 프리 영역(112)에 존재하는 여유 공간(1122)을 어느 정도 감소시키고, 이미지 영역(111)의 파티션 사이즈를 증가시키도록 재파티셔닝을 수행한다. 따라서, 도 13에 도시된 바와 같이, 이미지 영역(111)의 여유 공간(1115)이 증가하여, 새로운 이미지가 업그레이드 될 수 있게 된다.As shown in FIG. 12, the boot loader re-partitiones the free space 1122 existing in the free area 112 to some extent and increases the partition size of the image area 111 when the camera is rebooted . Therefore, as shown in Fig. 13, the free space 1115 of the image area 111 increases, so that the new image can be upgraded.

도 14는 본 발명의 일 실시예에 따른 비휘발성 메모리 장치(11) 및 휘발성 메모리 장치(12)의 구성을 나타내는 개념도이다.14 is a conceptual diagram showing a configuration of a nonvolatile memory device 11 and a volatile memory device 12 according to an embodiment of the present invention.

재파티셔닝은 비휘발성 메모리 장치(11)뿐만 아니라, 휘발성 메모리 장치(12)의 경우에도 필요할 수 있다. 물론, DDR SDRAM은 플래시 메모리와 같이 파티션 분할이 반드시 필수적인 것은 아니다. 그러나, 필요에 따라 사용자가 임의로 파티션 분할을 할 수도 있다. 예를 들면 도 14에 도시된 바와 같이, DDR SDRAM은 주 기억 장치로서 OS(Operate System, 운영 체제)가 구동되면서 리소스 값을 사용하게 되는 제1 영역(121), 촬상부(2)를 통해 획득된 영상의 인코딩 및 디코딩 등의 영상 처리를 수행하기 위한 버퍼메모리로써 사용하게 되는 제2 영역(122)으로 파티셔닝 될 수 있다.The re-partitioning may be necessary in the case of the volatile memory device 12 as well as the non-volatile memory device 11. Of course, partitioning of DDR SDRAM like flash memory is not essential. However, the user may arbitrarily perform the partitioning as necessary. For example, as shown in FIG. 14, the DDR SDRAM includes a first area 121 in which a resource value is used while an OS (Operating System) is driven as a main storage device, And a second area 122 used as a buffer memory for performing image processing such as encoding and decoding of the image.

도 15는 본 발명의 일 실시예에 따른 휘발성 메모리 장치(12)의 제1 영역(121)에 여유 공간(1212)이 부족한 경우를 나타내는 개념도이다.FIG. 15 is a conceptual diagram showing a case where the spare area 1212 is insufficient in the first area 121 of the volatile memory device 12 according to an embodiment of the present invention.

도 15에 도시된 바와 같이, 제1 영역(121)의 여유 공간(1212)이 사용 공간(1211)에 비해 부족하다면, 이후에 OS에 부하가 많이 작용하게 될 경우 OS가 구동되는 속도가 매우 느려질 수가 있다.As shown in FIG. 15, if the free space 1212 of the first area 121 is insufficient as compared with the use space 1211, if the load on the OS subsequently becomes large, the speed at which the OS is driven becomes very slow There is a number.

본 발명의 일 실시예에 따르면, 제어부(3)가 제1 영역(121)의 리소스 값과 파티션 사이즈를 실시간으로 모니터링 한다. 그리고, 제1 영역(121)의 여유 공간(1212)이 사용 공간(1211)에 비해 부족하다면, 재파티셔닝이 필요한 것으로 인지한다. 여기서, 여유 공간(1212)이 사용 공간(1211)에 비해 부족한 것은, 여유 공간(1212)이 전체 제1 영역(121)의 파티션 사이즈의 10% 이내인 것이 바람직하나, 이에 제한되지 않는다. 재파티셔닝이 필요한 것으로 판단되면, 도 15에 도시된 바와 같이, 제어부(3)는 플래그 영역(113)에서 플래그를 1로 설정한다.According to an embodiment of the present invention, the controller 3 monitors the resource value and the partition size of the first area 121 in real time. If the spare area 1212 of the first area 121 is insufficient as compared with the used space 1211, it is recognized that re-partitioning is necessary. The reason why the free space 1212 is insufficient compared to the use space 1211 is that the free space 1212 is within 10% of the partition size of the entire first area 121, but is not limited thereto. If it is determined that re-partitioning is necessary, the control unit 3 sets the flag to 1 in the flag area 113, as shown in Fig.

여기서, 플래그는 도 7 및 도 11에 도시된 바와 같이 1Bit를 가질 수도 있으나, 도 15에 도시된 바와 같이 2Bit를 가질 수도 있다. 만약, 플래그가 1Bit의 크기를 가진다면, 비휘발성 메모리 장치(11)만의 재파티셔닝의 수행 필요 여부를 나타내거나, 비휘발성 메모리 장치(11) 및 휘발성 메모리 장치(12)의 종류를 불문하고 재파티셔닝의 수행 필요 여부를 나타낼 수 있다. 플래그가 비휘발성 메모리 장치(11)만의 재파티셔닝의 수행 필요 여부를 나타낸다면, 플래그가 1로 설정된 것을 부트로더가 확인한 후, 비휘발성 메모리 장치(11)의 재파티셔닝만을 수행한다. 이 때, 휘발성 메모리 장치(12)의 재파티셔닝은 수행될 수 없다.Here, the flag may have 1 bit as shown in Figs. 7 and 11, but it may have 2 bits as shown in Fig. If the flag has a size of 1 bit, it indicates whether the repartitioning of only the nonvolatile memory device 11 is required or the repartitioning is performed regardless of the kind of the nonvolatile memory device 11 and the volatile memory device 12. [ Can be performed. If the flag indicates whether the repartitioning of only the nonvolatile memory device 11 is necessary, only the repartitioning of the nonvolatile memory device 11 is performed after the boot loader confirms that the flag is set to 1. [ At this time, repartitioning of the volatile memory device 12 can not be performed.

플래그가 비휘발성 메모리 장치(11) 및 휘발성 메모리 장치(12)의 종류를 불문하고 재파티셔닝의 수행 필요 여부를 나타낸다면, 플래그가 1로 설정된 것을 부트로더가 확인한 후, 부트로더는 비휘발성 메모리의 사용 공간 사이즈 정보 및 파티션 사이즈 정보(1141, 1142), 휘발성 메모리의 리소스 값 사이즈 정보 및 파티션 사이즈 정보(1143, 1144)를 모두 확인한다. 그리고 정보가 업데이트되어 재파티셔닝이 되어야 하는 메모리 장치에 대하여 재파티셔닝을 수행한다.After the boot loader confirms that the flag is set to 1, if the flag indicates whether it is necessary to perform repartitioning regardless of the type of the nonvolatile memory device 11 and the volatile memory device 12, The used space size information and partition size information 1141 and 1142, the volatile memory resource size information, and the partition size information 1143 and 1144 are all checked. And the information is updated to perform repartitioning on the memory device to be repartitioned.

만약, 플래그가 2Bit의 크기를 가진다면, 비휘발성 메모리 장치(11) 및 휘발성 메모리 장치(12)의 종류를 함께 판단하기 위해서는 2Bit의 크기를 가질 수도 있다. 즉, 2Bit의 플래그 가운데 1Bit는 비휘발성 메모리 장치(11)의 재파티셔닝의 수행 필요 여부, 나머지 1Bit는 휘발성 메모리 장치(12)의 재파티셔닝의 수행 필요 여부를 나타낼 수 있다.If the flag has a size of 2 bits, it may have a size of 2 bits to judge the types of the nonvolatile memory device 11 and the volatile memory device 12 together. That is, 1 bit among the flags of 2 bits may indicate whether or not to perform repartitioning of the nonvolatile memory device 11, and the remaining 1 bit may indicate whether or not to perform repartitioning of the volatile memory device 12.

나아가, 플래그가 3Bit를 가질 수도 있다. 이 경우, 1Bit는 비휘발성 메모리 장치(11)의 이미지 영역(111)의 여유 공간(1112)이 부족한 경우, 1Bit는 비휘발성 메모리 장치(11)의 프리 영역(112)의 여유 공간(1122)이 부족한 경우, 1Bit는 휘발성 메모리 장치(12)의 재파티셔닝의 수행 필요 여부를 나타낼 수 있다. 즉, 플래그는 나타내는 정보의 종류에 따라 다양한 사이즈를 가질 수 있다.Furthermore, the flag may have 3 bits. In this case, when 1 bit is insufficient in the spare area 1112 of the image area 111 of the nonvolatile memory device 11, 1 bit is the spare area 1122 of the free area 112 of the nonvolatile memory device 11 If insufficient, 1 Bit may indicate the need to perform repartitioning of volatile memory device 12. That is, the flags can have various sizes depending on the type of information represented.

제어부(3)가 플래그 영역(113)의 플래그를 1로 설정한 후, 정보 저장 영역(114)에 저장된 휘발성 메모리의 리소스 값 사이즈 정보 및 파티션 사이즈 정보(1143, 1144)를 업데이트한다. 구체적으로, 제어부(3)는 최근에 가장 사이즈가 컸던 휘발성 메모리의 사용 공간 사이즈 정보로 업데이트하고, 현재의 휘발성 메모리의 파티션 사이즈 정보 및 재파티셔닝 되어야 할 파티션 사이즈 정보를 함께 업데이트한다.The control unit 3 sets the flag of the flag area 113 to 1 and then updates the resource value size information and the partition size information 1143 and 1144 of the volatile memory stored in the information storage area 114. [ Specifically, the controller 3 updates the space size information of the currently used volatile memory with the largest size, and updates the partition size information of the current volatile memory and the partition size information to be repartitioned together.

그리고 카메라를 재부팅 시킨다. 카메라가 재부팅되면, 부트로더는 우선 플래그 영역(113)을 로딩한다. 그리고 플래그가 1로 설정된 것을 확인하면, 정보 저장 영역(114)에서 상기 업데이트 된 휘발성 메모리의 리소스 값 사이즈 정보 및 파티션 사이즈 정보(1143, 1144)를 로딩한다.Then reboot the camera. When the camera is rebooted, the boot loader loads the priority flag area 113 first. If it is confirmed that the flag is set to 1, the resource value size information and partition size information 1143 and 1144 of the updated volatile memory are loaded in the information storage area 114.

상기 기술한 바와 같이, 제1 영역(121)의 사용 공간(1211) 사이즈가 프리 영역(112)의 파티션 사이즈에 비해 너무 커서 여유 공간(1212)이 부족하다. 따라서, 부트로더는 재파티셔닝을 수행하기 위해 다른 영역에 존재하는 여유 공간을 체크한다. 즉, 제2 영역(122)의 여유 공간(1222)을 체크한다.As described above, the size of the use space 1211 of the first area 121 is too large as compared with the size of the partition of the free area 112, and the free space 1212 is insufficient. Thus, the boot loader checks for free space in other areas to perform repartitioning. That is, the spare area 1222 of the second area 122 is checked.

여기서 휘발성 메모리 장치(12)는 전원 공급이 차단되면 저장되었던 정보들이 휘발된다. 즉, 카메라의 재부팅이 수행되더라도 제1 영역(121) 및 제2 영역(122)에 저장된 정보들이 사라져, 실제로는 사용 공간이 0이 된다. 따라서, 상기 기술한 사용 공간(1211)은, 카메라가 재부팅이 되기 직전에, 특정 시간 동안 가장 사이즈가 컸던 사용 공간(1211)을 말하며, 여유 공간(1212)은 해당 영역의 파티션 사이즈에서 상기 사용 공간(1211)을 뺀 공간을 말한다.In this case, when the power supply is interrupted, the volatile memory device 12 volatilizes the stored information. That is, even if the reboot of the camera is performed, the information stored in the first area 121 and the second area 122 disappears, and the used space is actually zero. Therefore, the use space 1211 refers to a use space 1211 which is the largest size for a specific time immediately before the camera is rebooted, and the spare space 1212 refers to the use space 1211, (1211).

도 16은 본 발명의 일 실시예에 따른 휘발성 메모리 장치(12)를 재파티셔닝하여 제1 영역(121)의 여유 공간(1211)을 확보하는 모습을 나타내는 개념도이고, 도 17은 본 발명의 일 실시예에 따른 휘발성 메모리 장치(12)의 재파티셔닝이 완료된 모습을 나타낸 개념도이다.16 is a conceptual view showing a state in which the spare area 1211 of the first area 121 is ensured by repartitioning the volatile memory device 12 according to an embodiment of the present invention. FIG. 8 is a conceptual diagram showing a state in which repartitioning of the volatile memory device 12 according to the example is completed.

도 16에 도시된 바와 같이, 부트로더는 카메라가 재부팅되면, 제2 영역(122)에 존재하는 여유 공간(1221)을 어느 정도 감소시키고, 제1 영역(121)의 파티션 사이즈를 증가시키도록 재파티셔닝을 수행한다. 따라서, 도 17에 도시된 바와 같이, 제1 영역(121)의 여유 공간(1211)이 증가하여, OS에 작용하는 부하가 증가하더라도, 속도가 크게 저하되지 않게 된다.As shown in FIG. 16, when the camera is rebooted, the boot loader may reduce the free space 1221 existing in the second area 122 to some extent and increase the partition size of the first area 121 Perform partitioning. Therefore, as shown in FIG. 17, even if the free space 1211 of the first area 121 increases and the load acting on the OS increases, the speed does not significantly decrease.

본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.It will be understood by those skilled in the art that the present invention may be embodied in other specific forms without departing from the spirit or essential characteristics thereof. It is therefore to be understood that the above-described embodiments are illustrative in all aspects and not restrictive. The scope of the present invention is defined by the appended claims rather than the detailed description and all changes or modifications derived from the meaning and scope of the claims and their equivalents are to be construed as being included within the scope of the present invention do.

1: 저장부 2: 촬상부
3: 제어부 11: 비휘발성 메모리 장치
12: 휘발성 메모리 장치 111: 이미지 영역
112: 프리 영역 113: 플래그 영역
114 정보 저장 영역 121: 제1 영역
122: 제2 영역
1: storage unit 2: imaging unit
3: control unit 11: nonvolatile memory device
12: volatile memory device 111: image area
112: free area 113: flag area
114 information storage area 121: first area
122: second region

Claims (6)

전자 기기에 내장되는 비휘발성 메모리 장치에 있어서,
부트로더를 포함하는 이미지가 설치되는 이미지 영역;
사용자의 사용에 의해 발생하는 데이터가 저장되는 프리 영역; 및
사용 공간 사이즈 정보 및 파티션 사이즈 정보를 저장하는 정보 저장 영역을 포함하고,
상기 이미지 영역, 상기 프리 영역 및 상기 정보 저장 영역은,
각각 파티션들로 분할되어 형성되되,
상기 전자 기기에 내장된 제어부에 의해 상기 이미지 영역 및 상기 프리 영역의 사용 공간 및 여유 공간 사이즈가 실시간으로 모니터링 되고,
상기 제어부에 의해 재파티셔닝의 수행이 필요한 것으로 판단되면, 상기 사용 공간 사이즈 정보 및 상기 파티션 사이즈 정보가 업데이트되며,
상기 전자 기기가 재부팅되면, 상기 이미지 영역에 설치된 상기 부트로더가 업데이트된 상기 사용 공간 사이즈 정보 및 상기 파티션 사이즈 정보를 로딩하여 재파티셔닝을 수행하는, 메모리 장치.
A nonvolatile memory device incorporated in an electronic device,
An image area in which the image containing the boot loader is installed;
A free area in which data generated by use of the user is stored; And
An information storage area for storing used space size information and partition size information,
The image area, the free area, and the information storage area,
Each of which is divided into partitions,
Wherein a usage space and a free space size of the image area and the free area are monitored in real time by a control unit built in the electronic device,
Wherein when the controller determines that re-partitioning is required, the used space size information and the partition size information are updated,
Wherein when the electronic device is rebooted, the boot loader installed in the image area loads the updated used space size information and the partition size information to perform repartitioning.
제1항에 있어서,
상기 이미지 영역 또는 상기 프리 영역의 상기 여유 공간이 없거나 부족하면, 상기 제어부에 의해 재파티셔닝의 수행이 필요한 것으로 판단되는, 메모리 장치.
The method according to claim 1,
Wherein if the free space of the image area or the free area is missing or insufficient, it is determined that the re-partitioning needs to be performed by the control part.
제2항에 있어서,
재파티셔닝의 수행 필요 여부를 나타내는 플래그가 저장되는 플래그 영역을 더 포함하고,
상기 제어부에 의해 재파티셔닝의 수행이 필요한 것으로 판단되면, 상기 플래그가 특정 값을 나타내도록 설정되는, 메모리 장치.
3. The method of claim 2,
Further comprising a flag area in which a flag indicating whether to perform re-partitioning is stored,
Wherein the flag is set to indicate a specific value if it is determined by the controller to perform the re-partitioning.
제3항에 있어서,
상기 부트로더는,
상기 전자 기기가 재부팅되면, 상기 플래그를 로딩하여 체크하고,
상기 플래그가 특정 값을 나타내면, 업데이트된 상기 사용 공간 사이즈 정보 및 상기 파티션 사이즈 정보를 로딩하여 재파티셔닝을 수행하는, 메모리 장치.
The method of claim 3,
The boot loader includes:
Wherein when the electronic device is rebooted, the flag is loaded and checked,
And when the flag indicates a specific value, updates the used space size information and the partition size information to perform repartitioning.
제1항에 있어서,
상기 정보 저장 영역은,
휘발성 메모리 장치의 리소스 값 사이즈 정보 및 휘발성 메모리 장치의 파티션 사이즈 정보를 더 저장하는, 메모리 장치.
The method according to claim 1,
Wherein the information storage area comprises:
And stores the resource value size information of the volatile memory device and the partition size information of the volatile memory device.
제5항에 있어서,
상기 휘발성 메모리 장치는,
파티션들로 복수의 영역으로 분할되며,
상기 전자 기기에 내장된 제어부에 의해 상기 휘발성 메모리 장치의 상기 복수의 영역의 사용 공간 및 여유 공간 사이즈가 실시간으로 모니터링 되고,
상기 제어부에 의해 상기 휘발성 메모리 장치의 재파티셔닝의 수행이 필요한 것으로 판단되면, 상기 휘발성 메모리 장치의 리소스 값 사이즈 정보 및 상기 휘발성 메모리 장치의 파티션 사이즈 정보가 업데이트되며,
상기 전자 기기가 재부팅되면, 상기 이미지 영역에 설치된 상기 부트로더가 업데이트된 상기 휘발성 메모리 장치의 리소스 값 사이즈 정보 및 상기 휘발성 메모리 장치의 파티션 사이즈 정보를 로딩하여 재파티셔닝을 수행하는, 메모리 장치.
6. The method of claim 5,
The volatile memory device includes:
Partitions are divided into a plurality of regions,
Wherein a usage space and a free space size of the plurality of areas of the volatile memory device are monitored in real time by a control unit built in the electronic device,
Wherein the resource value size information of the volatile memory device and the partition size information of the volatile memory device are updated when it is determined by the controller to perform re-partitioning of the volatile memory device,
Wherein when the electronic device is rebooted, the boot loader installed in the image area performs re-partitioning by loading resource value size information of the updated volatile memory device and partition size information of the volatile memory device.
KR1020160140034A 2016-10-26 2016-10-26 The Apparatus For Memory KR102571501B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160140034A KR102571501B1 (en) 2016-10-26 2016-10-26 The Apparatus For Memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160140034A KR102571501B1 (en) 2016-10-26 2016-10-26 The Apparatus For Memory

Publications (2)

Publication Number Publication Date
KR20180045557A true KR20180045557A (en) 2018-05-04
KR102571501B1 KR102571501B1 (en) 2023-08-29

Family

ID=62199298

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160140034A KR102571501B1 (en) 2016-10-26 2016-10-26 The Apparatus For Memory

Country Status (1)

Country Link
KR (1) KR102571501B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020116750A1 (en) * 2018-12-05 2020-06-11 Samsung Electronics Co., Ltd. Method and electronic device for initializing storage
KR20210066596A (en) * 2019-11-28 2021-06-07 국방과학연구소 Scheduling Processor and Method

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090060774A (en) 2007-12-10 2009-06-15 한국전자통신연구원 Apparatus and method for mirroring firmware and data of the embedded system
KR20100114546A (en) * 2008-03-21 2010-10-25 가부시끼가이샤 도시바 Data updating method, memory system and memory device
JP2011095952A (en) * 2009-10-29 2011-05-12 Kyocera Mita Corp Method for updating firmware and electronic equipment
KR20130075018A (en) 2011-12-27 2013-07-05 한국전자통신연구원 Data update apparatus for flash memory file system and method thereof
KR20150038386A (en) * 2012-09-27 2015-04-08 인텔 코포레이션 Techniques for dynamic physical memory partitioning

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090060774A (en) 2007-12-10 2009-06-15 한국전자통신연구원 Apparatus and method for mirroring firmware and data of the embedded system
KR20100114546A (en) * 2008-03-21 2010-10-25 가부시끼가이샤 도시바 Data updating method, memory system and memory device
JP2011095952A (en) * 2009-10-29 2011-05-12 Kyocera Mita Corp Method for updating firmware and electronic equipment
KR20130075018A (en) 2011-12-27 2013-07-05 한국전자통신연구원 Data update apparatus for flash memory file system and method thereof
KR20150038386A (en) * 2012-09-27 2015-04-08 인텔 코포레이션 Techniques for dynamic physical memory partitioning

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020116750A1 (en) * 2018-12-05 2020-06-11 Samsung Electronics Co., Ltd. Method and electronic device for initializing storage
US11086538B2 (en) 2018-12-05 2021-08-10 Samsung Electronics Co., Ltd. Method and electronic device for initializing storage
KR20210066596A (en) * 2019-11-28 2021-06-07 국방과학연구소 Scheduling Processor and Method

Also Published As

Publication number Publication date
KR102571501B1 (en) 2023-08-29

Similar Documents

Publication Publication Date Title
US10031698B2 (en) Method of wear leveling for data storage device
US8949512B2 (en) Trim token journaling
US10789160B2 (en) Utilizing different data storage policies in response to different characteristics of data
US8463826B2 (en) Incremental garbage collection for non-volatile memories
KR101846612B1 (en) Load boot data
KR101552207B1 (en) Semiconductor memory device with reserved area
JP5422652B2 (en) Avoiding self-eviction due to dynamic memory allocation in flash memory storage
US20140078344A1 (en) Device and method processing continuous shooting image data
KR101583002B1 (en) Computing system booting method and code/data pinning method thereof
US20130219111A1 (en) System and method for read-while-write with nand memory device
US20170242584A1 (en) Method of dynamic table journaling
US20140229724A1 (en) Method and electronic device of file system prefetching and boot-up method
US20120089765A1 (en) Method for performing automatic boundary alignment and related non-volatile memory device
JP2011070365A (en) Memory system
US9037781B2 (en) Method for managing buffer memory, memory controllor, and memory storage device
TWI454922B (en) Memory storage device and memory controller and data writing method thereof
KR20180045557A (en) The Apparatus For Memory
CN111026325A (en) Flash memory controller, control method of flash memory controller and related electronic device
EP2757481B1 (en) Caching method and caching system using dual disks
JP2011222057A (en) Memory system
KR20170037017A (en) Memory Upgrade System And Method
KR20210004629A (en) Memory system and operating method thereof
KR100992079B1 (en) Method for managing swap space for flash memory based swap storage device
JP6100750B2 (en) Device with memory and controller and device with data storage device
US10896004B2 (en) Data storage device and control method for non-volatile memory, with shared active block for writing commands and internal data collection

Legal Events

Date Code Title Description
N231 Notification of change of applicant
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant