KR20230081556A - Electronic device and operation method of electronic device for managing storage space - Google Patents

Electronic device and operation method of electronic device for managing storage space Download PDF

Info

Publication number
KR20230081556A
KR20230081556A KR1020220014398A KR20220014398A KR20230081556A KR 20230081556 A KR20230081556 A KR 20230081556A KR 1020220014398 A KR1020220014398 A KR 1020220014398A KR 20220014398 A KR20220014398 A KR 20220014398A KR 20230081556 A KR20230081556 A KR 20230081556A
Authority
KR
South Korea
Prior art keywords
partition
volume
file
electronic device
file system
Prior art date
Application number
KR1020220014398A
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 EP22901652.2A priority Critical patent/EP4357902A1/en
Priority to PCT/KR2022/018500 priority patent/WO2023101294A1/en
Priority to US18/071,056 priority patent/US20230168831A1/en
Publication of KR20230081556A publication Critical patent/KR20230081556A/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
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/11File system administration, e.g. details of archiving or snapshots
    • G06F16/113Details of archiving
    • 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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • 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/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage 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/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • 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/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/654Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories

Abstract

다양한 실시예에 따른 전자 장치에서, 전자 장치는 제 1 파티션, 제 2 파티션 및 제 3 파티션 을 포함하는 저장 장치 및 프로세서를 포함하고, 상기 프로세서는 상기 제 2 파티션을 제 1 볼륨으로, 상기 제 3 파티션을 제 2 볼륨을 구성하고, 상기 제 2 볼륨을 상기 파일 시스템에 어태치(attach)하거나 디태치(detach)하여 상기 저장 장치의 저장 공간을 관리할 수 있다.
이 밖에 다양한 실시예들이 가능하다.
In an electronic device according to various embodiments, the electronic device includes a storage device including a first partition, a second partition, and a third partition, and a processor, wherein the processor converts the second partition into a first volume and converts the third partition into a first volume. Partitions constitute a second volume, and the storage space of the storage device may be managed by attaching or detaching the second volume to the file system.
In addition, various embodiments are possible.

Description

저장 공간을 관리하기 위한 전자 장치 및 전자 장치의 동작 방법{ELECTRONIC DEVICE AND OPERATION METHOD OF ELECTRONIC DEVICE FOR MANAGING STORAGE SPACE}Electronic device and method of operating the electronic device for managing storage space

본 문서에 개시된 다양한 실시예들은, 저장 공간을 관리하기 위한 전자 장치 및 전자 장치의 동작 방법에 관한 것이다. Various embodiments disclosed in this document relate to an electronic device for managing a storage space and an operating method of the electronic device.

최근 개발되는 스마트 폰(smart phone), 태블릿 PC(Tablet PC), PMP(Portable Multimedia Player), PDA(Personal Digital Assistant), 랩탑 PC(Laptop Personal Computer) 및 웨어러블 기기(Wearable device)와 같은 전자 장치는 이동성(mobility)뿐만 아니라 다양한 기능(예를 들어, 게임, 소셜 네트워크 서비스(SNS), 인터넷, 멀티미디어, 사진 동영상 촬영 및 실행)을 수행할 수 있다.Recently developed electronic devices such as smart phones, tablet PCs, portable multimedia players (PMPs), personal digital assistants (PDAs), laptop PCs and wearable devices In addition to mobility, various functions (eg, games, social network service (SNS), Internet, multimedia, taking and executing photos and videos) can be performed.

전자 장치는 다양한 기능을 수행에 필요한 고용량의 데이터를 저장하기 위해 낸드 플래시 메모리 또는 SSD(solid state disk)와 같은 저장 장치를 포함할 수 있다.An electronic device may include a storage device such as a NAND flash memory or a solid state disk (SSD) to store high-capacity data necessary for performing various functions.

전자 장치는 데이터를 효율적으로 저장 및/또는 관리하기 위한 가상 메모리 관리 기법을 사용할 수 있다. 예를 들어, 가상 메모리 관리 기법은 메인 메모리(예: DRAM(dynamic random access memory))와 저장 장치(storage)(예: 비휘발성 메모리)를 매핑시켜 데이터를 관리하는 방식으로, 저장 장치에 저장된 데이터 중 프로세서에서 필요로 하는 적어도 일부의 데이터(예: 페이지)를 메인 메모리로 로딩하여 처리하는 요구 페이징(demand paging) 방식을 포함할 수 있다.An electronic device may use a virtual memory management technique for efficiently storing and/or managing data. For example, the virtual memory management technique is a method of managing data by mapping a main memory (eg, dynamic random access memory (DRAM)) and a storage device (eg, non-volatile memory), and data stored in the storage device. It may include a demand paging method in which at least some data (eg, pages) required by the processor is loaded into main memory and processed.

모바일 단말에 포함되는 저장 장치는 단말 구동을 위한 실행 파일이 저장되는 시스템 파티션과, 사용자 데이터 저장을 위한 사용자 데이터 파티션으로 구분될 수 있다. A storage device included in a mobile terminal may be divided into a system partition for storing execution files for driving the terminal and a user data partition for storing user data.

또한, 모바일 단말은 출시 이후 시스템 소프트웨어 업데이트(FOTA : firmware over-the-arir)를 제공받을 수 있고, 이를 통해 시스템 파티션 영역의 실행 파일이 갱신될 수 있다. In addition, the mobile terminal may be provided with a system software update (FOTA: firmware over-the-arir) after release, through which an executable file in a system partition area may be updated.

시스템 소프트웨어 업데이트 시에, 모바일 단말을 구동하는 서비스나 애플리케이션의 기능이 개선됨에 따라, 시스템 파티션에 저장되는 갱신된 실행 파일의 용량이 증가할 수 있다. 시스템 파티션에 저장되는 갱신된 실행 파일의 용량 증가에 대비하여, 모바일 단말은 시스템 파티션을 크게 설정하고, 시스템 파티션에 가용 예약 공간(free space reserve)을 포함할 수 있다. 반면, 시스템 파티션의 가용 공간을 예약하는 만큼, 사용자 데이터 파티션의 크기는 영구적으로 줄어들 수 있다.When system software is updated, as the function of a service or application driving a mobile terminal is improved, the capacity of an updated execution file stored in a system partition may increase. In preparation for an increase in the capacity of an updated executable file stored in the system partition, the mobile terminal may set the system partition large and include free space reserve in the system partition. On the other hand, by reserving available space in the system partition, the size of the user data partition can be permanently reduced.

'동적 볼륨 관리 솔루션'은 시스템 영역과 사용자 데이터 영역을 하나의 물리 파티션에 대하여 볼륨으로 구성하고, 데이터 저장 공간을 공유하는 방식이다.예를 들어, 동적 볼륨 관리 솔루션은 각 볼륨을 구성하기 위한 메타데이터를 파티션 내에 유지하여, 볼륨의 크기를 확장할 경우 파티션 내의 여유 공간의 영역을 필요한 만큼 할당하여 볼륨에 추가하여 관리할 수 있다.'Dynamic volume management solution' is a method of organizing system area and user data area into volumes for one physical partition and sharing data storage space. For example, dynamic volume management solution is a method for configuring each volume. When the size of the volume is expanded by maintaining the data in the partition, an area of free space in the partition can be allocated as needed and added to the volume for management.

동적 볼륨 관리 솔루션은, 볼륨을 구성하는 데이터 블록의 청크(chunk)가 파편화 되거나, 읽기 전용(read-only) 속성의 볼륨을 구성하는 데이터 블록 청크(chunk)에 스토리지 레벨에서 제공하는 읽기-보안(write-protection) 적용을 위한 보안 강화가 복잡해지거나, 시스템 볼륨의 크기를 증가시키기 위하여 사용자 데이터 볼륨을 축소하는 경우, 사용자 데이터 볼륨을 구성하는 데이터 블록 청크(chunk)에 저장되어 파일의 이동 처리가 어려울 수 있다.The dynamic volume management solution provides read-security provided at the storage level to chunks of data blocks constituting a volume, or chunks of data blocks constituting a read-only volume. write-protection) becomes complicated, or when user data volume is reduced to increase the size of system volume, it is difficult to move files as they are stored in data block chunks constituting user data volume. can

본 발명의 다양한 실시예들에 따르면, 시스템 소프트웨어 업데이트와 같이 시스템 파티션에 저장되는 파일 용량의 증가와 관련하여, 가용 예약 공간(free-reserve space)을 관리할 수 있다. 본 발명의 다양한 실시예들에 따른 전자 장치는 시스템 데이터 영역과 사용자 데이터 영역을 관리하는 데에 있어서, 가용 예약 공간을 볼륨으로 인식하고 로딩함에 따라, 파일 시스템을 통하여 관리되는 저장 공간을 동적으로 관리할 수 있다.According to various embodiments of the present invention, a free-reserve space may be managed in relation to an increase in capacity of a file stored in a system partition, such as a system software update. In managing a system data area and a user data area, an electronic device according to various embodiments of the present disclosure dynamically manages storage space managed through a file system by recognizing and loading an available reserved space as a volume. can do.

본 발명의 다양한 실시예에 따른 전자 장치는 볼륨 매니저를 포함하여, 볼륨 매니저가, 가용 예약 공간을 사용자 데이터 영역에 대응하는 파일 시스템 및/또는 볼륨에 어태치(attach)하거나 디태치(detach)함으로써 파일 시스템 및/또는 볼륨을 리사이즈(resize)할 수 있다. 이에 따라, 시스템 소프트웨어 업데이트 후 사용하지 않는 가용 예약 공간에 대하여 사용자 데이터 영역에서 사용할 수 있게 관리함으로써, 저장 공간을 효율적으로 사용할 수 있다.An electronic device according to various embodiments of the present disclosure includes a volume manager, whereby the volume manager attaches or detachs an available reserved space to a file system and/or volume corresponding to a user data area. You can resize file systems and/or volumes. Accordingly, it is possible to efficiently use the storage space by managing the available reserved space that is not in use after the system software update so that it can be used in the user data area.

본 문서에서 이루고자 하는 기술적 과제는 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The technical problem to be achieved in this document is not limited to the technical problem mentioned above, and other technical problems not mentioned can be clearly understood by those skilled in the art from the description below. There will be.

본 문서에 개시된 다양한 실시예에 따른 전자 장치는, 제 1 파티션, 제 2 파티션 및 제 3 파티션 을 포함하는 저장 장치 및 프로세서를 포함하고, 상기 프로세서는 상기 제 2 파티션을 제 1 볼륨으로, 상기 제 3 파티션을 제 2 볼륨을 구성하고, 상기 제 2 볼륨을 상기 파일 시스템에 어태치(attach)하거나 디태치(detach)하여 상기 저장 장치의 저장 공간을 관리할 수 있다.An electronic device according to various embodiments disclosed in this document includes a storage device including a first partition, a second partition, and a third partition, and a processor, wherein the processor converts the second partition into a first volume, 3 partitions constitute a second volume, and the storage space of the storage device may be managed by attaching or detaching the second volume to the file system.

본 문서에 개시된 다양한 실시예에 따른 전자 장치의 동작 방법은, 제 1 파티션, 제 2 파티션 및 제 3 파티션을 포함하는 저장 장치를 관리하는 전자 장치의 동작 방법이고, 상기 제 1 파티션을 관리하는 제 1 파일 시스템을 구성하는 동작, 상기 제 2 파티션을 제 1 볼륨으로, 상기 제 3 파티션을 제 2 볼륨으로 제 2 파일 시스템을 구성하는 동작, 및 상기 제 2 볼륨을 상기 제 2 파일 시스템에 어태치(attach)하거나 디태치(detach)하는 동작을 포함할 수 있다.An operating method of an electronic device according to various embodiments disclosed in this document is an operating method of an electronic device for managing a storage device including a first partition, a second partition, and a third partition, and a method for managing the first partition. An operation of constructing a first file system, an operation of constructing a second file system using the second partition as a first volume and the third partition as a second volume, and attaching the second volume to the second file system It may include an operation to attach or detach.

다양한 실시예에 따르면, 전자 장치는 저장 공간을 효율적으로 사용할 수 있다.According to various embodiments, an electronic device may efficiently use storage space.

다양한 실시예에 따르면, 전자 장치는 시스템 소프트웨어 업데이트를 위한 임시 저장 공간의 낭비를 감소시킬 수 있다.According to various embodiments, the electronic device can reduce the waste of temporary storage space for updating system software.

다양한 실시예에 따르면, 전자 장치는 시스템 소프트웨어 업데이트를 위한 임시 저장 공간을 활용하여 사용자 데이터 영역을 구성하여 사용자 데이터를 저장할 수 있다.According to various embodiments, the electronic device may configure a user data area by utilizing a temporary storage space for system software update to store user data.

다양한 실시예에 따르면, 전자 장치는 시스템 소프트웨어 업데이트 이후 남은 임시 저장 공간을 사용자 데이터를 저장하는 사용자 데이터 영역으로 활용할 수 있다.According to various embodiments, the electronic device may utilize the temporary storage space remaining after system software update as a user data area for storing user data.

다양한 실시예에 따르면, 전자 장치는 시스템 소프트웨어 업데이트 전, 임시 저장 공간이 없음에 대응하여, 볼륨 내의 데이터를 이동시켜 시스템 소프트웨어 업데이트를 위한 임시 저장 공간을 확보할 수 있다.According to various embodiments, the electronic device may secure a temporary storage space for system software update by moving data in a volume in response to the absence of a temporary storage space before a system software update.

본 문서의 다양한 실시에에서 얻을 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 개시가 속하는 기술 분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.Effects obtainable in various embodiments of this document are not limited to the effects mentioned above, and other effects not mentioned will become clear to those skilled in the art from the description below. You will be able to understand.

도면의 설명과 관련하여, 동일 또는 유사한 구성 요소에 대해서는 동일 또는 유사한 참조 부호가 사용될 수 있다.
도 1은, 다양한 실시예들에 따른, 네트워크 환경 내의 전자 장치의 블럭도이다.
도 2는, 다양한 실시예에 따른 저장 공간의 물리 관점 및 논리 관점에서의 블록도이다.
도 3은, 다양한 실시예에 따른 볼륨볼륨을 관리하는 방법을 도시한 흐름도이다.
도 4a, 4b 및 4c는 파일 시스템에 포함된 볼륨 매니저가, 시스템 소프트웨어 업데이트에 대응하여 볼륨을 관리하는 방법에 대응하는 실시예를 도시한 도면이다.
도 5a, 5b 및 5c는 파일 시스템과 분리된 볼륨 매니저가, 시스템 소프트웨어 업데이트에 대응하여 볼륨을 관리하는 방법에 대응하는 실시예를 도시한 도면이다.
도 6은, 다양한 실시예에 따른 볼륨 매니저가, 시스템 소프트웨어 업데이트에 대응하여 볼륨을 관리하는 방법을 도시한 도면이다.
In connection with the description of the drawings, the same or similar reference numerals may be used for the same or similar elements.
1 is a block diagram of an electronic device in a network environment, according to various embodiments.
2 is a block diagram from a physical and logical perspective of a storage space according to various embodiments.
3 is a flowchart illustrating a method of managing a volume volume according to various embodiments.
4A, 4B and 4C are diagrams illustrating an embodiment corresponding to a method of managing a volume in response to a system software update by a volume manager included in a file system.
5A, 5B and 5C are diagrams illustrating an embodiment corresponding to a method in which a volume manager separated from a file system manages a volume in response to a system software update.
6 is a diagram illustrating a method for a volume manager to manage a volume in response to a system software update, according to various embodiments.

도 1은, 다양한 실시예들에 따른, 네트워크 환경(100) 내의 전자 장치(101)의 블록도이다. 도 1을 참조하면, 네트워크 환경(100)에서 전자 장치(101)는 제 1 네트워크(198)(예: 근거리 무선 통신 네트워크)를 통하여 전자 장치(102)와 통신하거나, 또는 제 2 네트워크(199)(예: 원거리 무선 통신 네트워크)를 통하여 전자 장치(104) 또는 서버(108) 중 적어도 하나와 통신할 수 있다. 일실시예에 따르면, 전자 장치(101)는 서버(108)를 통하여 전자 장치(104)와 통신할 수 있다. 일실시예에 따르면, 전자 장치(101)는 프로세서(120), 메모리(130), 입력 모듈(150), 음향 출력 모듈(155), 디스플레이 모듈(160), 오디오 모듈(170), 센서 모듈(176), 인터페이스(177), 연결 단자(178), 햅틱 모듈(179), 카메라 모듈(180), 전력 관리 모듈(188), 배터리(189), 통신 모듈(190), 가입자 식별 모듈(196), 또는 안테나 모듈(197)을 포함할 수 있다. 어떤 실시예에서는, 전자 장치(101)에는, 이 구성요소들 중 적어도 하나(예: 연결 단자(178))가 생략되거나, 하나 이상의 다른 구성요소가 추가될 수 있다. 어떤 실시예에서는, 이 구성요소들 중 일부들(예: 센서 모듈(176), 카메라 모듈(180), 또는 안테나 모듈(197))은 하나의 구성요소(예: 디스플레이 모듈(160))로 통합될 수 있다.1 is a block diagram of an electronic device 101 within a network environment 100, according to various embodiments. Referring to FIG. 1 , in a network environment 100, an electronic device 101 communicates with an electronic device 102 through a first network 198 (eg, a short-range wireless communication network) or through a second network 199. It may communicate with at least one of the electronic device 104 or the server 108 through (eg, a long-distance wireless communication network). According to one embodiment, the electronic device 101 may communicate with the electronic device 104 through the server 108 . According to an embodiment, the electronic device 101 includes a processor 120, a memory 130, an input module 150, an audio output module 155, a display module 160, an audio module 170, a sensor module ( 176), interface 177, connection terminal 178, haptic module 179, camera module 180, power management module 188, battery 189, communication module 190, subscriber identification module 196 , or the antenna module 197 may be included. In some embodiments, in the electronic device 101, at least one of these components (eg, the connection terminal 178) may be omitted or one or more other components may be added. In some embodiments, some of these components (eg, sensor module 176, camera module 180, or antenna module 197) are integrated into a single component (eg, display module 160). It can be.

프로세서(120)는, 예를 들면, 소프트웨어(예: 프로그램(140))를 실행하여 프로세서(120)에 연결된 전자 장치(101)의 적어도 하나의 다른 구성요소(예: 하드웨어 또는 소프트웨어 구성요소)를 제어할 수 있고, 다양한 데이터 처리 또는 연산을 수행할 수 있다. 일실시예에 따르면, 데이터 처리 또는 연산의 적어도 일부로서, 프로세서(120)는 다른 구성요소(예: 센서 모듈(176) 또는 통신 모듈(190))로부터 수신된 명령 또는 데이터를 휘발성 메모리(132)에 저장하고, 휘발성 메모리(132)에 저장된 명령 또는 데이터를 처리하고, 결과 데이터를 비휘발성 메모리(134)에 저장할 수 있다. 일실시예에 따르면, 프로세서(120)는 메인 프로세서(121)(예: 중앙 처리 장치 또는 어플리케이션 프로세서) 또는 이와는 독립적으로 또는 함께 운영 가능한 보조 프로세서(123)(예: 그래픽 처리 장치, 신경망 처리 장치(NPU: neural processing unit), 이미지 시그널 프로세서, 센서 허브 프로세서, 또는 커뮤니케이션 프로세서)를 포함할 수 있다. 예를 들어, 전자 장치(101)가 메인 프로세서(121) 및 보조 프로세서(123)를 포함하는 경우, 보조 프로세서(123)는 메인 프로세서(121)보다 저전력을 사용하거나, 지정된 기능에 특화되도록 설정될 수 있다. 보조 프로세서(123)는 메인 프로세서(121)와 별개로, 또는 그 일부로서 구현될 수 있다.The processor 120, for example, executes software (eg, the program 140) to cause at least one other component (eg, hardware or software component) of the electronic device 101 connected to the processor 120. It can control and perform various data processing or calculations. According to one embodiment, as at least part of data processing or operation, the processor 120 transfers instructions or data received from other components (e.g., sensor module 176 or communication module 190) to volatile memory 132. , processing commands or data stored in the volatile memory 132 , and storing resultant data in the non-volatile memory 134 . According to one embodiment, the processor 120 may include a main processor 121 (eg, a central processing unit or an application processor) or a secondary processor 123 (eg, a graphic processing unit, a neural network processing unit ( NPU: neural processing unit (NPU), image signal processor, sensor hub processor, or communication processor). For example, when the electronic device 101 includes the main processor 121 and the auxiliary processor 123, the auxiliary processor 123 may use less power than the main processor 121 or be set to be specialized for a designated function. can The secondary processor 123 may be implemented separately from or as part of the main processor 121 .

보조 프로세서(123)는, 예를 들면, 메인 프로세서(121)가 인액티브(예: 슬립) 상태에 있는 동안 메인 프로세서(121)를 대신하여, 또는 메인 프로세서(121)가 액티브(예: 어플리케이션 실행) 상태에 있는 동안 메인 프로세서(121)와 함께, 전자 장치(101)의 구성요소들 중 적어도 하나의 구성요소(예: 디스플레이 모듈(160), 센서 모듈(176), 또는 통신 모듈(190))와 관련된 기능 또는 상태들의 적어도 일부를 제어할 수 있다. 일실시예에 따르면, 보조 프로세서(123)(예: 이미지 시그널 프로세서 또는 커뮤니케이션 프로세서)는 기능적으로 관련 있는 다른 구성요소(예: 카메라 모듈(180) 또는 통신 모듈(190))의 일부로서 구현될 수 있다. 일실시예에 따르면, 보조 프로세서(123)(예: 신경망 처리 장치)는 인공지능 모델의 처리에 특화된 하드웨어 구조를 포함할 수 있다. 인공지능 모델은 기계 학습을 통해 생성될 수 있다. 이러한 학습은, 예를 들어, 인공지능 모델이 수행되는 전자 장치(101) 자체에서 수행될 수 있고, 별도의 서버(예: 서버(108))를 통해 수행될 수도 있다. 학습 알고리즘은, 예를 들어, 지도형 학습(supervised learning), 비지도형 학습(unsupervised learning), 준지도형 학습(semi-supervised learning) 또는 강화 학습(reinforcement learning)을 포함할 수 있으나, 전술한 예에 한정되지 않는다. 인공지능 모델은, 복수의 인공 신경망 레이어들을 포함할 수 있다. 인공 신경망은 심층 신경망(DNN: deep neural network), CNN(convolutional neural network), RNN(recurrent neural network), RBM(restricted boltzmann machine), DBN(deep belief network), BRDNN(bidirectional recurrent deep neural network), 심층 Q-네트워크(deep Q-networks) 또는 상기 중 둘 이상의 조합 중 하나일 수 있으나, 전술한 예에 한정되지 않는다. 인공지능 모델은 하드웨어 구조 이외에, 추가적으로 또는 대체적으로, 소프트웨어 구조를 포함할 수 있다. The secondary processor 123 may, for example, take the place of the main processor 121 while the main processor 121 is in an inactive (eg, sleep) state, or the main processor 121 is active (eg, running an application). ) state, together with the main processor 121, at least one of the components of the electronic device 101 (eg, the display module 160, the sensor module 176, or the communication module 190) It is possible to control at least some of the related functions or states. According to one embodiment, the auxiliary processor 123 (eg, image signal processor or communication processor) may be implemented as part of other functionally related components (eg, camera module 180 or communication module 190). there is. According to an embodiment, the auxiliary processor 123 (eg, a neural network processing device) may include a hardware structure specialized for processing an artificial intelligence model. AI models can be created through machine learning. Such learning may be performed, for example, in the electronic device 101 itself where the artificial intelligence model is performed, or may be performed through a separate server (eg, the server 108). The learning algorithm may include, for example, supervised learning, unsupervised learning, semi-supervised learning or reinforcement learning, but in the above example Not limited. The artificial intelligence model may include a plurality of artificial neural network layers. Artificial neural networks include deep neural networks (DNNs), convolutional neural networks (CNNs), recurrent neural networks (RNNs), restricted boltzmann machines (RBMs), deep belief networks (DBNs), bidirectional recurrent deep neural networks (BRDNNs), It may be one of deep Q-networks or a combination of two or more of the foregoing, but is not limited to the foregoing examples. The artificial intelligence model may include, in addition or alternatively, software structures in addition to hardware structures.

메모리(130)는, 전자 장치(101)의 적어도 하나의 구성요소(예: 프로세서(120) 또는 센서 모듈(176))에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는, 예를 들어, 소프트웨어(예: 프로그램(140)) 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 메모리(130)는, 휘발성 메모리(132) 또는 비휘발성 메모리(134)를 포함할 수 있다. The memory 130 may store various data used by at least one component (eg, the processor 120 or the sensor module 176) of the electronic device 101 . The data may include, for example, input data or output data for software (eg, program 140) and commands related thereto. The memory 130 may include volatile memory 132 or non-volatile memory 134 .

프로그램(140)은 메모리(130)에 소프트웨어로서 저장될 수 있으며, 예를 들면, 운영 체제(142), 미들 웨어(144) 또는 어플리케이션(146)을 포함할 수 있다. The program 140 may be stored as software in the memory 130 and may include, for example, an operating system 142 , middleware 144 , or an application 146 .

입력 모듈(150)은, 전자 장치(101)의 구성요소(예: 프로세서(120))에 사용될 명령 또는 데이터를 전자 장치(101)의 외부(예: 사용자)로부터 수신할 수 있다. 입력 모듈(150)은, 예를 들면, 마이크, 마우스, 키보드, 키(예: 버튼), 또는 디지털 펜(예: 스타일러스 펜)을 포함할 수 있다. The input module 150 may receive a command or data to be used by a component (eg, the processor 120) of the electronic device 101 from the outside of the electronic device 101 (eg, a user). The input module 150 may include, for example, a microphone, a mouse, a keyboard, a key (eg, a button), or a digital pen (eg, a stylus pen).

음향 출력 모듈(155)은 음향 신호를 전자 장치(101)의 외부로 출력할 수 있다. 음향 출력 모듈(155)은, 예를 들면, 스피커 또는 리시버를 포함할 수 있다. 스피커는 멀티미디어 재생 또는 녹음 재생과 같이 일반적인 용도로 사용될 수 있다. 리시버는 착신 전화를 수신하기 위해 사용될 수 있다. 일실시예에 따르면, 리시버는 스피커와 별개로, 또는 그 일부로서 구현될 수 있다.The sound output module 155 may output sound signals to the outside of the electronic device 101 . The sound output module 155 may include, for example, a speaker or a receiver. The speaker can be used for general purposes such as multimedia playback or recording playback. A receiver may be used to receive an incoming call. According to one embodiment, the receiver may be implemented separately from the speaker or as part of it.

디스플레이 모듈(160)은 전자 장치(101)의 외부(예: 사용자)로 정보를 시각적으로 제공할 수 있다. 디스플레이 모듈(160)은, 예를 들면, 디스플레이, 홀로그램 장치, 또는 프로젝터 및 해당 장치를 제어하기 위한 제어 회로를 포함할 수 있다. 일실시예에 따르면, 디스플레이 모듈(160)은 터치를 감지하도록 설정된 터치 센서, 또는 상기 터치에 의해 발생되는 힘의 세기를 측정하도록 설정된 압력 센서를 포함할 수 있다. The display module 160 may visually provide information to the outside of the electronic device 101 (eg, a user). The display module 160 may include, for example, a display, a hologram device, or a projector and a control circuit for controlling the device. According to one embodiment, the display module 160 may include a touch sensor set to detect a touch or a pressure sensor set to measure the intensity of force generated by the touch.

오디오 모듈(170)은 소리를 전기 신호로 변환시키거나, 반대로 전기 신호를 소리로 변환시킬 수 있다. 일실시예에 따르면, 오디오 모듈(170)은, 입력 모듈(150)을 통해 소리를 획득하거나, 음향 출력 모듈(155), 또는 전자 장치(101)와 직접 또는 무선으로 연결된 외부 전자 장치(예: 전자 장치(102))(예: 스피커 또는 헤드폰)를 통해 소리를 출력할 수 있다.The audio module 170 may convert sound into an electrical signal or vice versa. According to one embodiment, the audio module 170 acquires sound through the input module 150, the sound output module 155, or an external electronic device connected directly or wirelessly to the electronic device 101 (eg: Sound may be output through the electronic device 102 (eg, a speaker or a headphone).

센서 모듈(176)은 전자 장치(101)의 작동 상태(예: 전력 또는 온도), 또는 외부의 환경 상태(예: 사용자 상태)를 감지하고, 감지된 상태에 대응하는 전기 신호 또는 데이터 값을 생성할 수 있다. 일실시예에 따르면, 센서 모듈(176)은, 예를 들면, 제스처 센서, 자이로 센서, 기압 센서, 마그네틱 센서, 가속도 센서, 그립 센서, 근접 센서, 컬러 센서, IR(infrared) 센서, 생체 센서, 온도 센서, 습도 센서, 또는 조도 센서를 포함할 수 있다. The sensor module 176 detects an operating state (eg, power or temperature) of the electronic device 101 or an external environmental state (eg, a user state), and generates an electrical signal or data value corresponding to the detected state. can do. According to one embodiment, the sensor module 176 may include, for example, a gesture sensor, a gyro sensor, an air pressure sensor, a magnetic sensor, an acceleration sensor, a grip sensor, a proximity sensor, a color sensor, an IR (infrared) sensor, a bio sensor, It may include a temperature sensor, humidity sensor, or light sensor.

인터페이스(177)는 전자 장치(101)가 외부 전자 장치(예: 전자 장치(102))와 직접 또는 무선으로 연결되기 위해 사용될 수 있는 하나 이상의 지정된 프로토콜들을 지원할 수 있다. 일실시예에 따르면, 인터페이스(177)는, 예를 들면, HDMI(high definition multimedia interface), USB(universal serial bus) 인터페이스, SD카드 인터페이스, 또는 오디오 인터페이스를 포함할 수 있다.The interface 177 may support one or more designated protocols that may be used to directly or wirelessly connect the electronic device 101 to an external electronic device (eg, the electronic device 102). According to one embodiment, the interface 177 may include, for example, a high definition multimedia interface (HDMI), a universal serial bus (USB) interface, an SD card interface, or an audio interface.

연결 단자(178)는, 그를 통해서 전자 장치(101)가 외부 전자 장치(예: 전자 장치(102))와 물리적으로 연결될 수 있는 커넥터를 포함할 수 있다. 일실시예에 따르면, 연결 단자(178)는, 예를 들면, HDMI 커넥터, USB 커넥터, SD 카드 커넥터, 또는 오디오 커넥터(예: 헤드폰 커넥터)를 포함할 수 있다.The connection terminal 178 may include a connector through which the electronic device 101 may be physically connected to an external electronic device (eg, the electronic device 102). According to one embodiment, the connection terminal 178 may include, for example, an HDMI connector, a USB connector, an SD card connector, or an audio connector (eg, a headphone connector).

햅틱 모듈(179)은 전기적 신호를 사용자가 촉각 또는 운동 감각을 통해서 인지할 수 있는 기계적인 자극(예: 진동 또는 움직임) 또는 전기적인 자극으로 변환할 수 있다. 일실시예에 따르면, 햅틱 모듈(179)은, 예를 들면, 모터, 압전 소자, 또는 전기 자극 장치를 포함할 수 있다.The haptic module 179 may convert electrical signals into mechanical stimuli (eg, vibration or motion) or electrical stimuli that a user may perceive through tactile or kinesthetic senses. According to one embodiment, the haptic module 179 may include, for example, a motor, a piezoelectric element, or an electrical stimulation device.

카메라 모듈(180)은 정지 영상 및 동영상을 촬영할 수 있다. 일실시예에 따르면, 카메라 모듈(180)은 하나 이상의 렌즈들, 이미지 센서들, 이미지 시그널 프로세서들, 또는 플래시들을 포함할 수 있다.The camera module 180 may capture still images and moving images. According to one embodiment, the camera module 180 may include one or more lenses, image sensors, image signal processors, or flashes.

전력 관리 모듈(188)은 전자 장치(101)에 공급되는 전력을 관리할 수 있다. 일실시예에 따르면, 전력 관리 모듈(188)은, 예를 들면, PMIC(power management integrated circuit)의 적어도 일부로서 구현될 수 있다.The power management module 188 may manage power supplied to the electronic device 101 . According to one embodiment, the power management module 188 may be implemented as at least part of a power management integrated circuit (PMIC), for example.

배터리(189)는 전자 장치(101)의 적어도 하나의 구성요소에 전력을 공급할 수 있다. 일실시예에 따르면, 배터리(189)는, 예를 들면, 재충전 불가능한 1차 전지, 재충전 가능한 2차 전지 또는 연료 전지를 포함할 수 있다.The battery 189 may supply power to at least one component of the electronic device 101 . According to one embodiment, the battery 189 may include, for example, a non-rechargeable primary cell, a rechargeable secondary cell, or a fuel cell.

통신 모듈(190)은 전자 장치(101)와 외부 전자 장치(예: 전자 장치(102), 전자 장치(104), 또는 서버(108)) 간의 직접(예: 유선) 통신 채널 또는 무선 통신 채널의 수립, 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 통신 모듈(190)은 프로세서(120)(예: 어플리케이션 프로세서)와 독립적으로 운영되고, 직접(예: 유선) 통신 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서를 포함할 수 있다. 일실시예에 따르면, 통신 모듈(190)은 무선 통신 모듈(192)(예: 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(194)(예: LAN(local area network) 통신 모듈, 또는 전력선 통신 모듈)을 포함할 수 있다. 이들 통신 모듈 중 해당하는 통신 모듈은 제 1 네트워크(198)(예: 블루투스, WiFi(wireless fidelity) direct 또는 IrDA(infrared data association)와 같은 근거리 통신 네트워크) 또는 제 2 네트워크(199)(예: 레거시 셀룰러 네트워크, 5G 네트워크, 차세대 통신 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN)와 같은 원거리 통신 네트워크)를 통하여 외부의 전자 장치(104)와 통신할 수 있다. 이런 여러 종류의 통신 모듈들은 하나의 구성요소(예: 단일 칩)로 통합되거나, 또는 서로 별도의 복수의 구성요소들(예: 복수 칩들)로 구현될 수 있다. 무선 통신 모듈(192)은 가입자 식별 모듈(196)에 저장된 가입자 정보(예: 국제 모바일 가입자 식별자(IMSI))를 이용하여 제 1 네트워크(198) 또는 제 2 네트워크(199)와 같은 통신 네트워크 내에서 전자 장치(101)를 확인 또는 인증할 수 있다. The communication module 190 is a direct (eg, wired) communication channel or a wireless communication channel between the electronic device 101 and an external electronic device (eg, the electronic device 102, the electronic device 104, or the server 108). Establishment and communication through the established communication channel may be supported. The communication module 190 may include one or more communication processors that operate independently of the processor 120 (eg, an application processor) and support direct (eg, wired) communication or wireless communication. According to one embodiment, the communication module 190 is a wireless communication module 192 (eg, a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module) or a wired communication module 194 (eg, : a local area network (LAN) communication module or a power line communication module). Among these communication modules, a corresponding communication module is a first network 198 (eg, a short-range communication network such as Bluetooth, wireless fidelity (WiFi) direct, or infrared data association (IrDA)) or a second network 199 (eg, legacy It may communicate with the external electronic device 104 through a cellular network, a 5G network, a next-generation communication network, the Internet, or a telecommunications network such as a computer network (eg, a LAN or a WAN). These various types of communication modules may be integrated as one component (eg, a single chip) or implemented as a plurality of separate components (eg, multiple chips). The wireless communication module 192 uses subscriber information (eg, International Mobile Subscriber Identifier (IMSI)) stored in the subscriber identification module 196 within a communication network such as the first network 198 or the second network 199. The electronic device 101 may be identified or authenticated.

무선 통신 모듈(192)은 4G 네트워크 이후의 5G 네트워크 및 차세대 통신 기술, 예를 들어, NR 접속 기술(new radio access technology)을 지원할 수 있다. NR 접속 기술은 고용량 데이터의 고속 전송(eMBB(enhanced mobile broadband)), 단말 전력 최소화와 다수 단말의 접속(mMTC(massive machine type communications)), 또는 고신뢰도와 저지연(URLLC(ultra-reliable and low-latency communications))을 지원할 수 있다. 무선 통신 모듈(192)은, 예를 들어, 높은 데이터 전송률 달성을 위해, 고주파 대역(예: mmWave 대역)을 지원할 수 있다. 무선 통신 모듈(192)은 고주파 대역에서의 성능 확보를 위한 다양한 기술들, 예를 들어, 빔포밍(beamforming), 거대 배열 다중 입출력(massive MIMO(multiple-input and multiple-output)), 전차원 다중입출력(FD-MIMO: full dimensional MIMO), 어레이 안테나(array antenna), 아날로그 빔형성(analog beam-forming), 또는 대규모 안테나(large scale antenna)와 같은 기술들을 지원할 수 있다. 무선 통신 모듈(192)은 전자 장치(101), 외부 전자 장치(예: 전자 장치(104)) 또는 네트워크 시스템(예: 제 2 네트워크(199))에 규정되는 다양한 요구사항을 지원할 수 있다. 일실시예에 따르면, 무선 통신 모듈(192)은 eMBB 실현을 위한 Peak data rate(예: 20Gbps 이상), mMTC 실현을 위한 손실 Coverage(예: 164dB 이하), 또는 URLLC 실현을 위한 U-plane latency(예: 다운링크(DL) 및 업링크(UL) 각각 0.5ms 이하, 또는 라운드 트립 1ms 이하)를 지원할 수 있다.The wireless communication module 192 may support a 5G network after a 4G network and a next-generation communication technology, for example, NR access technology (new radio access technology). NR access technologies include high-speed transmission of high-capacity data (enhanced mobile broadband (eMBB)), minimization of terminal power and access of multiple terminals (massive machine type communications (mMTC)), or high reliability and low latency (ultra-reliable and low latency (URLLC)). -latency communications)) can be supported. The wireless communication module 192 may support a high frequency band (eg, mmWave band) to achieve a high data rate, for example. The wireless communication module 192 uses various technologies for securing performance in a high frequency band, such as beamforming, massive multiple-input and multiple-output (MIMO), and full-dimensional multiplexing. Technologies such as input/output (FD-MIMO: full dimensional MIMO), array antenna, analog beam-forming, or large scale antenna may be supported. The wireless communication module 192 may support various requirements defined for the electronic device 101, an external electronic device (eg, the electronic device 104), or a network system (eg, the second network 199). According to one embodiment, the wireless communication module 192 is a peak data rate for eMBB realization (eg, 20 Gbps or more), a loss coverage for mMTC realization (eg, 164 dB or less), or a U-plane latency for URLLC realization (eg, Example: downlink (DL) and uplink (UL) each of 0.5 ms or less, or round trip 1 ms or less) may be supported.

안테나 모듈(197)은 신호 또는 전력을 외부(예: 외부의 전자 장치)로 송신하거나 외부로부터 수신할 수 있다. 일실시예에 따르면, 안테나 모듈(197)은 서브스트레이트(예: PCB) 위에 형성된 도전체 또는 도전성 패턴으로 이루어진 방사체를 포함하는 안테나를 포함할 수 있다. 일실시예에 따르면, 안테나 모듈(197)은 복수의 안테나들(예: 어레이 안테나)을 포함할 수 있다. 이런 경우, 제 1 네트워크(198) 또는 제 2 네트워크(199)와 같은 통신 네트워크에서 사용되는 통신 방식에 적합한 적어도 하나의 안테나가, 예를 들면, 통신 모듈(190)에 의하여 상기 복수의 안테나들로부터 선택될 수 있다. 신호 또는 전력은 상기 선택된 적어도 하나의 안테나를 통하여 통신 모듈(190)과 외부의 전자 장치 간에 송신되거나 수신될 수 있다. 어떤 실시예에 따르면, 방사체 이외에 다른 부품(예: RFIC(radio frequency integrated circuit))이 추가로 안테나 모듈(197)의 일부로 형성될 수 있다. The antenna module 197 may transmit or receive signals or power to the outside (eg, an external electronic device). According to one embodiment, the antenna module 197 may include an antenna including a radiator formed of a conductor or a conductive pattern formed on a substrate (eg, PCB). According to one embodiment, the antenna module 197 may include a plurality of antennas (eg, an array antenna). In this case, at least one antenna suitable for a communication method used in a communication network such as the first network 198 or the second network 199 is selected from the plurality of antennas by the communication module 190, for example. can be chosen A signal or power may be transmitted or received between the communication module 190 and an external electronic device through the selected at least one antenna. According to some embodiments, other components (eg, a radio frequency integrated circuit (RFIC)) may be additionally formed as a part of the antenna module 197 in addition to the radiator.

다양한 실시예에 따르면, 안테나 모듈(197)은 mmWave 안테나 모듈을 형성할 수 있다. 일실시예에 따르면, mmWave 안테나 모듈은 인쇄 회로 기판, 상기 인쇄 회로 기판의 제 1 면(예: 아래 면)에 또는 그에 인접하여 배치되고 지정된 고주파 대역(예: mmWave 대역)을 지원할 수 있는 RFIC, 및 상기 인쇄 회로 기판의 제 2 면(예: 윗 면 또는 측 면)에 또는 그에 인접하여 배치되고 상기 지정된 고주파 대역의 신호를 송신 또는 수신할 수 있는 복수의 안테나들(예: 어레이 안테나)을 포함할 수 있다.According to various embodiments, the antenna module 197 may form a mmWave antenna module. According to one embodiment, the mmWave antenna module includes a printed circuit board, an RFIC disposed on or adjacent to a first surface (eg, a lower surface) of the printed circuit board and capable of supporting a designated high frequency band (eg, mmWave band); and a plurality of antennas (eg, array antennas) disposed on or adjacent to a second surface (eg, a top surface or a side surface) of the printed circuit board and capable of transmitting or receiving signals of the designated high frequency band. can do.

상기 구성요소들 중 적어도 일부는 주변 기기들간 통신 방식(예: 버스, GPIO(general purpose input and output), SPI(serial peripheral interface), 또는 MIPI(mobile industry processor interface))을 통해 서로 연결되고 신호(예: 명령 또는 데이터)를 상호간에 교환할 수 있다.At least some of the components are connected to each other through a communication method between peripheral devices (eg, a bus, general purpose input and output (GPIO), serial peripheral interface (SPI), or mobile industry processor interface (MIPI)) and signal ( e.g. commands or data) can be exchanged with each other.

일실시예에 따르면, 명령 또는 데이터는 제 2 네트워크(199)에 연결된 서버(108)를 통해서 전자 장치(101)와 외부의 전자 장치(104)간에 송신 또는 수신될 수 있다. 외부의 전자 장치(102, 또는 104) 각각은 전자 장치(101)와 동일한 또는 다른 종류의 장치일 수 있다. 일실시예에 따르면, 전자 장치(101)에서 실행되는 동작들의 전부 또는 일부는 외부의 전자 장치들(102, 104, 또는 108) 중 하나 이상의 외부의 전자 장치들에서 실행될 수 있다. 예를 들면, 전자 장치(101)가 어떤 기능이나 서비스를 자동으로, 또는 사용자 또는 다른 장치로부터의 요청에 반응하여 수행해야 할 경우에, 전자 장치(101)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 하나 이상의 외부의 전자 장치들에게 그 기능 또는 그 서비스의 적어도 일부를 수행하라고 요청할 수 있다. 상기 요청을 수신한 하나 이상의 외부의 전자 장치들은 요청된 기능 또는 서비스의 적어도 일부, 또는 상기 요청과 관련된 추가 기능 또는 서비스를 실행하고, 그 실행의 결과를 전자 장치(101)로 전달할 수 있다. 전자 장치(101)는 상기 결과를, 그대로 또는 추가적으로 처리하여, 상기 요청에 대한 응답의 적어도 일부로서 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 모바일 에지 컴퓨팅(MEC: mobile edge computing), 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다. 전자 장치(101)는, 예를 들어, 분산 컴퓨팅 또는 모바일 에지 컴퓨팅을 이용하여 초저지연 서비스를 제공할 수 있다. 다른 실시예에 있어서, 외부의 전자 장치(104)는 IoT(internet of things) 기기를 포함할 수 있다. 서버(108)는 기계 학습 및/또는 신경망을 이용한 지능형 서버일 수 있다. 일실시예에 따르면, 외부의 전자 장치(104) 또는 서버(108)는 제 2 네트워크(199) 내에 포함될 수 있다. 전자 장치(101)는 5G 통신 기술 및 IoT 관련 기술을 기반으로 지능형 서비스(예: 스마트 홈, 스마트 시티, 스마트 카, 또는 헬스 케어)에 적용될 수 있다. According to an embodiment, commands or data may be transmitted or received between the electronic device 101 and the external electronic device 104 through the server 108 connected to the second network 199 . Each of the external electronic devices 102 or 104 may be the same as or different from the electronic device 101 . According to an embodiment, all or part of operations executed in the electronic device 101 may be executed in one or more external electronic devices among the external electronic devices 102 , 104 , or 108 . For example, when the electronic device 101 needs to perform a certain function or service automatically or in response to a request from a user or another device, the electronic device 101 instead of executing the function or service by itself. Alternatively or additionally, one or more external electronic devices may be requested to perform the function or at least part of the service. One or more external electronic devices receiving the request may execute at least a part of the requested function or service or an additional function or service related to the request, and deliver the execution result to the electronic device 101 . The electronic device 101 may provide the result as at least part of a response to the request as it is or additionally processed. To this end, for example, cloud computing, distributed computing, mobile edge computing (MEC), or client-server computing technology may be used. The electronic device 101 may provide an ultra-low latency service using, for example, distributed computing or mobile edge computing. In another embodiment, the external electronic device 104 may include an internet of things (IoT) device. Server 108 may be an intelligent server using machine learning and/or neural networks. According to one embodiment, the external electronic device 104 or server 108 may be included in the second network 199 . The electronic device 101 may be applied to intelligent services (eg, smart home, smart city, smart car, or health care) based on 5G communication technology and IoT-related technology.

도 2는, 다양한 실시예에 따른 저장 장치의 저장 공간의 물리 관점 및 논리 관점에서의 블록도이다.2 is a physical and logical block diagram of a storage space of a storage device according to various embodiments.

도 2를 참조하면, 다양한 실시예에 따른 저장 장치는 비휘발성 메모리(예 : 도 1의 비휘발성메모리(134))를 포함할 수 있다. 예를 들어, 저장 장치(예 : 도 1의 메모리(130))는 낸드 플래시 메모리 또는 낸드 플래시 메모리를 기반으로 하는 저장장치(예: SSD, UFS, eMMC) 일 수 있다.Referring to FIG. 2 , a storage device according to various embodiments may include a non-volatile memory (eg, the non-volatile memory 134 of FIG. 1 ). For example, the storage device (eg, the memory 130 of FIG. 1 ) may be a NAND flash memory or a storage device based on the NAND flash memory (eg, SSD, UFS, eMMC).

다양한 실시예에 따르면, 저장 장치는 피지컬 파티션(physical partition)에 대응하는 디바이스 파티션(210)을 포함할 수 있다. 디바이스 파티션(210)은 메모리(130)의 물리적인 위치에 대응하는 물리 주소에 기반하여 나누어진 제 1 파티션(211), 제 2 파티션(212) 및/또는 프리 스페이스 세그먼트(213)를 포함할 수 있다.According to various embodiments, a storage device may include a device partition 210 corresponding to a physical partition. The device partition 210 may include a first partition 211, a second partition 212, and/or a free space segment 213 divided based on a physical address corresponding to a physical location of the memory 130. there is.

일 실시예에 따르면, 제 1 파티션(211)은 전자 장치(예: 도 1의 전자 장치(101)) 구동을 위한 실행 파일이 저장되는 시스템 파티션(system partition)일 수 있다. 예를 들어, 제 1 파티션(211)은 시스템 데이터(예 : OS(operating system) 데이터))를 저장할 수 있다.According to an embodiment, the first partition 211 may be a system partition in which an execution file for driving an electronic device (eg, the electronic device 101 of FIG. 1 ) is stored. For example, the first partition 211 may store system data (eg, operating system (OS) data).

일 실시예에 따르면, 프리 스페이스 세그먼트(213)는 전자 장치의 소프트웨어 업데이트(예 : FOTA, firmware over-the-air)에 따라 실행 파일이 갱신됨에 대응하여 증가된 용량의 파일을 저장하기 위한 임시 공간(free-space reserve)일 수 있다. 예를 들어, 프리 스페이스 세그먼트(213)는 실행 파일과 같은 시스템 데이터의 저장 공간을 보조하기 위한 임시 공간일 수 있다.According to one embodiment, the free space segment 213 is a temporary space for storing a file with an increased capacity in response to an executable file being updated according to a software update (eg, FOTA, firmware over-the-air) of the electronic device. (free-space reserve). For example, the free space segment 213 may be a temporary space to supplement the storage space of system data such as executable files.

일 실시예예 따르면, 제 2 파티션(212)은 사용자 데이터를 저장하기 위한 사용자 데이터 파티션(user data partition)일 수 있다. 예를 들어, 제 2 파티션(212)은 사용자 데이터(예 : 연락처, 사진, 음악, 어플리케이션)를 저장할 수 있다.According to one embodiment, the second partition 212 may be a user data partition for storing user data. For example, the second partition 212 may store user data (eg, contacts, photos, music, and applications).

다양한 실시예에 따르면, 저장 장치는 적어도 하나의 파일 시스템을 포함할 수 있다. 파일 시스템은 저장 장치의 제 1 파티션(211), 제 2 파티션(212) 및/또는 프리 스페이스 세그먼트(213)의 공간을 관리할 수 있다. 예를 들어, 전자 장치는 저장 장치의 제 1 파티션(211)에 제 1 파일 시스템(예: 도 4a의 제 1 파일 시스템(410))을, 제 2 파티션(212)에 제 2 파일 시스템(예: 도 4a의 제 2 파일 시스템(420))을 로딩할 수 있다. 파일 시스템은 파티션의 파일 또는 데이터에 관리, 접근, 저장 공간의 할당, 및/또는 데이터 무결성 확인을 수행할 수 있다.According to various embodiments, a storage device may include at least one file system. The file system may manage the space of the first partition 211 , the second partition 212 , and/or the free space segment 213 of the storage device. For example, the electronic device stores a first file system (eg, the first file system 410 of FIG. 4A ) in the first partition 211 of the storage device, and a second file system (eg, the first file system 410 in FIG. 4A ) in the second partition 212 of the storage device. : The second file system 420 of FIG. 4A) may be loaded. The file system may manage, access, allocate storage space, and/or check data integrity for files or data in a partition.

다양한 실시예에 따르면, 볼륨 매니저(250)는 메모리(130)의 물리적인 위치에 대응하는 물리 주소와 매핑된 가상 주소에 기반한 볼륨(220)을 구성할 수 있다. 예를 들어, 볼륨 매니저(250)는 디바이스 파티션(210)의 제 1 파티션(211), 제 2 파티션(212) 및/또는 프리 스페이스 세그먼트(213)에 대응하는 볼륨(220)을 구성하고, 볼륨(220)을 동적으로 관리할 수 있다.According to various embodiments, the volume manager 250 may configure the volume 220 based on a physical address corresponding to a physical location of the memory 130 and a mapped virtual address. For example, the volume manager 250 configures the volume 220 corresponding to the first partition 211, the second partition 212 and/or the free space segment 213 of the device partition 210, and (220) can be dynamically managed.

일 실시예에 따르면, 볼륨(220)은 제 1 익스텐트(221) 및/또는 제 2 익스텐트(222)를 포함할 수 있다. 예를 들어, 제 1 익스텐트(221)는 제 2 파티션(212)에 대응될 수 있고, 제 2 익스텐트(222)는 프리 스페이스 세그먼트(213)에 대응될 수 있다. 예를 들어, 볼륨 매니저(250)는 제 2 파티션(212)을 제 1 익스텐트(221)으로 구성할 수 있고, 프리 스페이스 세그먼트(213)를 제 2 익스텐트(222)으로 구성할 수 있다. 다양한 실시예에 따르면, 볼륨 매니저(250)는 파일 시스템에 포함될 수 있다. 일 실시예에 따르면, 볼륨 매니저(250)는 제 2 파일 시스템(420)에 포함되는 구성일 수 있다.According to one embodiment, the volume 220 may include a first extent 221 and/or a second extent 222 . For example, the first extent 221 may correspond to the second partition 212 , and the second extent 222 may correspond to the free space segment 213 . For example, the volume manager 250 may configure the second partition 212 as the first extent 221 and configure the free space segment 213 as the second extent 222 . According to various embodiments, the volume manager 250 may be included in a file system. According to one embodiment, the volume manager 250 may be a component included in the second file system 420 .

다양한 실시예에 따르면, 볼륨 매니저(250 다양한 실시예에 따르면, 도 2에 도시된 바와 다르게, 볼륨 매니저(250)는 복수의 모듈로 구성될 수 있다.According to various embodiments, the volume manager 250 According to various embodiments, unlike shown in FIG. 2 , the volume manager 250 may be composed of a plurality of modules.

다양한 실시예에 따르면, 도 2에 도시된 바와 다르게, 볼륨 매니저(250)는 복수개의 볼륨(220)을 생성할 수 있다. 복수개의 볼륨(220) 각각은 파일 시스템(예 : 도 4a의 파일 시스템(420))을 마운트할 수 있다.다양한 실시예에 따른 볼륨 매니저(250)는 소프트웨어 모듈로, 본 발명 전반에 기재된 볼륨 매니저(예 : 도 2의 볼륨 매니저(250))의 동작은, 프로세서(예 : 도 1의 프로세서(120))에 의하여 수행될 수 있다.According to various embodiments, unlike shown in FIG. 2 , the volume manager 250 may create a plurality of volumes 220 . Each of the plurality of volumes 220 may mount a file system (eg, the file system 420 of FIG. 4A ). The volume manager 250 according to various embodiments is a software module, and is a volume manager described throughout the present invention. An operation of (eg, the volume manager 250 of FIG. 2 ) may be performed by a processor (eg, the processor 120 of FIG. 1 ).

도 3은, 다양한 실시예에 따른 볼륨을 관리하는 방법을 도시한 흐름도이다.3 is a flowchart illustrating a method of managing a volume according to various embodiments.

도 3에서는 볼륨 매니저(예 : 도 2의 볼륨 매니저(250))의 동작으로 기재되었으나, 볼륨 매니저(250)는 소프트웨어 모듈로, 볼륨 매니저(250)의 각 동작은 프로세서(예 : 도 1의 프로세서(120))에 의하여 수행될 수 있다.도 3을 참조하면, 일 실시예에 따른 볼륨 매니저(예: 도 2의 볼륨 매니저(250))는 제 2 파티션(예 : 도 2의 제 2 파티션(212))을 제 1 익스텐트(예 : 도 2 의 제 1 익스텐트(221))으로, 프리 스페이스 세그먼트(예 : 도 2 의 프리 스페이스 세그먼트(213))를 제 2 익스텐트(예 : 도 2의 제 2 익스텐트(222))로 설정하여 제 2 파일 시스템(예 : 도 4a의 제 2 파일 시스템(420))을 로딩할 수 있다.Although described in FIG. 3 as an operation of a volume manager (eg, the volume manager 250 of FIG. 2 ), the volume manager 250 is a software module, and each operation of the volume manager 250 is performed by a processor (eg, the processor of FIG. 1 ). 120). Referring to FIG. 3, a volume manager (eg, the volume manager 250 of FIG. 2) according to an embodiment includes a second partition (eg, the second partition (eg, the second partition of FIG. 2)). 212) as the first extent (eg, the first extent 221 in FIG. 2), and the free space segment (eg, the free space segment 213 in FIG. 2) as the second extent (eg, the second extent in FIG. 2). extent 222) to load the second file system (eg, the second file system 420 of FIG. 4A).

다양한 실시예에 따르면, 볼륨 매니저(250)는, 동작 310에서, 시스템 소프트웨어 업데이트 요청을 확인할 수 있다.According to various embodiments, the volume manager 250, in operation 310, may check the system software update request.

일 실시예에 따르면, 볼륨 매니저(250)는 시스템 소프트웨어 업데이트 요청을 확인할 수 있다. 시스템 소프트웨어 업데이트에 따라, 제 1 파티션(예 : 도 2의 제 1 파티션(211))에 저장되는 시스템 소프트웨어와 관련된 파일 용량이 증가될 수 있고, 제 1 파티션(211)은 추가적인 저장 공간이 필요할 수 있다. According to one embodiment, the volume manager 250 may check a system software update request. According to the system software update, the capacity of files related to the system software stored in the first partition (eg, the first partition 211 in FIG. 2) may increase, and the first partition 211 may require additional storage space. there is.

다양한 실시예에 따르면, 볼륨 매니저(250)는, 동작 320에서, 제 2 익스텐트(222)의 데이터 블록 중 적어도 일부를 제 1 익스텐트(221)으로 이동시킬 수 있다.According to various embodiments, the volume manager 250 may move at least some of the data blocks of the second extent 222 to the first extent 221 in operation 320 .

일 실시예에 따르면, 볼륨 매니저(250)는, 시스템 소프트웨어 업데이트 수행 전, 제 2 익스텐트(222)에 저장된 파일 데이터 블록의 적어도 일부를 제 1 익스텐트(221)으로 이동시킬 수 있다. 일 실시예에 따르면, 볼륨 매니저(250)는, 제 1 익스텐트(221)에 대응하는 제 2 파티션(212)의 여유 공간을 확보하기 위하여 사용자에게 사용자 데이터의 적어도 일부를 백업 후 삭제하도록 가이드할 수 있다.According to an embodiment, the volume manager 250 may move at least a portion of the file data blocks stored in the second extent 222 to the first extent 221 before performing the system software update. According to one embodiment, the volume manager 250 may guide the user to back up and then delete at least a portion of user data in order to secure free space of the second partition 212 corresponding to the first extent 221. there is.

다양한 실시예에 따르면, 볼륨 매니저(250)는, 파일 데이터 블록의 적어도 일부가 이동된 제 2 익스텐트(222)에 대하여, 제 2 파일 시스템(420)에서 디태치(detach)할 수 있다. 예를 들어, 볼륨 매니저(250)는 프리 스페이스 세그먼트(213)에 대응하는 제 2 익스텐트(222)를 제 2 파일 시스템(420)의 관리 영역에서 제거하고, 제 2 파일 시스템(420)에서 관리하는 데이터 블록 및/또는 용량이 감소함에 따라 제 2 파일 시스템(420)에 대하여 사이즈를 감소시키는 파일 시스템 리사이즈(fs-resize) 동작을 수행할 수 있다. 제 2 파일 시스템(420)은 제 2 익스텐트(222)에 접근하지 않을 수 있다. 예를 들어, 볼륨 매니저(250)는 제 2 파일 시스템(420)에 대응하는 메타 데이터(214)에 리사이즈된 제 2 파일 시스템(420)의 정보를 저장할 수 있다.According to various embodiments, the volume manager 250 may detach from the second file system 420 the second extent 222 to which at least a part of the file data block has been moved. For example, the volume manager 250 removes the second extent 222 corresponding to the free space segment 213 from the management area of the second file system 420 and manages the second extent 222 in the second file system 420. As data blocks and/or capacity decrease, a file system resize (fs-resize) operation may be performed to reduce the size of the second file system 420 . The second file system 420 may not access the second extent 222 . For example, the volume manager 250 may store resized information of the second file system 420 in meta data 214 corresponding to the second file system 420 .

다양한 실시예에 따르면, 볼륨 매니저(250)는, 동작 330에서, 시스템 소프트웨어 업데이트 및 제 1 파티션(211)을 갱신할 수 있다.According to various embodiments, the volume manager 250 may update the system software and the first partition 211 in operation 330 .

다양한 실시예에 따르면, 볼륨 매니저(250)는, 제 2 익스텐트(222)에 할당된 데이터 볼륨의 적어도 일부가 제 1 익스텐트(221)으로 이동됨에 대응하여, 전자 장치(예: 도 1의 전자 장치(101), 도 1의 프로세서(120))가 시스템 소프트웨어 업데이트 동작을 수행하도록 할 수 있다. 예를 들어, 전자 장치는 신규 버전의 시스템 소프트웨어 파일을 서버 및/또는 외부 전자 장치로부터 획득하고, 획득한 신규 버전의 시스템 소프트웨어 파일을 제 1 파티션(211)에 저장할 수 있다. According to various embodiments, the volume manager 250 is an electronic device (eg, the electronic device of FIG. 1 ) in response to moving at least a portion of the data volume allocated to the second extent 222 to the first extent 221 . 101, the processor 120 of FIG. 1) may perform a system software update operation. For example, the electronic device may obtain a system software file of a new version from a server and/or an external electronic device, and store the acquired new version of the system software file in the first partition 211 .

다양한 실시예에 따르면, 볼륨 매니저(250)는, 전자 장치가 시스템 소프트웨어 업데이트 동작을 수행함에 따라, 제 1 파티션(211)을 갱신할 수 있다. 예를 들어, 볼륨 매니저(250)는, 제 1 파티션(211)에 저장된 시스템 소프트웨어 파일의 용량이 증가함에 대응하여, 제 1 파티션(211)을 관리하는 제 1 파일 시스템(410)에 대하여 사이즈를 증가시키는 파일 시스템 리사이즈(fs-resize) 동작을 수행할 수 있다. 예를 들어, 볼륨 매니저(250)는, 증가된 시스템 소프트웨어 파일 용량에 대응하는 프리 스페이스 세그먼트(213)의 가용 블록(free block)을 제 1 파일 시스템(410)에서 관리하도록 파일 시스템 리사이즈를 수행할 수 있다. 예를 들어, 볼륨 매니저(250)는 제 1 파일 시스템(410)에 대응하는 메타 데이터(214)에 리사이즈된 제 1 파일 시스템(410)의 정보를 저장할 수 있다.According to various embodiments, the volume manager 250 may update the first partition 211 as the electronic device performs a system software update operation. For example, the volume manager 250 increases the size of the first file system 410 managing the first partition 211 in response to an increase in the capacity of a system software file stored in the first partition 211. You can perform a file system resize (fs-resize) operation that increases. For example, the volume manager 250 performs file system resizing so that the first file system 410 manages free blocks of the free space segment 213 corresponding to the increased system software file capacity. can For example, the volume manager 250 may store information of the resized first file system 410 in meta data 214 corresponding to the first file system 410 .

다양한 실시예에 따르면, 볼륨 매니저(250)는, 프리 스페이스 세그먼트(213) 영역을 축소할 수 있다. 예를 들어, 볼륨 매니저(250)는, 제 1 파티션(211)에서 시스템 소프트웨어 업데이트에 사용하고 남은 프리 스페이스 세그먼트(213)의 가용 블록에 대응하도록 프리 스페이스 세그먼트(213) 영역을 재설정할 수 있다. 예를 들어, 볼륨 매니저(250)는, 예를 들어, 볼륨 매니저(250)는, 축소된 프리 스페이스 세그먼트(213) 영역의 시작과 끝 위치와 관련된 정보를 지정된 위치에 저장할 수 있다.According to various embodiments, the volume manager 250 may reduce the area of the free space segment 213 . For example, the volume manager 250 may reset an area of the free space segment 213 to correspond to available blocks of the free space segment 213 remaining after being used for system software update in the first partition 211 . For example, the volume manager 250 may store information related to the start and end positions of the reduced free space segment 213 in a designated location.

다양한 실시예에 따르면, 볼륨 매니저(250)는, 동작 340에서, 제 2 익스텐트(222)를 재생성할 수 있다.According to various embodiments, the volume manager 250 , in operation 340 , may recreate the second extent 222 .

다양한 실시예에 따르면, 볼륨 매니저(250)는, 시스템 소프트웨어 업데이트 후 남은 프리 스페이스 세그먼트(213) 영역을 제 2 파일 시스템(420)에 어태치(attach)할 수 있다. 예를 들어, 볼륨 매니저(250)는, 시스템 소프트웨어 업데이트 후 남은 프리 스페이스 세그먼트(213)의 가용 블록을 제 2 파일 시스템(420)에서 관리하도록 제 2 파일 시스템(420)에 붙일 수 있다.According to various embodiments, the volume manager 250 may attach the remaining free space segment 213 area to the second file system 420 after the system software update. For example, the volume manager 250 may attach the free blocks of the free space segment 213 remaining after system software update to the second file system 420 so that the second file system 420 manages them.

일 실시예에 따르면, 볼륨 매니저(250)는, 제 1 파티션(211)에서 시스템 소프트웨어 업데이트에 사용하고 남은 프리 스페이스 세그먼트(213)의 가용 블록에 대응하는 프리 스페이스 세그먼트(213) 영역의 시작과 끝 위치와 관련된 정보에 기반하여 제 2 익스텐트(222)를 생성할 수 있다. 예를 들어, 볼륨 매니저(250)는, 생성한 제 2 익스텐트(222)를 제 2 파일 시스템(420)에 로딩하고, 제 2 파일 시스템(420)을 리사이즈(fs-resize)할 수 있다. 예를 들어, 볼륨 매니저(250)는, 남은 프리 스페이스 세그먼트(213)의 가용 블록을 제 2 파일 시스템(420)에서 관리하도록 파일 시스템 리사이즈를 수행할 수 있다.According to one embodiment, the volume manager 250 determines the beginning and end of the free space segment 213 area corresponding to the available blocks of the free space segment 213 remaining after being used for system software update in the first partition 211. The second extent 222 may be created based on location-related information. For example, the volume manager 250 may load the created second extent 222 into the second file system 420 and resize the second file system 420 (fs-resize). For example, the volume manager 250 may perform file system resizing so that the second file system 420 manages available blocks of the remaining free space segment 213 .

도 4a, 4b 및 4c는 파일 시스템에 포함된 볼륨 매니저(250)가, 시스템 소프트웨어 업데이트에 대응하여 볼륨을 관리하는 방법에 대응하는 실시예를 도시한 도면이다.4A, 4B, and 4C are diagrams illustrating an embodiment corresponding to a method of managing a volume in response to a system software update by the volume manager 250 included in the file system.

도 4a는, 다양한 실시예에 따른 볼륨 매니저(250)가, 시스템 소프트웨어 업데이트에 대응하여 제 2 익스텐트(222)의 데이터 블록의 적어도 일부를 제 1 익스텐트(221)으로 이동시키는 동작의 실시예를 도시한 도면이다.4A illustrates an operation of moving at least a portion of a data block of a second extent 222 to a first extent 221 in response to a system software update by the volume manager 250 according to various embodiments of the present disclosure. it is a drawing

일 실시예에 따르면, 도 4a는 도 3의 동작 320의 실시예일 수 있다.According to one embodiment, FIG. 4A may be an embodiment of operation 320 of FIG. 3 .

다양한 실시예에 따르면, 도 4a에 도시된 저장 공간은 프리 스페이스 세그먼트(213)가 지정된 범위 내에서 최대로 확보되어 있는 상태일 수 있다.According to various embodiments, the storage space shown in FIG. 4A may be in a state in which the free space segment 213 is maximally secured within a designated range.

다양한 실시예에 따르면, 제 2 파일 시스템(420)은 제 1 익스텐트(221) 및/또는 제 2 익스텐트(222)를 관리하는 볼륨 매니저(250)를 포함할 수 있다. 볼륨 매니저(250)는 제 2 파티션(212)을 제 1 익스텐트(221)으로, 프리 스페이스 세그먼트(213)를 제 2 익스텐트(222)으로 설정하여 제 2 파일 시스템(420)을 로딩할 수 있다.According to various embodiments, the second file system 420 may include a volume manager 250 that manages the first extent 221 and/or the second extent 222 . The volume manager 250 may set the second partition 212 as the first extent 221 and the free space segment 213 as the second extent 222 to load the second file system 420 .

다양한 실시예에 따르면, 전자 장치는 파일 저장 시 제 1 익스텐트(221)의 모든 데이터 블록이 할당됨에 대응하여, 제 2 익스텐트(222)의 데이터 블록에 할당 받아 파일을 저장할 수 있다.According to various embodiments, when storing a file, the electronic device may receive data blocks of the second extent 222 and store the file in response to all data blocks of the first extent 221 being allocated.

다양한 실시예에 따르면, 볼륨 매니저(250)는 시스템 소프트웨어 업데이트 요청을 확인할 수 있다. 시스템 소프트웨어 업데이트에 따라, 제 1 파티션(211)에 저장되는 시스템 소프트웨어와 관련된 파일 용량이 증가될 수 있고, 제 1 파티션(211)은 추가적인 저장 공간이 필요할 수 있다. According to various embodiments, the volume manager 250 may check a system software update request. According to the system software update, the capacity of files related to the system software stored in the first partition 211 may increase, and the first partition 211 may require additional storage space.

다양한 실시예에 따르면, 볼륨 매니저(250)는, 시스템 소프트웨어 업데이트 수행 전, 제 2 익스텐트(222)에 저장된 파일 데이터 블록의 적어도 일부를 제 1 익스텐트(221)으로 이동시킬 수 있다. 일 실시예에 따르면, 볼륨 매니저(250)는, 제 1 익스텐트(221)에 대응하는 제 2 파티션(212)의 여유 공간을 확보하기 위하여 사용자에게 사용자 데이터를 백업 후 삭제하도록 가이드할 수 있다.According to various embodiments, the volume manager 250 may move at least a portion of the file data blocks stored in the second extent 222 to the first extent 221 before performing the system software update. According to one embodiment, the volume manager 250 may guide the user to backup and then delete user data in order to secure a free space of the second partition 212 corresponding to the first extent 221 .

다양한 실시예에 따르면, 볼륨 매니저(250)는, 파일 데이터 블록의적어도 일부가 이동된 제 2 익스텐트(222)에 대하여, 제 2 파일 시스템(420)에서 디태치(detach)할 수 있다. 예를 들어, 볼륨 매니저(250)는 프리 스페이스 세그먼트(213)에 대응하는 제 2 익스텐트(222)를 제 2 파일 시스템(420)의 관리 영역에서 제거하고, 제 2 파일 시스템(420)에서 관리하는 데이터 블록 및/또는 용량이 감소함에 따라 제 2 파일 시스템(420)에 대하여 사이즈를 감소시키는 파일 시스템 리사이즈(fs-resize) 동작을 수행할 수 있다. 제 2 파일 시스템(420)은 제 2 익스텐트(222)에 접근하지 않을 수 있다. 예를 들어, 볼륨 매니저(250)는 제 2 파일 시스템(420)에 대응하는 메타 데이터(214)에 리사이즈된 제 2 파일 시스템(420)의 정보를 저장할 수 있다.According to various embodiments, the volume manager 250 may detach from the second file system 420 the second extent 222 to which at least a part of the file data block has been moved. For example, the volume manager 250 removes the second extent 222 corresponding to the free space segment 213 from the management area of the second file system 420 and manages the second extent 222 in the second file system 420. As data blocks and/or capacity decrease, a file system resize (fs-resize) operation may be performed to reduce the size of the second file system 420 . The second file system 420 may not access the second extent 222 . For example, the volume manager 250 may store resized information of the second file system 420 in meta data 214 corresponding to the second file system 420 .

도 4b는, 다양한 실시예에 따른 볼륨 매니저(250)가, 시스템 소프트웨어 업데이트 및 제 1 파티션(211)을 갱신하는 동작의 실시예를 도시한 도면이다.4B is a diagram illustrating an example of an operation of updating system software and updating the first partition 211 by the volume manager 250 according to various embodiments.

일 실시예에 따르면, 도 4b는 도 3의 동작 330의 실시예일 수 있다.According to one embodiment, FIG. 4B may be an embodiment of operation 330 of FIG. 3 .

다양한 실시예에 따르면, 볼륨 매니저(250)는, 제 2 익스텐트(222)에 할당된 데이터 볼륨의 적어도 일부가 제 1 익스텐트(221)으로 이동됨에 대응하여, 전자 장치가 시스템 소프트웨어 업데이트 동작을 수행하도록 할 수 있다. 예를 들어, 전자 장치는 신규 버전의 시스템 소프트웨어 파일을 서버 및/또는 외부 전자 장치로부터 획득하고, 획득한 신규 버전의 시스템 소프트웨어 파일을 제 1 파티션(211)에 저장할 수 있다. According to various embodiments, the volume manager 250 causes the electronic device to perform a system software update operation in response to moving at least a portion of the data volume allocated to the second extent 222 to the first extent 221 . can do. For example, the electronic device may obtain a system software file of a new version from a server and/or an external electronic device, and store the acquired new version of the system software file in the first partition 211 .

다양한 실시예에 따르면, 볼륨 매니저(250)는, 전자 장치가 시스템 소프트웨어 업데이트 동작을 수행함에 따라, 제 1 파티션(211)을 갱신할 수 있다. 예를 들어, 볼륨 매니저(250)는, 제 1 파티션(211)에 저장된 시스템 소프트웨어 파일의 용량이 증가함에 대응하여, 제 1 파티션(211)을 관리하는 제 1 파일 시스템(410)에 대하여 사이즈를 증가시키는 파일 시스템 리사이즈(fs-resize) 동작을 수행할 수 있다. 예를 들어, 볼륨 매니저(250)는, 증가된 시스템 소프트웨어 파일 용량에 대응하는 프리 스페이스 세그먼트(213)의 가용 블록(free block, 예 : S4)을 제 1 파일 시스템(410)에서 관리하도록 파일 시스템 리사이즈를 수행할 수 있다. 예를 들어, 볼륨 매니저(250)는 제 1 파일 시스템(410)에 대응하는 메타 데이터(214)에 리사이즈된 제 1 파일 시스템(410)의 정보를 저장할 수 있다.According to various embodiments, the volume manager 250 may update the first partition 211 as the electronic device performs a system software update operation. For example, the volume manager 250 increases the size of the first file system 410 managing the first partition 211 in response to an increase in the capacity of a system software file stored in the first partition 211. You can perform a file system resize (fs-resize) operation that increases. For example, the volume manager 250 uses the first file system 410 to manage free blocks (eg, S4) of the free space segment 213 corresponding to the increased system software file capacity. Resizing can be performed. For example, the volume manager 250 may store information of the resized first file system 410 in meta data 214 corresponding to the first file system 410 .

다양한 실시예에 따르면, 볼륨 매니저(250)는, 프리 스페이스 세그먼트(213) 영역을 축소할 수 있다. 예를 들어, 볼륨 매니저(250)는, 제 1 파티션(211)에서 시스템 소프트웨어 업데이트에 사용하고 남은 프리 스페이스 세그먼트(213)의 가용 블록(S1, S2, S3)에 대응하도록 프리 스페이스 세그먼트(213) 영역을 재설정할 수 있다. 예를 들어, 볼륨 매니저(250)는, 예를 들어, 볼륨 매니저(250)는, 축소된 프리 스페이스 세그먼트(213) 영역의 시작과 끝 위치와 관련된 정보를 지정된 위치에 저장할 수 있다.According to various embodiments, the volume manager 250 may reduce the area of the free space segment 213 . For example, the volume manager 250 uses the free space segment 213 to correspond to the available blocks S1, S2, and S3 of the free space segment 213 remaining after being used for system software update in the first partition 211. area can be reset. For example, the volume manager 250 may store information related to the start and end positions of the reduced free space segment 213 in a designated location.

도 4c는, 다양한 실시예에 따른 볼륨 매니저(250)가, 제 2 익스텐트(222)를 재생성하는 동작의 실시예를 도시한 도면이다.4C is a diagram illustrating an example of an operation of regenerating the second extent 222 by the volume manager 250 according to various embodiments.

일 실시예에 따르면, 도 4c는 도 3의 동작 340의 실시예일 수 있다.According to one embodiment, FIG. 4C may be an embodiment of operation 340 of FIG. 3 .

다양한 실시예에 따르면, 볼륨 매니저(250)는, 시스템 소프트웨어 업데이트 후 남은 프리 스페이스 세그먼트(213) 영역(S1, S2, S3)을 제 2 파일 시스템(420)에 어태치(attach)할 수 있다. 예를 들어, 볼륨 매니저(250)는, 시스템 소프트웨어 업데이트 후 남은 프리 스페이스 세그먼트(213)의 가용 블록(S1, S2, S3)을 제 2 파일 시스템(420)에서 관리하도록 제 2 파일 시스템(420)에 붙일 수 있다.According to various embodiments, the volume manager 250 may attach areas S1 , S2 , and S3 of the free space segment 213 remaining after the system software update to the second file system 420 . For example, the volume manager 250 uses the second file system 420 to manage available blocks S1, S2, and S3 of the free space segment 213 remaining after system software update in the second file system 420. can be attached to

일 실시예에 따르면, 볼륨 매니저(250)는, 제 1 파티션(211)에서 시스템 소프트웨어 업데이트에 사용하고 남은 프리 스페이스 세그먼트(213)의 가용 블록(S1, S2, S3)에 대응하는 프리 스페이스 세그먼트(213) 영역의 시작과 끝 위치와 관련된 정보에 기반하여 제 2 익스텐트(222)를 생성할 수 있다. 예를 들어, 볼륨 매니저(250)는, 생성한 제 2 익스텐트(222)를 제 2 파일 시스템(420)에 로딩하고, 제 2 파일 시스템(420)을 리사이즈(fs-resize)할 수 있다. 예를 들어, 볼륨 매니저(250)는, 남은 프리 스페이스 세그먼트(213)의 가용 블록(S1, S2, S3)을 제 2 파일 시스템(420)에서 관리하도록 파일 시스템 리사이즈를 수행할 수 있다.According to one embodiment, the volume manager 250 uses free space segments ( 213) The second extent 222 may be created based on information related to the start and end positions of the region. For example, the volume manager 250 may load the created second extent 222 into the second file system 420 and resize the second file system 420 (fs-resize). For example, the volume manager 250 may perform file system resizing so that the second file system 420 manages the available blocks S1 , S2 , and S3 of the remaining free space segment 213 .

도 5a, 5b 및 5c는 파일 시스템과 분리된 볼륨 매니저(예 : 도 2의볼륨 매니저(250))가, 시스템 소프트웨어 업데이트에 대응하여 볼륨을 관리하는 방법에 대응하는 실시예를 도시한 도면이다.5A, 5B, and 5C are diagrams illustrating an embodiment corresponding to a method of managing a volume in response to a system software update by a volume manager (eg, the volume manager 250 of FIG. 2 ) separated from the file system.

도 5a는, 다양한 실시예에 따른 볼륨 매니저(250)가, 시스템 소프트웨어 업데이트에 대응하여 제 2 익스텐트(222)의 데이터 블록의 적어도 일부를 제 1 익스텐트(221)으로 이동시키는 동작의 실시예를 도시한 도면이다.5A illustrates an operation of moving, by the volume manager 250 according to various embodiments, at least a portion of a data block of a second extent 222 to a first extent 221 in response to a system software update. it is a drawing

일 실시예에 따르면, 도 5a는 도 3의 동작 320의 실시예일 수 있다.According to one embodiment, FIG. 5A may be an embodiment of operation 320 of FIG. 3 .

다양한 실시예예 따르면, 제 1 논리 파티션(510)은 디바이스 파티션(210)의 제 1 파티션(211)에 매핑되고, 제 2 논리 파티션(520)은 디바이스 파티션(210)의 제 1 파티션(211)에 매핑될 수 있다. 제 1 파일 시스템(410)은 제 1 논리 파티션(510)에 로딩될 수 있고, 제 2 파일 시스템(420)은 제 2 논리 파티션(520)에 로딩될 수 있다.According to various embodiments, the first logical partition 510 is mapped to the first partition 211 of the device partition 210, and the second logical partition 520 is mapped to the first partition 211 of the device partition 210. can be mapped. The first file system 410 can be loaded into the first logical partition 510 and the second file system 420 can be loaded into the second logical partition 520 .

다양한 실시예에 따르면, 볼륨 매니저(250)는, 파일 시스템과 분리되고, 논리 파티션 정보(M)에 기반하여 제 1 논리 파티션(510) 및 제 2 논리 파티션(520)을 관리할 수 있다. According to various embodiments, the volume manager 250 may be separated from the file system and manage the first logical partition 510 and the second logical partition 520 based on the logical partition information (M).

다양한 실시예에 따르면, 도 5a에 도시된 저장 공간은 프리 스페이스 세그먼트(213)가 지정된 범위에서 최대로 확보되어 있는 상태일 수 있다. 예를 들어, 도 5a에 도시된 저장 공간은 볼륨 매니저(250)가 프리 스페이스 세그먼트(213)를 제 2 논리 파티션(520)에 어태치(attach)하여 사용 중인 상태일 수 있다.According to various embodiments, the storage space shown in FIG. 5A may be in a state in which the free space segment 213 is maximally secured within a designated range. For example, the storage space shown in FIG. 5A may be in use by the volume manager 250 attaching the free space segment 213 to the second logical partition 520 .

다양한 실시예에 따르면, 볼륨 매니저(250)는 시스템 소프트웨어 업데이트 요청을 확인할 수 있다. 시스템 소프트웨어 업데이트에 따라, 제 1 파티션(211)에 저장되는 시스템 소프트웨어와 관련된 파일 용량이 증가될 수 있고, 제 1 파티션(211)은 추가적인 저장 공간이 필요할 수 있다. According to various embodiments, the volume manager 250 may check a system software update request. According to the system software update, the capacity of files related to the system software stored in the first partition 211 may increase, and the first partition 211 may require additional storage space.

다양한 실시예에 따르면, 볼륨 매니저(250)는, 시스템 소프트웨어 업데이트 수행 전, 제 2 논리 파티션(520)에 로딩된 제 2 파일 시스템(420)의 크기를 줄이고, 줄어든 제 2 파일 시스템(420)의 크기만큼 제 2 논리 파티션(520)의 크기를 재조정할 수 있다. 예를 들어, 볼륨 매니저(250)는, 시스템 소프트웨어 업데이트 수행 전, 프리 스페이스 세그먼트(213)에 대응하는 제 2 논리 파티션(520) 영역에 저장된 파일 데이터 블록의 적어도 일부를 제 2 파티션(212)에 대응하는 제 2 논리 파티션(520) 영역으로 이동시킬 수 있다. 다양한 실시예에 따르면, 볼륨 매니저(250)는, 파일 데이터 블록의 적어도 일부가 이동된 제 2 논리 파티션(520)에 대하여, 프리 스페이스 세그먼트(213)에 대응하는 영역을 제 2 파일 시스템(420)의 관리 영역에서 제거하고, 제 2 파일 시스템(420)에서 관리하는 데이터 블록 및/또는 용량이 감소함에 따라 제 2 파일 시스템(420)에 대하여 사이즈를 감소시키는 파일 시스템 리사이즈(fs-resize) 동작을 수행할 수 있다. 예를 들어, 볼륨 매니저(250)는 제 2 파일 시스템(420)에 대응하는 메타 데이터(214)에 리사이즈된 제 2 파일 시스템(420)의 정보를 저장할 수 있다.According to various embodiments, the volume manager 250 reduces the size of the second file system 420 loaded in the second logical partition 520 before performing the system software update, and the size of the reduced second file system 420 The size of the second logical partition 520 may be readjusted by the size. For example, the volume manager 250 transfers at least a portion of the file data blocks stored in the area of the second logical partition 520 corresponding to the free space segment 213 to the second partition 212 before performing the system software update. It can be moved to the corresponding second logical partition 520 area. According to various embodiments, the volume manager 250 allocates an area corresponding to the free space segment 213 to the second file system 420 with respect to the second logical partition 520 to which at least a portion of the file data blocks have been moved. A file system resize (fs-resize) operation for removing from the management area of the second file system 420 and reducing the size of the second file system 420 as data blocks and/or capacity managed by the second file system 420 decreases. can be done For example, the volume manager 250 may store resized information of the second file system 420 in meta data 214 corresponding to the second file system 420 .

도 5b는, 다양한 실시예에 따른 볼륨 매니저(250)가, 시스템 소프트웨어 업데이트 및 제 1 논리 파티션(510)을 갱신하는 동작의 실시예를 도시한 도면이다.FIG. 5B is a diagram illustrating an operation of updating system software and updating the first logical partition 510 by the volume manager 250 according to various embodiments.

일 실시예에 따르면, 도 5b는 도 3의 동작 330의 실시예일 수 있다.According to one embodiment, FIG. 5B may be an embodiment of operation 330 of FIG. 3 .

다양한 실시예에 따르면, 볼륨 매니저(250)는, 제 2 논리 파티션(520)의 크기가 조정됨에 대응하여, 제 1 논리 파티션(510)을 재구성할 수 있다. 예를 들어, 볼륨 매니저(250)는, 사용하지 않게된 프리 스페이스 세그먼트(213)의 가용 블록(S1, S2, S3, S4) 중 적어도 하나(S4)를 제 1 논리 파티션(510) 영역에 어태치(attach)할 수 있다. 예를 들어, 볼륨 매니저(250)는, 제 1 파티션(211)에 저장된 시스템 소프트웨어 파일의 용량이 증가함에 대응하여, 제 1 파티션(211)을 관리하는 제 1 파일 시스템(410)에 대하여 사이즈를 증가시키는 파일 시스템 리사이즈(fs-resize) 동작을 수행할 수 있다. 예를 들어, 볼륨 매니저(250)는, 증가된 시스템 소프트웨어 파일 용량에 대응하는 프리 스페이스 세그먼트(213)의 가용 블록(free block, 예 : S4)을 제 1 파일 시스템(410)에서 관리하도록 파일 시스템 리사이즈를 수행할 수 있다. 예를 들어, 볼륨 매니저(250)는 제 1 파일 시스템(410)에 대응하는 메타 데이터(214)에 리사이즈된 제 1 파일 시스템(410)의 정보를 저장할 수 있다.According to various embodiments, the volume manager 250 may reconfigure the first logical partition 510 in response to the size adjustment of the second logical partition 520 . For example, the volume manager 250 assigns at least one (S4) of free blocks (S1, S2, S3, and S4) of the unused free space segment 213 to the area of the first logical partition 510. can be attached. For example, the volume manager 250 increases the size of the first file system 410 managing the first partition 211 in response to an increase in the capacity of a system software file stored in the first partition 211. You can perform a file system resize (fs-resize) operation that increases. For example, the volume manager 250 uses the first file system 410 to manage free blocks (eg, S4) of the free space segment 213 corresponding to the increased system software file capacity. Resizing can be performed. For example, the volume manager 250 may store information of the resized first file system 410 in meta data 214 corresponding to the first file system 410 .

다양한 실시예에 따르면, 볼륨 매니저(250)는, 재구성된 제 1 논리 파티션(510)에서 시스템 소프트웨어 업데이트를 수행할 수 있다. 예를 들어, 볼륨 매니저(250)는, 제 1 논리 파티션(510)의 크기가 리사이즈됨에 대응하여, 전자 장치가 시스템 소프트웨어 업데이트 동작을 수행하도록 할 수 있다. 예를 들어, 전자 장치는 신규 버전의 시스템 소프트웨어 파일을 서버 및/또는 외부 전자 장치로부터 획득하고, 획득한 신규 버전의 시스템 소프트웨어 파일을 제 1 논리 파티션(510)에 대응하는 제 1 파티션(211) 및/또는 가용 블록(S4)에 저장할 수 있다. According to various embodiments, the volume manager 250 may perform a system software update on the reconfigured first logical partition 510 . For example, the volume manager 250 may cause the electronic device to perform a system software update operation in response to the size of the first logical partition 510 being resized. For example, the electronic device acquires a system software file of a new version from a server and/or an external electronic device, and transfers the acquired new version of the system software file to a first partition 211 corresponding to the first logical partition 510. and/or may be stored in the available block (S4).

도 5c는, 다양한 실시예에 따른 볼륨 매니저(250)가, 제 2 논리 파티션(520)을 재구성하는 동작의 실시예를 도시한 도면이다.5C is a diagram illustrating an example of an operation of reconfiguring the second logical partition 520 by the volume manager 250 according to various embodiments.

일 실시예에 따르면, 도 5c는 도 3의 동작 340의 실시예일 수 있다.According to one embodiment, FIG. 5C may be an embodiment of operation 340 of FIG. 3 .

다양한 실시예에 따르면, 볼륨 매니저(250)는, 시스템 소프트웨어 업데이트 후 남은 프리 스페이스 세그먼트(213) 영역(S1, S2, S3)을 제 2 논리 파티션(520)에 어태치(attach)할 수 있다. 예를 들어, 볼륨 매니저(250)는, 시스템 소프트웨어 업데이트 후 남은 프리 스페이스 세그먼트(213)의 가용 블록(S1, S2, S3)을 제 2 파일 시스템(420)에서 관리하도록 제 2 파일 시스템(420)에 붙일 수 있다. According to various embodiments, the volume manager 250 may attach areas S1 , S2 , and S3 of the free space segment 213 remaining after the system software update to the second logical partition 520 . For example, the volume manager 250 uses the second file system 420 to manage available blocks S1, S2, and S3 of the free space segment 213 remaining after system software update in the second file system 420. can be attached to

일 실시예에 따르면, 볼륨 매니저(250)는, 제 2 논리 파티션(520)의 크기를 늘리고, 제 2 논리 파티션(520)에서 구동되는 제 2 파일 시스템(420)의 크기도 제 2 논리 파티션(520)의 크기에 대응되도록 확장하여 사용할 수 있다. 예를 들어, 볼륨 매니저(250)는, 제 2 파일 시스템(420)을 제 2 논리 파티션(520)의 크기에 대응되도록 리사이즈(fs-resize)할 수 있다. 예를 들어, 볼륨 매니저(250)는, 남은 프리 스페이스 세그먼트(213)의 가용 블록(S1, S2, S3)을 제 2 파일 시스템(420)에서 관리하도록 파일 시스템 리사이즈를 수행할 수 있다.According to one embodiment, the volume manager 250 increases the size of the second logical partition 520, and the size of the second file system 420 driven in the second logical partition 520 also increases the size of the second logical partition ( 520) can be expanded and used. For example, the volume manager 250 may resize the second file system 420 to correspond to the size of the second logical partition 520 (fs-resize). For example, the volume manager 250 may perform file system resizing so that the second file system 420 manages the available blocks S1 , S2 , and S3 of the remaining free space segment 213 .

도 6은, 다양한 실시예에 따른 볼륨 매니저가, 시스템 소프트웨어 업데이트에 대응하여 볼륨을 관리하는 방법을 도시한 도면이다.6 is a diagram illustrating a method for a volume manager to manage a volume in response to a system software update, according to various embodiments.

도 6에서는 볼륨 매니저(예 : 도 2의 볼륨 매니저(250))의 동작으로 기재되었으나, 볼륨 매니저(250)는 소프트웨어 모듈로, 볼륨 매니저(250)의 각 동작은 프로세서(예 : 도 1의 프로세서(120))에 의하여 수행될 수 있다.Although described in FIG. 6 as an operation of a volume manager (eg, the volume manager 250 of FIG. 2 ), the volume manager 250 is a software module, and each operation of the volume manager 250 is performed by a processor (eg, the processor of FIG. 1 ). (120)).

다양한 실시예에 따르면, 볼륨 매니저(250)는, 동작 611에서, 제 2 파일 시스템(예: 도 4a의 제 2 파일 시스템(420))을 로딩할 수 있다.According to various embodiments, the volume manager 250 may load a second file system (eg, the second file system 420 of FIG. 4A ) in operation 611 .

다양한 실시예에 따르면, 볼륨 매니저(250)는, 동작 612에서, 제 2 파티션(212)을 제 1 익스텐트(예 : 도 2의 제 1 익스텐트(221))으로 구성하여 제 2 파일 시스템(420)에 로딩할 수 있다.According to various embodiments, the volume manager 250 configures the second partition 212 as a first extent (eg, the first extent 221 of FIG. 2 ) in operation 612 to create a second file system 420 . can be loaded into

다양한 실시예에 따르면, 볼륨 매니저(250)는, 동작 613에서, 프리 스페이스 세그먼트(예 : 도 2의 프리 스페이스 세그먼트(213))를 제 2 익스텐트(예 : 도 2의 제 2 익스텐트(222))으로 제 2 파일 시스템(420)에 로딩하고, 제 2 파일 시스템(420)을 리사이즈할 수 있다.According to various embodiments, the volume manager 250, in operation 613, converts the free space segment (eg, the free space segment 213 of FIG. 2 ) into a second extent (eg, the second extent 222 of FIG. 2 ). It can be loaded into the second file system 420 with , and the second file system 420 can be resized.

다양한 실시예에 따르면, 볼륨 매니저(250)는, 동작 614에서, 제 2 파일 시스템(420) 로딩을 완료할 수 있다.According to various embodiments, the volume manager 250 may complete loading of the second file system 420 in operation 614 .

다양한 실시예에 따르면, 볼륨 매니저(250)는, 동작 615에서, 시스템 소프트웨어 업데이트 요청이 있는지 여부를 확인할 수 있다.According to various embodiments, the volume manager 250, in operation 615, may check whether there is a system software update request.

일 실시예에 따르면, 볼륨 매니저(250)는 시스템 소프트웨어 업데이트 요청을 확인할 수 있다. 시스템 소프트웨어 업데이트에 따라, 제 1 파티션(예 : 도 1의 제 1 파티션(211))에 저장되는 시스템 소프트웨어와 관련된 파일 용량이 증가될 수 있고, 제 1 파티션(211)은 추가적인 저장 공간이 필요할 수 있다. According to one embodiment, the volume manager 250 may check a system software update request. According to the system software update, the capacity of files related to the system software stored in the first partition (eg, the first partition 211 in FIG. 1) may increase, and the first partition 211 may require additional storage space. there is.

다양한 실시예에 따르면, 볼륨 매니저(250)는, 동작 621에서, 시스템 소프트웨어 업데이트 요청이 있음에 대응하여(예 : 동작 615 - 예), 제 2 익스텐트(222)에 할당된 데이터가 있는지 여부를 확인할 수 있다.According to various embodiments, the volume manager 250, in operation 621, in response to a system software update request (eg, operation 615 - yes), determines whether data allocated to the second extent 222 exists. can

다양한 실시예에 따르면, 볼륨 매니저(250)는, 동작 631에서, 제 2 익스텐트(222)에 할당된 데이터가 있음에 대응하여(예 : 동작 621 - 예), 제 2 익스텐트(222)의 데이터가 제 1 익스텐트(221)으로 이동 가능한지 여부를 확인할 수 있다.According to various embodiments, the volume manager 250, in operation 631, responds to the presence of data allocated to the second extent 222 (eg, operation 621 - Yes), the data of the second extent 222 It may be checked whether movement to the first extent 221 is possible.

다양한 실시예에 따르면, 볼륨 매니저(250)는, 동작 633에서, 제 2 익스텐트(222)의 데이터가 제 1 익스텐트(221)으로 이동가능하지 않음에 대응하여(예 : 동작 631 - 아니오), 제 1 익스텐트(221)의 공간을 확보할 수 있다.According to various embodiments, the volume manager 250, in operation 633, responds to the fact that data in the second extent 222 is not movable to the first extent 221 (eg, operation 631 - No), A space of one extent 221 may be secured.

일 실시예에 따르면, 볼륨 매니저(250)는, 제 1 익스텐트(221)에 대응하는 제 2 파티션(예 : 도 2의 제 2 파티션(212))의 여유 공간을 확보하기 위하여 사용자에게 사용자 데이터를 백업 후 삭제하도록 가이드할 수 있다.According to one embodiment, the volume manager 250 provides user data to the user in order to secure free space of the second partition (eg, the second partition 212 of FIG. 2 ) corresponding to the first extent 221 . You can guide them to delete them after backing them up.

다양한 실시예에 따르면, 볼륨 매니저(250)는, 동작 632에서, 제 2 익스텐트(222)의 데이터가 제 1 익스텐트(221)으로 이동 가능함에 대응하여(예 : 동작 631 - 예), 제 2 익스텐트(222)의 데이터를 제 1 익스텐트(221)으로 이동할 수 있다.According to various embodiments, the volume manager 250, in operation 632, in response to the data of the second extent 222 being able to move to the first extent 221 (eg, operation 631 - Yes), the second extent Data of (222) may be moved to the first extent (221).

일 실시예에 따르면, 볼륨 매니저(250)는, 시스템 소프트웨어 업데이트 수행 전, 제 2 익스텐트(222)에 저장된 파일 데이터 블록의 적어도 일부를 제 1 익스텐트(221)으로 이동시킬 수 있다. According to an embodiment, the volume manager 250 may move at least a portion of the file data blocks stored in the second extent 222 to the first extent 221 before performing the system software update.

다양한 실시예에 따르면, 볼륨 매니저(250)는, 동작 622에서, 제 2 익스텐트(222)에 할당된 데이터가 없음에 대응하여(예 : 동작 621 - 아니오), 제 2 익스텐트(222)를 제 2 파일 시스템(420)에서 디태치(detach) 및 제 2 파일 시스템(420)을 리사이즈할 수 있다.According to various embodiments, the volume manager 250, in operation 622, in response to the absence of data allocated to the second extent 222 (eg, operation 621 - No), the volume manager 250 allocates the second extent 222 to the second extent 222. The file system 420 may detach and resize the second file system 420 .

일 실시예에 따르면, 볼륨 매니저(250)는, 파일 데이터 블록의 적어도 일부가 이동된 제 2 익스텐트(222)에 대하여, 제 2 파일 시스템(420)에서 디태치(detach)할 수 있다. 예를 들어, 볼륨 매니저(250)는 프리 스페이스 세그먼트(213)에 대응하는 제 2 익스텐트(222)를 제 2 파일 시스템(420)의 관리 영역에서 제거하고, 제 2 파일 시스템(420)에서 관리하는 데이터 블록 및/또는 용량이 감소함에 따라 제 2 파일 시스템(420)에 대하여 사이즈를 감소시키는 파일 시스템 리사이즈(fs-resize) 동작을 수행할 수 있다. 제 2 파일 시스템(420)은 제 2 익스텐트(222)에 접근하지 않을 수 있다. 예를 들어, 볼륨 매니저(250)는 제 2 파일 시스템(420)에 대응하는 메타 데이터(214)에 리사이즈된 제 2 파일 시스템(420)의 정보를 저장할 수 있다.According to an embodiment, the volume manager 250 may detach the second extent 222 to which at least a part of the file data block has been moved, in the second file system 420 . For example, the volume manager 250 removes the second extent 222 corresponding to the free space segment 213 from the management area of the second file system 420 and manages the second extent 222 in the second file system 420. As data blocks and/or capacity decrease, a file system resize (fs-resize) operation may be performed to reduce the size of the second file system 420 . The second file system 420 may not access the second extent 222 . For example, the volume manager 250 may store resized information of the second file system 420 in meta data 214 corresponding to the second file system 420 .

다양한 실시예에 따르면, 볼륨 매니저(250)는, 동작 623에서, 전자 장치가 시스템 소프트웨어 업데이트를 수행하도록 할 수 있다.According to various embodiments, the volume manager 250, in operation 623, allows the electronic device to perform a system software update.

일 실시예에 따르면, 전자 장치는 신규 버전의 시스템 소프트웨어 파일을 서버 및/또는 외부 전자 장치로부터 획득하고, 획득한 신규 버전의 시스템 소프트웨어 파일을 제 1 파티션(211)에 저장할 수 있다. According to an embodiment, the electronic device may obtain a system software file of a new version from a server and/or an external electronic device, and store the acquired new version of the system software file in the first partition 211 .

일 실시예에 따르면, 볼륨 매니저(250)는, 전자 장치가 시스템 소프트웨어 업데이트 동작을 수행함에 따라, 제 1 파티션(211)을 갱신할 수 있다. 예를 들어, 볼륨 매니저(250)는, 제 1 파티션(211)에 저장된 시스템 소프트웨어 파일의 용량이 증가함에 대응하여, 제 1 파티션(211)을 관리하는 제 1 파일 시스템(410)에 대하여 사이즈를 증가시키는 파일 시스템 리사이즈(fs-resize) 동작을 수행할 수 있다. 예를 들어, 볼륨 매니저(250)는, 증가된 시스템 소프트웨어 파일 용량에 대응하는 프리 스페이스 세그먼트(213)의 가용 블록(free block)을 제 1 파일 시스템(410)에서 관리하도록 파일 시스템 리사이즈를 수행할 수 있다. 예를 들어, 볼륨 매니저(250)는 제 1 파일 시스템(410)에 대응하는 메타 데이터(214)에 리사이즈된 제 1 파일 시스템(410)의 정보를 저장할 수 있다.According to an embodiment, the volume manager 250 may update the first partition 211 as the electronic device performs a system software update operation. For example, the volume manager 250 increases the size of the first file system 410 managing the first partition 211 in response to an increase in the capacity of a system software file stored in the first partition 211. You can perform a file system resize (fs-resize) operation that increases. For example, the volume manager 250 performs file system resizing so that the first file system 410 manages free blocks of the free space segment 213 corresponding to the increased system software file capacity. can For example, the volume manager 250 may store information of the resized first file system 410 in meta data 214 corresponding to the first file system 410 .

다양한 실시예에 따르면, 볼륨 매니저(250)는, 동작 624에서, 축소된 프리 스페이스 세그먼트(213) 영역의 시작과 끝 위치와 관련된 정보를 지정된 위치에 저장할 수 있다.According to various embodiments, in operation 624, the volume manager 250 may store information related to the start and end positions of the reduced free space segment 213 in a designated location.

일 실시예에 따르면, 볼륨 매니저(250)는, 프리 스페이스 세그먼트(213) 영역을 축소할 수 있다. 예를 들어, 볼륨 매니저(250)는, 제 1 파티션(211)에서 시스템 소프트웨어 업데이트에 사용하고 남은 프리 스페이스 세그먼트(213)의 가용 블록에 대응하도록 프리 스페이스 세그먼트(213) 영역을 재설정할 수 있다. 예를 들어, 볼륨 매니저(250)는, 예를 들어, 볼륨 매니저(250)는, 축소된 프리 스페이스 세그먼트(213) 영역의 시작과 끝 위치와 관련된 정보를 지정된 위치에 저장할 수 있다.According to one embodiment, the volume manager 250 may reduce the area of the free space segment 213 . For example, the volume manager 250 may reset an area of the free space segment 213 to correspond to available blocks of the free space segment 213 remaining after being used for system software update in the first partition 211 . For example, the volume manager 250 may store information related to the start and end positions of the reduced free space segment 213 in a designated location.

다양한 실시예에 따르면, 볼륨 매니저(250)는, 동작 624 이후, 동작 612를 재수행할 수 있다.According to various embodiments, the volume manager 250 may re-perform operation 612 after operation 624 .

일 실시예에 따르면, 볼륨 매니저(250)는, 시스템 소프트웨어 업데이트 후 남은 프리 스페이스 세그먼트(213) 영역을 제 2 파일 시스템(420)에 어태치(attach)할 수 있다. 예를 들어, 볼륨 매니저(250)는, 시스템 소프트웨어 업데이트 후 남은 프리 스페이스 세그먼트(213)의 가용 블록을 제 2 파일 시스템(420)에서 관리하도록 제 2 파일 시스템(420)에 붙일 수 있다.According to an embodiment, the volume manager 250 may attach the remaining free space segment 213 area to the second file system 420 after the system software update. For example, the volume manager 250 may attach the free blocks of the free space segment 213 remaining after system software update to the second file system 420 so that the second file system 420 manages them.

일 실시예에 따르면, 볼륨 매니저(250)는, 제 1 파티션(211)에서 시스템 소프트웨어 업데이트에 사용하고 남은 프리 스페이스 세그먼트(213)의 가용 블록에 대응하는 프리 스페이스 세그먼트(213) 영역의 시작과 끝 위치와 관련된 정보에 기반하여 제 2 익스텐트(222)를 생성할 수 있다. 예를 들어, 볼륨 매니저(250)는, 생성한 제 2 익스텐트(222)를 제 2 파일 시스템(420)에 로딩하고, 제 2 파일 시스템(420)을 리사이즈(fs-resize)할 수 있다. 예를 들어, 볼륨 매니저(250)는, 남은 프리 스페이스 세그먼트(213)의 가용 블록을 제 2 파일 시스템(420)에서 관리하도록 파일 시스템 리사이즈를 수행할 수 있다.According to one embodiment, the volume manager 250 determines the beginning and end of the free space segment 213 area corresponding to the available blocks of the free space segment 213 remaining after being used for system software update in the first partition 211. The second extent 222 may be created based on location-related information. For example, the volume manager 250 may load the created second extent 222 into the second file system 420 and resize the second file system 420 (fs-resize). For example, the volume manager 250 may perform file system resizing so that the second file system 420 manages available blocks of the remaining free space segment 213 .

다양한 실시예에 따른 전자 장치는, 제 1 파티션, 제 2 파티션 및 제 3 파티션 을 포함하는 저장 장치 및 프로세서를 포함하고, 상기 프로세서는 상기 제 2 파티션을 제 1 볼륨으로, 상기 제 3 파티션을 제 2 볼륨을 구성하고, 상기 제 2 볼륨을 상기 파일 시스템에 어태치(attach)하거나 디태치(detach)하여 상기 저장 장치의 저장 공간을 관리할 수 있다.An electronic device according to various embodiments includes a storage device including a first partition, a second partition, and a third partition, and a processor, wherein the processor defines the second partition as a first volume and the third partition as a second volume. The storage space of the storage device may be managed by configuring two volumes and attaching or detaching the second volume to the file system.

다양한 실시예에 따른 전자 장치에서, 상기 제 1 파티션은 상기 전자 장치의 구동을 위한 실행 파일이 저장되는 시스템 파티션이고, 상기 제 2 파티션은 사용자 데이터를 저장하기 위한 용자 데이터 파티션이고, 상기 제 3 파티션은 상기 시스템 파티션에 대하여 실행 파일의 저장 공간을 보조하기 위한 임시 공간일 수 있다.In the electronic device according to various embodiments, the first partition is a system partition in which an execution file for driving the electronic device is stored, the second partition is a user data partition for storing user data, and the third partition is may be a temporary space for supplementing the storage space of an executable file with respect to the system partition.

다양한 실시예에 따른 전자 장치에서, 상기 프로세서는 상기 전자 장치의 시스템 소프트웨어 업데이트 요청을 확인하고, 상기 제 2 볼륨에 저장된 데이터를 상기 제 1 볼륨으로 이동시키고, 상기 제 2 볼륨을 상기 파일 시스템에서 디태치(detach)하고, 상기 제 3 파티션에 상기 시스템 소프트웨어 업데이트를 위한 파일을 저장하여 상기 시스템 소프트웨어 업데이트를 수행할 수 있다.In the electronic device according to various embodiments, the processor checks a system software update request of the electronic device, moves data stored in the second volume to the first volume, and deletes the second volume from the file system. The system software update may be performed by detaching and storing a file for the system software update in the third partition.

다양한 실시예에 따른 전자 장치에서, 상기 프로세서는 상기 제 2 볼륨이 디태치된 상기 파일 시스템을 리사이즈(re-size)하고, 상기 파일 시스탬의 메타 데이터 영역에 상기 리사이즈된 파일 시스템과 관련된 정보를 저장할 수 있다.In the electronic device according to various embodiments, the processor may re-size the file system to which the second volume is detached, and store information related to the re-sized file system in a metadata area of the file system. can

다양한 실시예에 따른 전자 장치에서, 상기 프로세서는 상기 제 2 볼륨에 저장된 데이터를 상기 제 1 볼륨으로 이동시키기 전, 상기 제 1 볼륨에 상기 제 2 볼륨에 저장된 데이터를 저장할 공간이 부족함에 대응하여, 상기 제 1 볼륨에 대응하는 상기 제 2 파티션의 여유 공간을 확보하기 위하여 사용자에게 상기 사용자 데이터를 백업 후 삭제하도록 가이드할 수 있다.In the electronic device according to various embodiments, the processor responds to lack of space in the first volume to store the data stored in the second volume before moving the data stored in the second volume to the first volume, In order to secure a free space of the second partition corresponding to the first volume, the user may be guided to back up and then delete the user data.

다양한 실시예에 따른 전자 장치에서, 상기 프로세서는 상기 제 3 파티션에서 상기 시스템 소프트웨어 업데이트를 위한 파일을 저장하고 남은 공간에 대한 영역의 시작과 끝 위치와 관련된 정보를 저장하고, 상기 저장된 정보에 기반하여 상기 제 3 파티션에서 시스템 소프트웨어 업데이트를 위한 파일을 저장하고 남은 공간을 제 2 볼륨으로 재구성하여 상기 파일 시스템에 어태치(attach)할 수 있다.In the electronic device according to various embodiments, the processor stores files for updating the system software in the third partition, stores information related to start and end positions of regions for remaining space, and based on the stored information, A file for system software update is stored in the third partition, and a remaining space may be reconstructed into a second volume and attached to the file system.

다양한 실시예에 따른 전자 장치에서, 상기 프로세서는 파일을 저장할 때, 제 1 볼륨의 모든 데이터 블록이 할당됨에 대응하여, 제 2 볼륨의 데이터 블록에 할당받아 파일을 저장할 수 있다.In an electronic device according to various embodiments of the present disclosure, when storing a file, the processor may store the file by being allocated to data blocks of a second volume in response to all data blocks of a first volume being allocated.

다양한 실시예에 따른 전자 장치에서, 제 1 파티션, 제 2 파티션 및 제 3 파티션을 포함하는 저장 장치 및 프로세서를 포함하고, 상기 프로세서는 상기 제 1 파티션을 관리하는 제 1 파일 시스템을 구성하고, 상기 제 2 파티션을 제 1 볼륨으로, 상기 제 3 파티션을 제 2 볼륨으로 제 2 파일 시스템을 구성하고, 상기 제 2 볼륨을 상기 제 2 파일 시스템에 어태치(attach)하거나 디태치(detach)하여 상기 저장 장치의 저장 공간을 관리할 수 있다.An electronic device according to various embodiments includes a storage device including a first partition, a second partition, and a third partition, and a processor, wherein the processor configures a first file system that manages the first partition; A second file system is configured with the second partition as the first volume and the third partition as the second volume, and attaching or detaching the second volume to the second file system to The storage space of the storage device may be managed.

다양한 실시예에 따른 전자 장치에서, 상기 제 1 파티션은 상기 전자 장치의 구동을 위한 시스템 파일이 저장되는 시스템 파티션이고, 상기 제 2 파티션은 사용자 데이터를 저장하기 위한 사용자 데이터 파티션이고, 상기 제 3 파티션은 상기 시스템 파티션에 대하여 실행 파일의 저장 공간을 보조하기 위한 임시 공간일 수 있다.In the electronic device according to various embodiments, the first partition is a system partition for storing system files for driving the electronic device, the second partition is a user data partition for storing user data, and the third partition is may be a temporary space for supplementing the storage space of an executable file with respect to the system partition.

다양한 실시예에 따른 전자 장치에서, 상기 프로세서는 상기 전자 장치의 시스템 소프트웨어 업데이트 요청을 확인하고, 상기 제 2 볼륨에 저장된 데이터를 상기 제 1 볼륨으로 이동시키고, 상기 제 2 볼륨을 상기 제 2 파일 시스템에서 디태치(detach)하고, 상기 제 3 파티션에 상기 시스템 소프트웨어 업데이트를 위한 파일을 저장하여 상기 시스템 소프트웨어 업데이트를 수행할 수 있다.In the electronic device according to various embodiments, the processor checks a system software update request of the electronic device, moves data stored in the second volume to the first volume, and transfers the second volume to the second file system. The system software update may be performed by detaching from and storing a file for the system software update in the third partition.

다양한 실시예에 따른 전자 장치에서, 상기 프로세서는 상기 제 2 볼륨이 디태치된 상기 제 2 파일 시스템을 리사이즈(re-size)하고, 상기 제 2 파일 시스탬의 메타 데이터 영역에 상기 리사이즈된 제 2 파일 시스템과 관련된 정보를 저장할 수 있다.In the electronic device according to various embodiments, the processor re-sizes the second file system in which the second volume is detached, and stores the resized second file in a metadata area of the second file system. It can store information related to the system.

다양한 실시예에 따른 전자 장치에서, 상기 프로세서는 상기 제 2 볼륨에 저장된 데이터를 상기 제 1 볼륨으로 이동시키기 전, 상기 제 1 볼륨에 상기 제 2 볼륨에 저장된 데이터를 저장할 공간이 부족함에 대응하여, 상기 제 1 볼륨에 대응하는 상기 제 2 파티션의 여유 공간을 확보하기 위하여 사용자에게 상기 사용자 데이터를 백업 후 삭제하도록 가이드할 수 있다.In the electronic device according to various embodiments, the processor responds to lack of space in the first volume to store the data stored in the second volume before moving the data stored in the second volume to the first volume, In order to secure a free space of the second partition corresponding to the first volume, the user may be guided to back up and then delete the user data.

다양한 실시예에 따른 전자 장치에서, 상기 프로세서는 상기 제 3 파티션에서 상기 시스템 소프트웨어 업데이트를 위한 파일을 저장하는 공간만큼 상기 제 1 파일 시스템을 확장할 수 있다.In the electronic device according to various embodiments, the processor may extend the first file system as much as a space for storing a file for updating the system software in the third partition.

다양한 실시예에 따른 전자 장치에서, 상기 프로세서는 상기 제 3 파티션에서 상기 시스템 소프트웨어 업데이트를 위한 파일을 저장하고 남은 공간에 대한 영역의 시작과 끝 위치와 관련된 정보를 지정된 위치에 저장하고, 상기 저장된 정보에 기반하여 상기 제 3 파티션에서 시스템 소프트웨어 업데이트를 위한 파일을 저장하고 남은 공간을 제 2 볼륨으로 재구성하여 상기 제 2 파일 시스템에 어태치(attach)할 수 있다.In the electronic device according to various embodiments of the present disclosure, the processor stores a file for updating the system software in the third partition and stores information related to start and end positions of an area for remaining space in a designated location, and the stored information Based on this, files for system software update can be stored in the third partition, and the remaining space can be reconstructed into a second volume and attached to the second file system.

다양한 실시예에 따른 전자 장치에서, 파일을 저장할 때, 제 1 볼륨의 모든 데이터 블록이 할당됨에 대응하여, 제 2 볼륨의 데이터 블록에 할당받아 파일을 저장할 수 있다.In an electronic device according to various embodiments of the present disclosure, when storing a file, data blocks of a second volume may be allocated to store the file in response to all data blocks of the first volume being allocated.

다양한 실시예에 따른, 제 1 파티션, 제 2 파티션 및 제 3 파티션을 포함하는 저장 장치를 관리하는 전자 장치의 동작 방법은, 상기 제 1 파티션을 관리하는 제 1 파일 시스템을 구성하는 동작, 상기 제 2 파티션을 제 1 볼륨으로, 상기 제 3 파티션을 제 2 볼륨으로 제 2 파일 시스템을 구성하는 동작, 및 상기 제 2 볼륨을 상기 제 2 파일 시스템에 어태치(attach)하거나 디태치(detach)하는 동작을 포함할 수 있다.According to various embodiments, a method of operating an electronic device that manages a storage device including a first partition, a second partition, and a third partition includes configuring a first file system that manages the first partition; Configuring a second file system with two partitions as a first volume and the third partition as a second volume, and attaching or detaching the second volume to the second file system Actions may be included.

다양한 실시예에 따른 전자 장치의 동작 방법에서, 상기 제 1 파티션은 상기 전자 장치의 구동을 위한 시스템 파일이 저장되는 시스템 파티션이고, 상기 제 2 파티션은 사용자 데이터를 저장하기 위한 사용자 데이터 파티션이고, 상기 제 3 파티션은 상기 시스템 파티션에 대하여 실행 파일의 저장 공간을 보조하기 위한 임시 공간일 수 있다.In the operating method of an electronic device according to various embodiments, the first partition is a system partition for storing system files for driving the electronic device, and the second partition is a user data partition for storing user data. The third partition may be a temporary space for supplementing the storage space of an executable file with respect to the system partition.

다양한 실시예에 따른 전자 장치의 동작 방법에서, 상기 전자 장치의 시스템 소프트웨어 업데이트 요청을 확인하는 동작, 상기 제 2 볼륨에 저장된 데이터를 상기 제 1 볼륨으로 이동시키는 동작, 상기 제 2 볼륨을 상기 제 2 파일 시스템에서 디태치(detach)하는 동작 및 상기 제 3 파티션에 상기 시스템 소프트웨어 업데이트를 위한 파일을 저장하여 상기 시스템 소프트웨어 업데이트를 수행하는 동작을 포함할 수 있다.In an operating method of an electronic device according to various embodiments, an operation of checking a system software update request of the electronic device, an operation of moving data stored in the second volume to the first volume, and an operation of moving the second volume to the second volume. An operation of detaching from a file system and an operation of performing the system software update by storing a file for the system software update in the third partition.

다양한 실시예에 따른 전자 장치의 동작 방법에서, 상기 제 2 볼륨이 디태치된 상기 제 2 파일 시스템을 리사이즈(re-size)하는 동작 및 상기 제 2 파일 시스탬의 메타 데이터 영역에 상기 리사이즈된 제 2 파일 시스템과 관련된 정보를 저장하는 동작을 포함할 수 있다.In an operating method of an electronic device according to various embodiments, an operation of re-size the second file system to which the second volume is detached, and the re-sized second file system in a metadata area of the second file system. It may include an operation of storing information related to the file system.

다양한 실시예에 따른 전자 장치의 동작 방법에서, 상기 제 2 볼륨에 저장된 데이터를 상기 제 1 볼륨으로 이동시키는 동작 이전, 상기 제 1 볼륨에 상기 제 2 볼륨에 저장된 데이터를 저장할 공간이 부족함에 대응하여, 상기 제 1 볼륨에 대응하는 상기 제 2 파티션의 여유 공간을 확보하기 위하여 사용자에게 상기 사용자 데이터를 백업 후 삭제하도록 가이드하는 동작을 포함할 수 있다.In the operating method of an electronic device according to various embodiments, before the operation of moving data stored in the second volume to the first volume, in response to insufficient space to store data stored in the second volume in the first volume , guiding the user to backup and then delete the user data in order to secure a free space of the second partition corresponding to the first volume.

다양한 실시예에 따른 전자 장치의 동작 방법에서, 상기 제 3 파티션에서 상기 시스템 소프트웨어 업데이트를 위한 파일을 저장하는 공간만큼 상기 제 1 파일 시스템을 확장하는 동작을 포함할 수 있다.The operating method of the electronic device according to various embodiments of the present disclosure may include extending the first file system as much as a space for storing a file for updating the system software in the third partition.

다양한 실시예에 따른 전자 장치의 동작 방법에서, 상기 제 3 파티션에서 상기 시스템 소프트웨어 업데이트를 위한 파일을 저장하고 남은 공간에 대한 영역의 시작과 끝 위치와 관련된 정보를 지정된 위치에 저장하는 동작 및 상기 저장된 정보에 기반하여 상기 제 3 파티션에서 시스템 소프트웨어 업데이트를 위한 파일을 저장하고 남은 공간을 제 2 볼륨으로 재구성하여 상기 제 2 파일 시스템에 어태치(attach)하는 동작을 포함할 수 있다.In an operating method of an electronic device according to various embodiments, an operation of storing a file for updating the system software in the third partition and storing information related to a start and end position of an area for a remaining space in a designated location; and An operation of storing a file for system software update in the third partition based on the information, reconstructing the remaining space into a second volume, and attaching the file to the second file system.

다양한 실시예에 따른 전자 장치의 동작 방법에서, 파일을 저장할 때, 제 1 볼륨의 모든 데이터 블록이 할당됨에 대응하여, 제 2 볼륨의 데이터 블록에 할당받아 파일을 저장하는 동작을 포함할 수 있다.An operating method of an electronic device according to various embodiments may include, when storing a file, storing the file by being allocated to data blocks of a second volume in response to all data blocks of a first volume being allocated.

본 문서에 개시된 다양한 실시예들에 따른 전자 장치는 다양한 형태의 장치가 될 수 있다. 전자 장치는, 예를 들면, 휴대용 통신 장치(예: 스마트폰), 컴퓨터 장치, 휴대용 멀티미디어 장치, 휴대용 의료 기기, 카메라, 웨어러블 장치, 또는 가전 장치를 포함할 수 있다. 본 문서의 실시예에 따른 전자 장치는 전술한 기기들에 한정되지 않는다.Electronic devices according to various embodiments disclosed in this document may be devices of various types. The electronic device may include, for example, a portable communication device (eg, a smart phone), a computer device, a portable multimedia device, a portable medical device, a camera, a wearable device, or a home appliance. An electronic device according to an embodiment of the present document is not limited to the aforementioned devices.

본 문서의 다양한 실시예들 및 이에 사용된 용어들은 본 문서에 기재된 기술적 특징들을 특정한 실시예들로 한정하려는 것이 아니며, 해당 실시예의 다양한 변경, 균등물, 또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 또는 관련된 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 아이템에 대응하는 명사의 단수 형은 관련된 문맥상 명백하게 다르게 지시하지 않는 한, 상기 아이템 한 개 또는 복수 개를 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및 B 중 적어도 하나", "A 또는 B 중 적어도 하나", "A, B 또는 C", "A, B 및 C 중 적어도 하나", 및 "A, B, 또는 C 중 적어도 하나"와 같은 문구들 각각은 그 문구들 중 해당하는 문구에 함께 나열된 항목들 중 어느 하나, 또는 그들의 모든 가능한 조합을 포함할 수 있다. "제 1", "제 2", 또는 "첫째" 또는 "둘째"와 같은 용어들은 단순히 해당 구성요소를 다른 해당 구성요소와 구분하기 위해 사용될 수 있으며, 해당 구성요소들을 다른 측면(예: 중요성 또는 순서)에서 한정하지 않는다. 어떤(예: 제 1) 구성요소가 다른(예: 제 2) 구성요소에, "기능적으로" 또는 "통신적으로"라는 용어와 함께 또는 이런 용어 없이, "커플드" 또는 "커넥티드"라고 언급된 경우, 그것은 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로(예: 유선으로), 무선으로, 또는 제 3 구성요소를 통하여 연결될 수 있다는 것을 의미한다.Various embodiments of this document and terms used therein are not intended to limit the technical features described in this document to specific embodiments, but should be understood to include various modifications, equivalents, or substitutes of the embodiments. In connection with the description of the drawings, like reference numbers may be used for like or related elements. The singular form of a noun corresponding to an item may include one item or a plurality of items, unless the relevant context clearly dictates otherwise. In this document, "A or B", "at least one of A and B", "at least one of A or B", "A, B or C", "at least one of A, B and C", and "A Each of the phrases such as "at least one of , B, or C" may include any one of the items listed together in that phrase, or all possible combinations thereof. Terms such as "first", "second", or "first" or "secondary" may simply be used to distinguish a given component from other corresponding components, and may be used to refer to a given component in another aspect (eg, importance or order) is not limited. A (e.g., first) component is said to be “coupled” or “connected” to another (e.g., second) component, with or without the terms “functionally” or “communicatively.” When mentioned, it means that the certain component may be connected to the other component directly (eg by wire), wirelessly, or through a third component.

본 문서의 다양한 실시예들에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구현된 유닛을 포함할 수 있으며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로와 같은 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는, 상기 부품의 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 일실시예에 따르면, 모듈은 ASIC(application-specific integrated circuit)의 형태로 구현될 수 있다. The term "module" used in various embodiments of this document may include a unit implemented in hardware, software, or firmware, and is interchangeable with terms such as, for example, logic, logical blocks, parts, or circuits. can be used as A module may be an integrally constructed component or a minimal unit of components or a portion thereof that performs one or more functions. For example, according to one embodiment, the module may be implemented in the form of an application-specific integrated circuit (ASIC).

본 문서의 다양한 실시예들은 기기(machine)(예: 전자 장치(#01)) 의해 읽을 수 있는 저장 매체(storage medium)(예: 내장 메모리(#36) 또는 외장 메모리(#38))에 저장된 하나 이상의 명령어들을 포함하는 소프트웨어(예: 프로그램(#40))로서 구현될 수 있다. 예를 들면, 기기(예: 전자 장치(#01))의 프로세서(예: 프로세서(#20))는, 저장 매체로부터 저장된 하나 이상의 명령어들 중 적어도 하나의 명령을 호출하고, 그것을 실행할 수 있다. 이것은 기기가 상기 호출된 적어도 하나의 명령어에 따라 적어도 하나의 기능을 수행하도록 운영되는 것을 가능하게 한다. 상기 하나 이상의 명령어들은 컴파일러에 의해 생성된 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장 매체는, 비일시적(non-transitory) 저장 매체의 형태로 제공될 수 있다. 여기서, '비일시적'은 저장 매체가 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장 매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다.Various embodiments of this document are stored in a storage medium (eg, internal memory (#36) or external memory (#38)) readable by a machine (eg, electronic device (#01)). It may be implemented as software (eg, program #40) including one or more instructions. For example, a processor (eg, processor #20) of a device (eg, electronic device #01) may call at least one command among one or more instructions stored from a storage medium and execute it. This enables the device to be operated to perform at least one function according to the at least one command invoked. The one or more instructions may include code generated by a compiler or code executable by an interpreter. The device-readable storage medium may be provided in the form of a non-transitory storage medium. Here, 'non-temporary' only means that the storage medium is a tangible device and does not contain a signal (e.g. electromagnetic wave), and this term refers to the case where data is stored semi-permanently in the storage medium. It does not discriminate when it is temporarily stored.

일실시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory(CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두 개의 사용자 장치들(예: 스마트 폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.According to one embodiment, the method according to various embodiments disclosed in this document may be included and provided in a computer program product. Computer program products may be traded between sellers and buyers as commodities. A computer program product is distributed in the form of a device-readable storage medium (e.g. compact disc read only memory (CD-ROM)), or through an application store (e.g. Play Store™) or on two user devices (e.g. It can be distributed (eg downloaded or uploaded) online, directly between smart phones. In the case of online distribution, at least part of the computer program product may be temporarily stored or temporarily created in a device-readable storage medium such as a manufacturer's server, an application store server, or a relay server's memory.

다양한 실시예들에 따르면, 상기 기술한 구성요소들의 각각의 구성요소(예: 모듈 또는 프로그램)는 단수 또는 복수의 개체를 포함할 수 있으며, 복수의 개체 중 일부는 다른 구성요소에 분리 배치될 수도 있다. 다양한 실시예들에 따르면, 전술한 해당 구성요소들 중 하나 이상의 구성요소들 또는 동작들이 생략되거나, 또는 하나 이상의 다른 구성요소들 또는 동작들이 추가될 수 있다. 대체적으로 또는 추가적으로, 복수의 구성요소들(예: 모듈 또는 프로그램)은 하나의 구성요소로 통합될 수 있다. 이런 경우, 통합된 구성요소는 상기 복수의 구성요소들 각각의 구성요소의 하나 이상의 기능들을 상기 통합 이전에 상기 복수의 구성요소들 중 해당 구성요소에 의해 수행되는 것과 동일 또는 유사하게 수행할 수 있다. 다양한 실시예들에 따르면, 모듈, 프로그램 또는 다른 구성요소에 의해 수행되는 동작들은 순차적으로, 병렬적으로, 반복적으로, 또는 휴리스틱하게 실행되거나, 상기 동작들 중 하나 이상이 다른 순서로 실행되거나, 생략되거나, 또는 하나 이상의 다른 동작들이 추가될 수 있다. According to various embodiments, each component (eg, module or program) of the above-described components may include a single object or a plurality of entities, and some of the plurality of entities may be separately disposed in other components. there is. According to various embodiments, one or more components or operations among the aforementioned corresponding components may be omitted, or one or more other components or operations may be added. Alternatively or additionally, a plurality of components (eg modules or programs) may be integrated into a single component. In this case, the integrated component may perform one or more functions of each of the plurality of components identically or similarly to those performed by a corresponding component among the plurality of components prior to the integration. . According to various embodiments, the actions performed by a module, program, or other component are executed sequentially, in parallel, iteratively, or heuristically, or one or more of the actions are executed in a different order, or omitted. or one or more other actions may be added.

Claims (23)

전자 장치에 있어서,
제 1 파티션, 제 2 파티션 및 제 3 파티션을 포함하는 저장 장치; 및
프로세서를 포함하고,
상기 프로세서는
상기 제 2 파티션을 제 1 볼륨으로, 상기 제 3 파티션을 제 2 볼륨을 구성하고,
상기 제 2 볼륨을 상기 파일 시스템에 어태치(attach)하거나 디태치(detach)하여 상기 저장 장치의 저장 공간을 관리하는
전자 장치.
In electronic devices,
a storage device including a first partition, a second partition, and a third partition; and
contains a processor;
The processor
The second partition constitutes a first volume and the third partition constitutes a second volume;
Managing the storage space of the storage device by attaching or detaching the second volume to the file system
electronic device.
제 1 항에 있어서,
상기 제 1 파티션은 상기 전자 장치의 구동을 위한 실행 파일이 저장되는 시스템 파티션이고,
상기 제 2 파티션은 사용자 데이터를 저장하기 위한 사용자 데이터 파티션이고,
상기 제 3 파티션은 상기 시스템 파티션에 대하여 실행 파일의 저장 공간을 보조하기 위한 임시 공간인
전자 장치.
According to claim 1,
The first partition is a system partition in which an executable file for driving the electronic device is stored,
The second partition is a user data partition for storing user data;
The third partition is a temporary space for assisting the storage space of an executable file with respect to the system partition.
electronic device.
제 2 항에 있어서,
상기 프로세서는
상기 전자 장치의 시스템 소프트웨어 업데이트 요청을 확인하고,
상기 제 2 볼륨에 저장된 데이터를 상기 제 1 볼륨으로 이동시키고,
상기 제 2 볼륨을 상기 파일 시스템에서 디태치(detach)하고,
상기 제 3 파티션에 상기 시스템 소프트웨어 업데이트를 위한 파일을 저장하여 상기 시스템 소프트웨어 업데이트를 수행하는
전자 장치.
According to claim 2,
The processor
Checking the system software update request of the electronic device;
Moving data stored in the second volume to the first volume;
detach the second volume from the file system;
The system software update is performed by storing a file for the system software update in the third partition.
electronic device.
제 3 항에 있어서,
상기 프로세서는
상기 제 2 볼륨이 디태치된 상기 파일 시스템을 리사이즈(re-size)하고,
상기 파일 시스탬의 메타 데이터 영역에 상기 리사이즈된 파일 시스템과 관련된 정보를 저장하는
전자 장치.
According to claim 3,
The processor
Re-size the file system to which the second volume is detached;
Storing information related to the resized file system in a metadata area of the file system
electronic device.
제 3 항에 있어서,
상기 프로세서는
상기 제 2 볼륨에 저장된 데이터를 상기 제 1 볼륨으로 이동시키기 전, 상기 제 1 볼륨에 상기 제 2 볼륨에 저장된 데이터를 저장할 공간이 부족함에 대응하여,
상기 제 1 볼륨에 대응하는 상기 제 2 파티션의 여유 공간을 확보하기 위하여 사용자에게 상기 사용자 데이터를 백업 후 삭제하도록 가이드하는
전자 장치.
According to claim 3,
The processor
Before moving the data stored in the second volume to the first volume, in response to insufficient space in the first volume to store the data stored in the second volume,
Guiding the user to back up and then delete the user data in order to secure free space of the second partition corresponding to the first volume
electronic device.
제 3 항에 있어서,
상기 프로세서는
상기 제 3 파티션에서 상기 시스템 소프트웨어 업데이트를 위한 파일을 저장하고 남은 공간에 대한 영역의 시작과 끝 위치와 관련된 정보를 저장하고,
상기 저장된 정보에 기반하여 상기 제 3 파티션에서 시스템 소프트웨어 업데이트를 위한 파일을 저장하고 남은 공간을 제 2 볼륨으로 재구성하여 상기 파일 시스템에 어태치(attach)하는
전자 장치.
According to claim 3,
The processor
Storing files for updating the system software in the third partition and storing information related to start and end positions of regions for remaining space;
Storing a file for system software update in the third partition based on the stored information, reconstructing the remaining space into a second volume, and attaching it to the file system.
electronic device.
제 1 항에 있어서,
상기 프로세서는
파일을 저장할 때, 제 1 볼륨의 모든 데이터 블록이 할당됨에 대응하여, 제 2 볼륨의 데이터 블록에 할당받아 파일을 저장하는
전자 장치.
According to claim 1,
The processor
When storing a file, in response to all data blocks of the first volume being allocated, data blocks of the second volume are allocated and the file is stored.
electronic device.
전자 장치에 있어서,
제 1 파티션, 제 2 파티션 및 제 3 파티션을 포함하는 저장 장치; 및
프로세서를 포함하고,
상기 프로세서는
상기 제 1 파티션을 관리하는 제 1 파일 시스템을 구성하고,
상기 제 2 파티션을 제 1 볼륨으로, 상기 제 3 파티션을 제 2 볼륨으로 제 2 파일 시스템을 구성하고,
상기 제 2 볼륨을 상기 제 2 파일 시스템에 어태치(attach)하거나 디태치(detach)하여 상기 저장 장치의 저장 공간을 관리하는
전자 장치.
In electronic devices,
a storage device including a first partition, a second partition, and a third partition; and
contains a processor;
The processor
Configuring a first file system for managing the first partition;
Constituting a second file system with the second partition as a first volume and the third partition as a second volume;
Managing the storage space of the storage device by attaching or detaching the second volume to the second file system
electronic device.
제 8 항에 있어서,
상기 제 1 파티션은 상기 전자 장치의 구동을 위한 시스템 파일이 저장되는 시스템 파티션이고,
상기 제 2 파티션은 사용자 데이터를 저장하기 위한 사용자 데이터 파티션이고,
상기 제 3 파티션은 상기 시스템 파티션에 대하여 실행 파일의 저장 공간을 보조하기 위한 임시 공간인
전자 장치.
According to claim 8,
The first partition is a system partition in which a system file for driving the electronic device is stored,
The second partition is a user data partition for storing user data;
The third partition is a temporary space for assisting the storage space of an executable file with respect to the system partition.
electronic device.
제 9 항에 있어서,
상기 프로세서는
상기 전자 장치의 시스템 소프트웨어 업데이트 요청을 확인하고,
상기 제 2 볼륨에 저장된 데이터를 상기 제 1 볼륨으로 이동시키고,
상기 제 2 볼륨을 상기 제 2 파일 시스템에서 디태치(detach)하고,
상기 제 3 파티션에 상기 시스템 소프트웨어 업데이트를 위한 파일을 저장하여 상기 시스템 소프트웨어 업데이트를 수행하는
전자 장치.
According to claim 9,
The processor
Checking the system software update request of the electronic device;
Moving data stored in the second volume to the first volume;
detach the second volume from the second file system;
The system software update is performed by storing a file for the system software update in the third partition.
electronic device.
제 10 항에 있어서,
상기 프로세서는
상기 제 2 볼륨이 디태치된 상기 제 2 파일 시스템을 리사이즈(re-size)하고,
상기 제 2 파일 시스탬의 메타 데이터 영역에 상기 리사이즈된 제 2 파일 시스템과 관련된 정보를 저장하는
전자 장치.
According to claim 10,
The processor
Re-size the second file system to which the second volume is detached;
Storing information related to the resized second file system in a meta data area of the second file system
electronic device.
제 10 항에 있어서,
상기 프로세서는
상기 제 2 볼륨에 저장된 데이터를 상기 제 1 볼륨으로 이동시키기 전, 상기 제 1 볼륨에 상기 제 2 볼륨에 저장된 데이터를 저장할 공간이 부족함에 대응하여,
상기 제 1 볼륨에 대응하는 상기 제 2 파티션의 여유 공간을 확보하기 위하여 사용자에게 상기 사용자 데이터를 백업 후 삭제하도록 가이드하는
전자 장치.
According to claim 10,
The processor
Before moving the data stored in the second volume to the first volume, in response to insufficient space in the first volume to store the data stored in the second volume,
Guiding the user to back up and then delete the user data in order to secure free space of the second partition corresponding to the first volume
electronic device.
제 10 항에 있어서,
상기 프로세서는
상기 제 3 파티션에서 상기 시스템 소프트웨어 업데이트를 위한 파일을 저장하는 공간만큼 상기 제 1 파일 시스템을 확장하는
전자 장치.
According to claim 10,
The processor
Expanding the first file system by the space for storing the file for updating the system software in the third partition
electronic device.
제 10 항에 있어서,
상기 프로세서는
상기 제 3 파티션에서 상기 시스템 소프트웨어 업데이트를 위한 파일을 저장하고 남은 공간에 대한 영역의 시작과 끝 위치와 관련된 정보를 지정된 위치에 저장하고,
상기 저장된 정보에 기반하여 상기 제 3 파티션에서 시스템 소프트웨어 업데이트를 위한 파일을 저장하고 남은 공간을 제 2 볼륨으로 재구성하여 상기 제 2 파일 시스템에 어태치(attach)하는
전자 장치.
According to claim 10,
The processor
In the third partition, a file for updating the system software is stored and information related to the start and end positions of an area for the remaining space is stored in a designated location;
Storing a file for system software update in the third partition based on the stored information, reconstructing the remaining space into a second volume, and attaching the file to the second file system.
electronic device.
제 14 항에 있어서,
파일을 저장할 때, 제 1 볼륨의 모든 데이터 블록이 할당됨에 대응하여, 제 2 볼륨의 데이터 블록에 할당받아 파일을 저장하는
전자 장치.

15. The method of claim 14,
When storing a file, in response to all data blocks of the first volume being allocated, data blocks of the second volume are allocated and the file is stored.
electronic device.

제 1 파티션, 제 2 파티션 및 제 3 파티션을 포함하는 저장 장치를 관리하는전자 장치의 동작 방법에 있어서,
상기 제 1 파티션을 관리하는 제 1 파일 시스템을 구성하는 동작;
상기 제 2 파티션을 제 1 볼륨으로, 상기 제 3 파티션을 제 2 볼륨으로 제 2 파일 시스템을 구성하는 동작; 및
상기 제 2 볼륨을 상기 제 2 파일 시스템에 어태치(attach)하거나 디태치(detach)하는 동작을 포함하는
전자 장치의 동작 방법.
A method of operating an electronic device that manages a storage device including a first partition, a second partition, and a third partition,
configuring a first file system managing the first partition;
configuring a second file system using the second partition as a first volume and the third partition as a second volume; and
Attaching or detaching the second volume to the second file system
Methods of operating electronic devices.
제 16 항에 있어서,
상기 제 1 파티션은 상기 전자 장치의 구동을 위한 시스템 파일이 저장되는 시스템 파티션이고,
상기 제 2 파티션은 사용자 데이터를 저장하기 위한 사용자 데이터 파티션이고,
상기 제 3 파티션은 상기 시스템 파티션에 대하여 실행 파일의 저장 공간을 보조하기 위한 임시 공간인
전자 장치의 동작 방법.
17. The method of claim 16,
The first partition is a system partition in which a system file for driving the electronic device is stored,
The second partition is a user data partition for storing user data;
The third partition is a temporary space for assisting the storage space of an executable file with respect to the system partition.
Methods of operating electronic devices.
제 17 항에 있어서,
상기 전자 장치의 시스템 소프트웨어 업데이트 요청을 확인하는 동작;
상기 제 2 볼륨에 저장된 데이터를 상기 제 1 볼륨으로 이동시키는 동작;
상기 제 2 볼륨을 상기 제 2 파일 시스템에서 디태치(detach)하는 동작; 및
상기 제 3 파티션에 상기 시스템 소프트웨어 업데이트를 위한 파일을 저장하여 상기 시스템 소프트웨어 업데이트를 수행하는 동작을 포함하는
전자 장치의 동작 방법.
18. The method of claim 17,
checking a system software update request of the electronic device;
moving data stored in the second volume to the first volume;
detaching the second volume from the second file system; and
Storing a file for the system software update in the third partition to perform the system software update.
Methods of operating electronic devices.
제 18 항에 있어서,
상기 제 2 볼륨이 디태치된 상기 제 2 파일 시스템을 리사이즈(re-size)하는 동작; 및
상기 제 2 파일 시스탬의 메타 데이터 영역에 상기 리사이즈된 제 2 파일 시스템과 관련된 정보를 저장하는 동작을 포함하는
전자 장치의 동작 방법.
According to claim 18,
re-size the second file system to which the second volume is detached; and
Storing information related to the resized second file system in a meta data area of the second file system
Methods of operating electronic devices.
제 18 항에 있어서,
상기 제 2 볼륨에 저장된 데이터를 상기 제 1 볼륨으로 이동시키는 동작 이전, 상기 제 1 볼륨에 상기 제 2 볼륨에 저장된 데이터를 저장할 공간이 부족함에 대응하여,
상기 제 1 볼륨에 대응하는 상기 제 2 파티션의 여유 공간을 확보하기 위하여 사용자에게 상기 사용자 데이터를 백업 후 삭제하도록 가이드하는 동작을 포함하는
전자 장치의 동작 방법.
According to claim 18,
Prior to the operation of moving the data stored in the second volume to the first volume, in response to the lack of space in the first volume to store the data stored in the second volume,
Including an operation of guiding a user to back up and then delete the user data in order to secure a free space of the second partition corresponding to the first volume
Methods of operating electronic devices.
제 18 항에 있어서,
상기 제 3 파티션에서 상기 시스템 소프트웨어 업데이트를 위한 파일을 저장하는 공간만큼 상기 제 1 파일 시스템을 확장하는 동작을 포함하는
전자 장치의 동작 방법.
According to claim 18,
Expanding the first file system as much as a space for storing a file for updating the system software in the third partition
Methods of operating electronic devices.
제 18 항에 있어서,
상기 제 3 파티션에서 상기 시스템 소프트웨어 업데이트를 위한 파일을 저장하고 남은 공간에 대한 영역의 시작과 끝 위치와 관련된 정보를 지정된 위치에 저장하는 동작; 및
상기 저장된 정보에 기반하여 상기 제 3 파티션에서 시스템 소프트웨어 업데이트를 위한 파일을 저장하고 남은 공간을 제 2 볼륨으로 재구성하여 상기 제 2 파일 시스템에 어태치(attach)하는 동작을 포함하는
전자 장치의 동작 방법.
According to claim 18,
storing a file for updating the system software in the third partition and storing information related to start and end positions of an area for remaining space in a designated location; and
Storing a file for system software update in the third partition based on the stored information, reconstructing the remaining space into a second volume, and attaching the file to the second file system
Methods of operating electronic devices.
제 22 항에 있어서,
파일을 저장할 때, 제 1 볼륨의 모든 데이터 블록이 할당됨에 대응하여, 제 2 볼륨의 데이터 블록에 할당받아 파일을 저장하는 동작을 포함하는
전자 장치의 동작 방법.
23. The method of claim 22,
When storing a file, in response to the allocation of all data blocks of the first volume, the operation of receiving the data blocks of the second volume and storing the file
Methods of operating electronic devices.
KR1020220014398A 2021-11-30 2022-02-03 Electronic device and operation method of electronic device for managing storage space KR20230081556A (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP22901652.2A EP4357902A1 (en) 2021-11-30 2022-11-22 Electronic device for managing storage space, and method for operating electronic device
PCT/KR2022/018500 WO2023101294A1 (en) 2021-11-30 2022-11-22 Electronic device for managing storage space, and method for operating electronic device
US18/071,056 US20230168831A1 (en) 2021-11-30 2022-11-29 Electronic device and operation method of electronic device for managing storage space

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20210169304 2021-11-30
KR1020210169304 2021-11-30

Publications (1)

Publication Number Publication Date
KR20230081556A true KR20230081556A (en) 2023-06-07

Family

ID=86762302

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220014398A KR20230081556A (en) 2021-11-30 2022-02-03 Electronic device and operation method of electronic device for managing storage space

Country Status (1)

Country Link
KR (1) KR20230081556A (en)

Similar Documents

Publication Publication Date Title
US20230342074A1 (en) Electronic device and method for operation of storage of electronic device
US20230244406A1 (en) Electronic device and storage management method using same
US20200183589A1 (en) Method and electronic device for initializing storage
US11875035B2 (en) Electronic device and method for managing memory using the same
KR20230081556A (en) Electronic device and operation method of electronic device for managing storage space
KR20220099322A (en) Electronic device and method for managing memory using the same
EP4357902A1 (en) Electronic device for managing storage space, and method for operating electronic device
KR20220102421A (en) Electronic device and memory management method of the electronic device
US20230305999A1 (en) Method for performing integrity check, and electronic device using same
KR20230031508A (en) Electronic device and method for operating file system
US20230067968A1 (en) Electronic device and method of electronic device operating file system
US20230118797A1 (en) Data swapping method and electronic device supporting same
KR20220102489A (en) Electronic device and method for updating database based on reserve space
KR20230083940A (en) Electronic device and method for operating file system
US20230177005A1 (en) Electronic device and method for operating file system
WO2023101294A1 (en) Electronic device for managing storage space, and method for operating electronic device
KR20230119549A (en) Method and apparatus for editing video in electronic device
KR20220102339A (en) Electronic device and kernel module loading method of the electronic device
KR20220135504A (en) Data Storage device and operating method of data Storage device
KR20220017309A (en) Method for allocating of virtual memory and electronic device supporting the same
KR20220135560A (en) Electronic device for managing memory and operating method thereof
KR20220127504A (en) Electronic device for performing runtime checksum verification of block device image and operating method thereof
KR20230068230A (en) Electronic device and method for preserving data in factory reset of the electronic device
KR20230023397A (en) Electronic device and operation method thereof
KR20230023281A (en) Electronic device and operation method of electronic device including artificial neural network