(19)
(11)EP 2 813 947 B1

(12)EUROPEAN PATENT SPECIFICATION

(45)Mention of the grant of the patent:
09.09.2020 Bulletin 2020/37

(21)Application number: 14172184.5

(22)Date of filing:  12.06.2014
(51)International Patent Classification (IPC): 
G06F 9/4401(2018.01)
G06F 16/27(2019.01)
G06F 16/13(2019.01)

(54)

Electronic device and method for mounting file system using virtual block device

Elektronische Vorrichtung und Verfahren für ein Montagedateisystem mit virtuellen Blockvorrichtungen

Dispositif électronique et procédé de montage d'un système de fichiers utilisant un dispositif de bloc virtuel


(84)Designated Contracting States:
AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC MK MT NL NO PL PT RO RS SE SI SK SM TR

(30)Priority: 14.06.2013 KR 20130068613

(43)Date of publication of application:
17.12.2014 Bulletin 2014/51

(73)Proprietor: Samsung Electronics Co., Ltd.
Gyeonggi-do 443-742 (KR)

(72)Inventor:
  • Lee, Woo-Joong
    Seoul (KR)

(74)Representative: HGF 
1 City Walk
Leeds LS11 9DX
Leeds LS11 9DX (GB)


(56)References cited: : 
  
  • CHUL LEE ET AL: "A Hybrid Flash File System Based on NOR and NAND Flash Memories for Embedded Devices", IEEE TRANSACTIONS ON COMPUTERS, IEEE SERVICE CENTER, LOS ALAMITOS, CA, US, vol. 57, no. 7, 1 July 2008 (2008-07-01), pages 1002-1008, XP011203143, ISSN: 0018-9340
  • "Microsoft Extensible Firmware Initiative FAT32 File System Specification; FAT: General Overview of On-Disk Format; Version 1.03", INTERNET CITATION, 6 December 2000 (2000-12-06), XP002389632, Retrieved from the Internet: URL:http://www.microsoft.com/whdc/system/p latform/firmware.fatgen.mspx [retrieved on 2006-01-01]
  
Note: Within nine months from the publication of the mention of the grant of the European patent, any person may give notice to the European Patent Office of opposition to the European patent granted. Notice of opposition shall be filed in a written reasoned statement. It shall not be deemed to have been filed until the opposition fee has been paid. (Art. 99(1) European Patent Convention).


Description

BACKGROUND


1. Field of the Disclosure



[0001] The present disclosure relates to an electronic device and method for mounting a file system using a virtual block device.

2. Description of the Related Art



[0002] A memory card may be inserted into an electronic device to extend the storage area of the electronic device and to exchange data with another electronic device. However, memory cards in general have a lower input/output performance and a shorter lifetime, compared to the internal storage generally included in electronic devices. Therefore, the need exists for new techniques for improving input/output performance and the lifetime of memory cards.

[0003] Chul Lee et a: "A Hybrid Flash File System based on NOR and NAND Flash Memories for Embedded Devices", IEEE Transactions on Computers, IEEE Service Center, Los Alamitos, CA, US, vol. 57, no, 7, 1 July 2008, pages 1002-1008. This document discloses a hybrid flash system based on both NOR and NAND flash memory to alleviate the utilization and life span problems of NAND flash memory.

[0004] "Microsoft Extensible Firmware Initiative FAT32 File System Specification; FAT: General Overview of On-Disk Format; Version 1.03", 6 December 2000, retrieved from www.microsoft.com/whdc/system/platform/firmware.fatgen.mspx. This document discloses an overview of the FAT (File Allocation Table) file system.

SUMMARY



[0005] According to a first aspect of the present invention there is provided a method comprising: identifying that a removable memory card is inserted into a predetermined slot of an electronic device; detecting, upon insertion of the memory card into the electronic device, whether a backup boot record is stored in the boot record area of the internal storage; and determining if a fast mode is selected; wherein if the fast mode is selected the method further comprises: copying a backup boot record of a boot record area and a file allocation table of a file allocation table area in the memory card to a boot record area and a file allocation table area located in an internal storage located in the electronic device; generating a virtual block device that comprises the file allocation table area, the backup boot record, and a cluster heap area, wherein the file allocation table area is synchronized with the file allocation table area located in the internal storage of the electronic device, and the cluster heap area is synchronized with the cluster heap area in the memory card; and mounting a file system of the memory card using the generated virtual block device; wherein the fast mode is a mode for executing the file system of the memory card using the generated virtual block device.

[0006] According to a second aspect of the present invention there is provided an electronic device comprising an internal storage and a processing circuitry configured to: identify that a removable memory card is inserted into a predetermined slot of an electronic device; detect, upon insertion of the memory card into the electronic device, whether a backup boot record is stored in the boot record area of the internal storage; and determine if a fast mode is selected; wherein if the fast mode is selected the electronic device is further configured to: copy a backup boot record of a boot record area and a file allocation table of a file allocation table area in the memory card to a boot record area and a file allocation table area in an internal storage located in the electronic device; generate a virtual block device including the file allocation table area, the backup boot, and a cluster heap area, wherein the file allocation table area is synchronized with the file allocation table area located in the internal storage of the electronic device, and the cluster heap area is synchronized with the cluster heap area in the memory card; and mount a file system of the memory card using the generated virtual block device; wherein the fast mode is a mode for executing the file system of the memory card using the generated virtual block device.

[0007] According to a third aspect of the present invention there is provided a computer program product comprising computer program code means adapted to perform all the steps of the above method.

BRIEF DESCRIPTION OF THE DRAWINGS



[0008] The above and other objects, features and advantages of the present disclosure will become more apparent from the following detailed description when taken in conjunction with the accompanying drawings in which:

FIGS. 1A and 1B are diagrams illustrating an example of a technique for generating a virtual block device and mounting a File Allocation Table (FAT) file system, according to aspects of the present disclosure the present disclosure;

FIGS. 2A and 2B are diagrams illustrating an example of in which a FAT file system using a virtual block device is un-mounted, according to aspects of the present disclosure;

FIGS. 3A and 3B are diagrams illustrating an example in which a fast mode is manually selected in an electronic device, according to the present disclosure;

FIGS. 4A and 4B are diagrams illustrating an example in which a normal mode is selected in an electronic device, according to aspects of the present disclosure;

FIGS. 5A and 5B are diagrams illustrating an example of a technique for improving security for a memory card in an electronic device, according to aspects of the present disclosure;

FIG. 6 is a flowchart illustrating an example of a process for mounting a FAT file system in an electronic device, according to aspects of the present disclosure;

FIG. 7 is a flowchart illustrating an example of a process for un-mounting a FAT file system in an electronic device, according to aspects of the present disclosure;

FIG. 8 is a flowchart illustrating an example of a process for mounting a file system using a virtual block device in an electronic device, according to aspects of the present disclosure; and

FIG. 9 is a block diagram illustrating an example of a configuration of an electronic device, according to aspects of the present disclosure.


DETAILED DESCRIPTION



[0009] Aspects of the present disclosure will be described herein below with reference to the accompanying drawings. In the following description, detailed descriptions of well-known functions or configurations will be omitted since they would unnecessarily obscure the subject matter of the present disclosure. Also, the terms used herein are defined according to the functions of the present disclosure. Thus, the terms may vary depending on users' or operators' intentions or practices. Therefore, the terms used herein must be understood based on the descriptions made herein.

[0010] FIGS. 1A and 1B are diagrams illustrating an example of a technique for generating a virtual block device and mounting a File Allocation Table (FAT) file system, according to aspects of the present disclosure. Referring to FIG. 1A, a virtual block device according to the present disclosure may include a memory card capable of being inserted to an electronic device and an internal storage included in the electronic device. Herein, the FAT file system may be defined as a system that may read and write data on a per-file basis and a per-directory basis.

[0011] First, the memory card may be inserted into a slot included in the electronic device and be used to extend the storage area of the electronic device and to exchange data with another electronic device. Examples of the memory card may include a multimedia card, a Secure Digital (SD) card, a compact flash card, a micro drive, a memory stick), a smart media card, an extreme digital (xD) picture card, and/or any other suitable type of card.

[0012] The memory card may include a boot record area 101, a FAT area 102, and a cluster heap area 103. In this example, the boot record area 101 refers to an area in which machine codes for booting the electronic device and various setting values of the FAT file system are included. In addition, the FAT area 102 is the meta-data area of the file system for storing a table for managing cluster allocation information and a cluster chain. Based on the FAT area 102, it may be determined which cluster is empty or which file is coupled to a cluster. In addition, the cluster heap area 103 is an area in which data clusters are stored.

[0013] The internal storage may include a boot record area 104 and a FAT area 105 as storage areas included in the electronic device. For example, the boot record area 104 may be an area to which the boot record area 101 of the memory card is copied. The boot record area 104 may include a backup boot record obtained when the boot record of the memory card is backed up. In addition, the FAT area 105 may be an area to which the FAT area 102 of the memory card is copied, and the FAT area 105 may include the FAT table of the file system stored in the FAT area 102 of the memory card. That is, the boot record area 104 and FAT area 105 of the internal storage included in the electronic device are obtained by copying the boot record area 101 and FAT area 102 of the memory card, and the functions thereof are identical respectively to those of the boot record area 101 and FAT area 102 of the memory card.

[0014] The virtual block device may include a boot record area 106, a FAT area 107, and a cluster heap area 108. The boot record area 106 and FAT area 107 may be areas which have been synchronized with the boot record area 104 and FAT area 105 of the internal storage respectively, and the cluster heap area 108 of the virtual device may be an area which has been synchronized with the cluster heap area 103 of the memory card. Thus, the boot record area 106 and FAT area 107 of the virtual block device may operate under the control of the internal storage included in the electronic device. An example of mounting a FAT file system using the virtual block device in an electronic device will be described in detail below.

[0015] First, the electronic device may identify that the memory card is inserted into the slot. In some instances, the electronic device may include one or more slots into which the memory card may be inserted to enable the insertion of a plurality of memory cards..

[0016] Thereafter, the electronic device may determine whether the backup boot record is stored in the boot record area 104 of the internal storage. Specifically, the electronic device may determine whether the boot record of the memory card is backed up in the boot record area 104 of the internal storage. When the memory card is inserted into the predetermined slot of the electronic device, the electronic device backs up the boot record 101 of the inserted memory card to store the backup boot record in the boot record area 104 of the internal storage of the electronic device.

[0017] When the electronic device determines that the backup boot record is stored in the boot record area 104 of the internal storage, the electronic device may determine whether the backup boot record is identical to the boot record stored in the boot record area 101 of the memory card. Specifically, the electronic device may determine whether the backup boot record is identical to the boot record stored in the boot record area 101 of the memory card.

[0018] When the electronic device determines that the backup boot record is identical to the boot record stored in the boot record area 101 of the memory card, the electronic device generates a virtual block device including the boot record area 104 and FAT area 105 of the internal storage and the cluster heap area 103 of the inserted memory card. Specifically, the boot record area 106 and FAT area 107 of the virtual device may be areas which have been synchronized with the boot record area 104 and FAT area 105 of the internal storage respectively, and the cluster heap area 108 of the virtual device may be an area which has been synchronized with the cluster heap area 103 of the memory card.

[0019] Thereafter, the electronic device may mount a FAT file system using the generated virtual block device. That is, the boot record area 106 and FAT area 107 of the virtual block device may operate under the control of the internal storage included in the electronic device. Thereafter, a FAT file system may be managed in which the FAT area 107 of the generated virtual block device reads data from the cluster heap area 108 of the virtual block device and stores data in the cluster heap area 108.

[0020] However, when the backup boot record is not stored in the boot record area 104 of the internal storage included in the electronic device or the backup boot record is not identical to the boot record stored in the boot record area 101 of the memory card even through the backup boot record is stored, the virtual block device may be generated through a process which will be described below.

[0021] First, the electronic device may determine whether an instruction for performing a fast mode is received. For example, the fast mode may be a mode for executing the FAT file system using the generated virtual block device. Operating the memory card in fast mode may help improve the input/output performance of the memory card.

[0022] Thereafter, when the electronic device receives the instruction for executing the fast mode, the electronic device may copy a boot record stored in the boot record area 101 of the memory card and a FAT table stored in the FAT area 102 to the internal storage respectively. That is, as illustrated in FIG. 1B, the electronic device may copy the boot record stored in the boot record area of the memory card to the boot record area of the internal storage. In addition, the electronic device may copy the FAT table stored in the FAT area 102 of the memory card to the FAT area of the internal storage. Thereafter, the electronic device may mount the FAT file system using the generated virtual block device as described in detail below with reference to FIG. 1A.

[0023] When a memory card is inserted into an existing electronic device and the existing electronic device executes a FAT file system, the FAT area 102 of the memory card reads data from the cluster heap area 103 or stores data in the cluster heap area 103. However, an external memory card using a TLC(Triple Level Cell) NAND has lower input/output performance than an internal memory card, such as an eMMC (embedded Multi Media Card) using SLC (Single Level Cell) or MLC (Multi Level Cell). In particular, the random write performance thereof is one-fifth to twentieth as compared to that of the internal storage, and therefore, the external memory card is very inefficient.

[0024] However, the electronic device according to the present disclosure generates the virtual block device and mounts the FAT file system, thereby resolving the above problem. Specifically, in the electronic device, according to aspects of the present disclosure, reading and changing of the file cluster chain may be performed through input/output to/from the internal storage, and file data is processed through the memory card, thereby reducing the number of random inputs/outputs of the memory card. That is, since a high-performance internal storage performs reading and changing of the file cluster chain, input/output performance may be improved compared to a method for managing a FAT file system in a memory card according to the related art. The internal storage having excellent lifetime processes random write generated in the memory card, thereby improving the lifetime of the memory card.

[0025] FIGS. 2A and 2B are diagrams illustrating an example in which a FAT file system using a virtual block device is un-mounted according to aspects of the present disclosure. First, an electronic device may receive an instruction for safely removing an inserted memory card. Specifically, the electronic device may receive an instruction for safely removing an inserted memory card from a predetermined slot of the electronic device without forcibly disconnecting the memory card from the slot.

[0026] Thereafter, the electronic device may identify that the FAT file system using the virtual block device is un-mounted as illustrated in FIG. 2A. Specifically, the electronic device may copy a backup boot record updated and stored in the boot record area 201 of the virtual block device and a FAT table updated and stored in the FAT area 202 of the virtual block device to the boot record area 204 and FAT area 205 of the internal storage respectively, and may copy a data cluster updated and stored in the cluster heap area 203 of the virtual block device to the cluster heap area 208 of the memory card.

[0027] Thereafter, the electronic device may copy the backup boot record stored in the boot record area 204 of the internal storage and the FAT table stored in the FAT area 205 to the memory card. Specifically, the electronic device may copy the backup boot record stored in the boot record area 204 of the internal storage and the FAT table stored in the FAT area 205 to the boot record area 206 and cluster heap area 208 of the memory card respectively.

[0028] As described above, when the electronic device receives the instruction for safely removing the inserted memory card, the electronic device may copy information updated and stored in the virtual block device to the memory card. Similarly, when the electronic device does not receive the instruction for safely removing the inserted memory card, the electronic device may not copy information updated and stored in the virtual block device to the memory card.

[0029] FIGS. 3A and 3B are diagrams illustrating an aspect in which a fast mode is manually selected in an electronic device according to aspects of the present disclosure. First, when the backup boot record is not stored in the boot record area of the internal storage included in the electronic device or the backup boot record is not identical to the boot record stored in the boot record area of the memory card even through the backup boot record is stored, the electronic device may generate a virtual block device through a process which will be described below.

[0030] First, the electronic device may determine whether an instruction for performing a fast mode is received. Specifically, the electronic device may display information indicating whether to execute a FAT file system using a virtual block device on the touchscreen of the electronic device and determine whether the instruction for performing the fast mode is received. Herein, the fast mode may be a mode for executing the FAT file system using the generated virtual block device.

[0031] As illustrated in FIG. 3A, when the electronic device receives the instruction for executing the FAT file system in the fast mode, the electronic device may determine whether a backup boot record that is different from that of a currently inserted memory card is stored in the boot record area of the internal storage.

[0032] Thereafter, when the electronic device identifies that the backup boot record of another memory card is stored in the boot record area of the internal storage, the electronic device may display a notification message on the touchscreen of the electronic device. Specifically, the electronic device may remove the backup boot record of the other memory card stored in the boot record area of the internal storage and display the notification message indicating that the boot record of the currently inserted memory card is to be copied and the FAT table of the currently inserted memory card is to be copied to the FAT area of the internal storage.

[0033] Thereafter, the electronic device may copy the boot record stored in the boot record area of the memory card and the FAT table stored in the FAT area of the memory card to the internal storage. That is, the electronic device may copy the boot record stored in the boot record area of the memory card to the boot record area of the internal storage. In addition, the electronic device may copy the FAT table stored in the FAT area of the memory card to the FAT area of the internal storage. Thereafter, the electronic device may mount a FAT file system using the generated virtual block device.

[0034] FIGS. 4A and 4B are diagrams illustrating an example in which a normal mode is selected in an electronic device according to aspects of the present disclosure. First, when the backup boot record is not stored in the boot record area of the internal storage included in the electronic device or the backup boot record is not identical to the boot record stored in the boot record area of the memory card even through the backup boot record is stored, the electronic device may execute a FAT file system through a process which will be described below.

[0035] First, the electronic device may determine whether an instruction for performing a fast mode is received. Specifically, the electronic device may display information indicating whether to execute a FAT file system using a virtual block device on the touchscreen of the electronic device and determine whether the instruction for performing the fast mode is received.

[0036] When the electronic device does not receive the instruction for executing a FAT file system in a fast mode is received as illustrated in FIG. 4A, the electronic device may execute the FAT file system in a normal mode. for example, the normal mode may be a mode for executing the FAT file system without generating a virtual block device.

[0037] Thereafter, the electronic device may examine an error in the FAT file system before the execution of the FAT file system using the memory card as illustrated in FIG. 4B. When the electronic device detects an error in the FAT file system, the electronic device may first correct the detected error and then mount the FAT file system using the memory card.

[0038] That is, the electronic device according to this example provides two modes, that is, the fast mode and the normal mode and enables the selection of any one of the two modes by a user before mounting the FAT file system.

[0039] FIGS. 5A and 5B are diagrams illustrating an example of a technique for the improving the security of a memory card in an electronic device according to aspects of the present disclosure. First, referring to FIG. 5A, it is assumed that a memory card 503 is inserted into a slot 502 provided at a predetermined location of a first electronic device 501, a virtual block device is generated, and a FAT file system is executed.

[0040] In this example, when the first electronic device 501 mounts the FAT file system using the generated virtual block device, the first electronic device 501 may delete data in the inserted memory card 503. Specifically, when the first electronic device 501 mounts the FAT file system in a fast mode, the first electronic device 501 may delete a boot record stored in the boot record area of the inserted memory card 503 and a FAT table stored in the FAT area of the inserted memory card 503.

[0041] When the first electronic device 501 receives an instruction for safely removing the inserted memory card 503, the first electronic device 501 may identify that the FAT file system using the virtual block device is un-mounted. Specifically, the first electronic device 501 may copy the backup boot record updated and stored in the boot record area of the virtual block device and the FAT table updated and stored in the FAT area of the virtual block device to the boot record area and FAT area of an internal storage. In addition, the first electronic device 501 may copy a data cluster updated and stored in the cluster heap area of the virtual block device to the cluster heap area of the memory card 503.

[0042] When the first electronic device 501 does not receive the instruction for safely removing the inserted memory card 503, the first electronic device 501 may not identify that the FAT file system using the virtual block device is un-mounted. When the first electronic device 501 does not receive the instruction for safely removing the inserted memory card 503, the first electronic device 501 may not copy information updated and stored in the virtual block device to the memory card 503.

[0043] Thereafter, when the memory card 503 separated from the predetermined slot 502 of the first electronic device 501 is inserted into a predetermined slot 505 of a second electronic device 504, the second electronic device 504 may operate differently according to the above-described two cases.

[0044] First, when the memory card 503 is safely removed from the first electronic device 501, the second electronic device 504 may execute the FAT file system in the fast mode or normal mode according to whether the memory card 503 is initially inserted or according to a user's selection.

[0045] However, when the memory card 503 is not safely removed from the first electronic device 501, the second electronic device 504 may not execute the FAT file system using the inserted memory card 503. The reason for this is that, when the memory card 503 is inserted into the first electronic device 501 and the FAT file system is executed in the fast mode, the boot record stored in the boot record area of the memory card 503 and the FAT table stored in the FAT area of the memory card 503 have been deleted.

[0046] Therefore, when the memory card 503 is safely removed from the first electronic device 501, the second electronic device 504 that is another electronic device may generate a virtual block device using the inserted memory card 503 and execute the FAT file system in the fast mode. However, when the memory card 503 is forcibly disconnected from the first electronic device 501 not removed safely, the second electronic device 504 that is another electronic device does not recognize the boot record and FAT table of the inserted memory card 503, thereby ensuring an individual's data privacy.

[0047] FIG. 6 is a flowchart of an example of a process for mounting a FAT file system in an electronic device, according to aspects of the present disclosure. According to the process, in step 601, the electronic device may identify that a memory card is inserted into a predetermined slot. Herein, the electronic device may include at least one slot at a predetermined location. That is, in the electronic device according to the present disclosure, at least one memory card may be inserted to at least one slot provided at a predetermined location of the electronic device.

[0048] In step 602, the electronic device may determine whether a backup boot record is stored in the boot record area of an internal storage. Specifically, the electronic device may determine whether the boot record of the memory card is baked up in the boot record area of the internal storage to determine whether the memory card had been inserted previously. When the memory card is inserted into the predetermined slot of the electronic device, the electronic device backs up the boot record of the inserted memory card to store the backup boot record in the boot record area of the internal storage of the electronic device.

[0049] When the electronic device determines that the backup boot record is stored in the boot record area of the internal storage in the above-described determination step 602, the electronic device may determine whether the backup boot record is identical to the boot record stored in the boot record area of the memory card in step 603. Specifically, the electronic device may determine whether the backup boot record is identical to the boot record stored in the boot record area of the memory card to determine whether the memory card that is currently inserted had been inserted previously.

[0050] When the electronic device determines that the backup boot record is identical to the boot record stored in the boot record area of the memory card in the above-described determination step 603, the electronic device may generate a virtual block device including the FAT area of the internal storage and the cluster heap area of the inserted memory card in step 604. Specifically, the boot record area and FAT area of the virtual device may be areas which have been synchronized with the boot record area and FAT area of the internal storage respectively, and the cluster heap area of the virtual device may be an area which has been synchronized with the cluster heap area of the memory card.

[0051] In step 605, the electronic device may mount a FAT file system using the generated virtual block device. That is, the boot record area and FAT area of the virtual block device may operate under the control of the internal storage included in the electronic device. Thereafter, the FAT file system may be managed in which the FAT area of the generated virtual block device reads data from the cluster heap area of the virtual block device and stores data in the cluster heap area.

[0052] When the electronic device determines that the backup boot record is not stored in the boot record area of the internal storage or that the backup boot record is not identical to the boot record stored in the boot record area of the memory card, the electronic device may determine whether a fast mode is selected in step 606. For example, the fast mode may be a mode for executing the FAT file system using the generated virtual block device.

[0053] In instances in which the electronic device determines that the fast mode is selected in the above-described determination step 606, when the backup boot record of another memory card is stored in the boot record area of the internal storage, the electronic device may display a message indicating that the boot record of the inserted memory card is to be copied and the FAT table of the currently inserted memory card is to be copied in step 607. Specifically, the electronic device may remove the backup boot record of the other memory card stored in the boot record area of the internal storage and display the notification message indicating that the boot record of the currently inserted memory card is to be copied and that the FAT table of the currently inserted memory card is to be copied to the FAT area of the internal storage.

[0054] In step 608, the electronic device may copy the boot record stored in the boot record area of the memory card and the FAT table stored in the FAT area of the memory card to the internal storage respectively. Specifically, the electronic device may copy the boot record stored in the boot record area of the memory card and the FAT table stored in the FAT area of the memory card to the boot record area and FAT area of the internal storage respectively.

[0055] Thereafter, the process may proceed to step 604.

[0056] When the electronic device determines that the fast mode it not selected in the above-described determination step 606, the process may proceed to step 605.

[0057] FIG. 7 is a flowchart of an example of a process for un-mounting a FAT file system, according to aspects of the present disclosure. According to the process, in step 701, the electronic device may receive an instruction for safely removing an inserted memory card. Specifically, the electronic device may receive the instruction for safely removing the inserted memory card. For example, the memory card may be considered may be considered safely removed when the memory card is not forcibly disconnected before confirming memory card has been un-mounted.

[0058] In step 702, the electronic device may identify that a FAT file system using a virtual block device is un-mounted. Specifically, the first electronic device may copy the backup boot record updated and stored in the boot record area of the virtual block device and the FAT table updated and stored in the FAT area of the virtual block device to the boot record area and FAT area of an internal storage, respectively. In addition, the first electronic device may copy a data cluster updated and stored in the cluster heap area of the virtual block device to the cluster heap area of the memory card.

[0059] In step 703, the electronic device may copy the backup boot record stored in the boot record area of the internal storage and the FAT table stored in the FAT area of the internal storage to the memory card. Specifically, when the electronic device receives the instruction for safely removing the memory card, the electronic device synchronizes the internal storage with the memory card, thereby allowing the memory card to be used in another electronic device after removal of the memory card from the electronic device.

[0060] In step 704, the electronic device may identify that the memory card is disconnected from the predetermined slot.

[0061] FIG. 8 is a flowchart of an example of a process for mounting a file system using a virtual block device in an electronic device, according to aspects of the present disclosure. According to the process, in step 801, the electronic device may generate a virtual block device including a FAT area located on an internal storage and a cluster heap area located on a memory card. Specifically, the electronic device may generate the FAT area of the virtual device from the FAT area of the internal storage and generate the cluster heap area of the virtual device from the cluster heap area of the memory card. That is, the boot record area and FAT area of the virtual device may be areas which have been synchronized with the boot record area and FAT area of the internal storage respectively, and the cluster heap area of the virtual device may be an area which has been synchronized with the cluster heap area of the memory card.

[0062] In step 802, the electronic device may mount a FAT file system using the generated virtual block device. Specifically, the electronic device may copy a backup boot record updated and stored in the boot record area of the virtual block device and a FAT table updated and stored in the FAT area of the virtual block device to the boot record area and FAT area of the internal storage respectively, and may copy a data cluster updated and stored in the cluster heap area of the virtual block device to the cluster heap area of the memory card.

[0063] FIG. 9 is a block diagram illustrating an example of a configuration of an electronic device, according to aspects of the present disclosure. Such an electronic device 900 may be a portable electronic device, and examples thereof may include a portable terminal, a mobile phone, a mobile pad, a media player, a tablet computer, a handheld computer, or a Personal Digital Assistant (PDA). In addition, the electronic device may be any one portable electronic device including a device having two or more functions among the above-described devices.

[0064] The electronic device 900 includes a memory 910, a processor module 920, a first wireless communication subsystem 930, a second wireless communication subsystem 931, an external port 960, an audio subsystem 950, a speaker 951, a microphone 952, an input/output (I/O) system 970, a touchscreen 980, and other input/control devices 990. The memory unit 910 and the external port 960 may be provided in plurality.

[0065] The processor module 920 may include a memory interface 921, at least one processor 922, and a peripheral interface 923. In some cases, the processor module 920 will also be referred to as a processor. According to the present disclosure, the processor module 920 may generate a virtual block device including a FAT area of an internal storage and a cluster heap area of an inserted memory card and mount a FAT file system using the generated virtual block device. In addition, the processor module 920 may determine whether a backup boot record is stored in the boot record area of the internal storage, and determine whether the backup boot record is identical to a boot record stored in the boot record area of the inserted memory card when the backup boot record is stored. Therefore, the processor module 920 may identify that the backup boot record stored in the boot record area of the internal storage is identical to the boot record stored in the boot record area of the memory card. In addition, the processor module 920 may examine an error in the FAT file system before executing the FAT file system using the virtual block device. When the processor module 920 detects an error in the FAT file system, the processor module 920 may correct the detected error and mount the FAT file system using the virtual block device. The processor module 920 may delete the boot record stored in the boot record area of the inserted memory card and the FAT table stored in the FAT area of the inserted memory card. In addition, the processor module 920 may read or store data from or in the cluster heap area of the virtual block device by the FAT area of the generated virtual block device. The processor module 920 may identify that the backup boot record is not stored in the boot record area of the internal storage or that the backup boot record is not identical to the boot record stored in the boot record area of the memory card. The processor module 920 may determine whether an instruction for executing the FAT file system using the generated virtual block device and, when the instruction is received, copy a boot record stored in the boot record area of the memory card and a FAT table stored in the FAT area of the memory card to the internal storage respectively. In this case, the processor module 920 may identify that the backup boot record obtained when the boot record of the memory card is backed up is stored in the boot record area of the internal storage and identify that the FAT table of the memory card is stored in the FAT area of the internal storage. The processor module 920 may identify that the backup boot record of another memory card is stored in the boot record area of the internal storage and, when the instruction is not received, examine an error in the FAT file system before executing the FAT file system using the memory card. In this case, when an error in the FAT file system is detected, the processor module 920 may correct the error and mount the FAT file system using the memory card. The processor module 920 may identify that the FAT file system using the virtual block device is un-mounted, copy the backup boot record stored in the boot record area of the internal storage and the FAT table stored in the FAT area of the internal storage to the boot record area and FAT area of the memory card respectively, and identify that the memory card is disconnected from the predetermined slot. Specifically, the processor module 920 may copy a backup boot record updated and stored in the boot record area of the virtual block device and a FAT table updated and stored in the FAT area of the virtual block device to the boot record area and FAT area of the internal storage respectively, and may copy a data cluster updated and stored in the cluster heap area of the virtual block device to the cluster heap area of the memory card.

[0066] The processor module 920 executes various software programs to perform various functions for the electronic device 900, and performs processes and controls for voice communication and data communication. In addition to these general functions, the processor 922 executes a specific software module (instruction set) stored in the memory 910 and performs various specific functions corresponding to the software module. That is, the processor 922 performs methods according to aspects of the present disclosure in cooperation with software modules stored in the memory 910.

[0067] The processor 922 may include one or more of data processor, image processor, codec, and/or any other suitable type of processing circuitry. One or more of the data processor, the image processor, or the codec may be configured separately or integrated together. In addition, the processor 922 may be configured by a plurality of processors performing different functions. The peripheral interface 923 connects various peripheral devices and the I/O subsystem 970 of the electronic device 900 to the processor 922 and the memory 910 (through the memory interface).

[0068] The various elements of the electronic device 900 may be coupled by at least one communication bus (not illustrated) or stream line (not illustrated).

[0069] The external port 960 is used to connect a portable electronic device (not illustrated) to other electronic devices directly or indirectly through a network (for example, Internet, Intranet, or wireless LAN). The external port 960 may be, for example, a universal serial bus (USB) port or a FireWire port, but is not limited thereto.

[0070] A motion sensor 991 and an optical sensor 992 may be connected to the peripheral interface 923 to enable various functions. For example, the motion sensor 991 and the optical sensor 992 may be connected to the peripheral interface 923 to detect a motion of the electronic device and detect light from the outside. In addition, other sensors, such as a positioning system, a temperature sensor, and a biosensor, may be connected to the peripheral interface 923 to perform relevant functions.

[0071] A camera subsystem 993 may perform camera functions such as photographing and video clip recording.

[0072] The optical sensor 992 may include a CCD (charged coupled device) or a CMOS (complementary metal-oxide semiconductor) device.

[0073] A communication function is performed through one or more wireless communication subsystems 930 and 931. The wireless communication subsystems 930 and 931 may include a radio frequency (RF) receiver and transceiver and/or an optical (e.g., infrared) receiver and transceiver. The first wireless communication subsystem 930 and the second wireless communication subsystem 931 may be divided according to communication networks through which the electronic device 900 performs communication. For example, the communication networks may include, but not limited to, a GSM (Global System for Mobile Communication) network, an EDGE (Enhanced Data GSM Environment) network, a CDMA (Code Division Multiple Access) network, a W-CDMA (W-Code Division Multiple Access) network, an LTE (Long Term Evolution) network, an OFDMA (Orthogonal Frequency Division Multiple Access) network, a WiFi (Wireless Fidelity) network, a WiMax network, and/or a Bluetooth network. The first wireless communication subsystem 930 and the second wireless communication subsystem 931 may be integrated with each other as one wireless communication subsystem.

[0074] The audio subsystem 950 is connected to the speaker 951 and the microphone 952 to perform audio stream input/output functions such as voice recognition, voice replication, digital recording, and telephone functions. That is, the audio subsystem 950 communicates with the user through the speaker 951 and the microphone 952. The audio subsystem 950 receives a data stream through the peripheral interface 923 of the processor module 920 and converts the received data stream into an electric stream. The electric stream is transmitted to the speaker 951. The speaker 951 converts the electric stream into sound waves audible by humans and outputs the same. The microphone 952 converts sound waves received from humans or other sound sources into an electric stream. The audio subsystem 950 receives the electric stream from the microphone 952. The audio subsystem 950 converts the received electric stream into an audio data stream and transmits the audio data stream to the peripheral interface 923. The audio subsystem 950 may include an attachable/detachable earphone, a headphone, or a headset.

[0075] The I/O subsystem 970 may include a touchscreen controller 971 and/or an other input controller 972. The touchscreen controller 971 may be connected to the touchscreen 980. The touchscreen 980 and the touchscreen controller 971 may detect a touch, a motion, or a stop thereof by using multi-touch detection technologies including, but not limited to, a proximity sensor array or other elements, as well as capacitive, resistive, infrared and surface acoustic wave technologies for determining one or more touch points on the touchscreen 980. The other input controller 972 may be connected to the other input/control devices 990. The other input/control device 990 may include one or more buttons, a rocker switch, a thumb wheel, a dial, a stick, and/or a pointer device such as a stylus.

[0076] The touchscreen 980 provides an I/O interface between the electronic device 900 and the user. That is, the touchscreen 980 transmits a user touch input to the electronic device 900. Also, the touchscreen 980 is a medium that displays an output from the electronic device 900 to the user. That is, the touchscreen 980 displays a visual output to the user. The visual output may be represented by a text, a graphic, a video, or a combination thereof.

[0077] The touchscreen 980 may use various display technologies. For example, the touchscreen 980 may use, but is not limited to, an LCD (liquid crystal display), an LED (Light Emitting Diode), an LPD (light emitting polymer display), an OLED (Organic Light Emitting Diode), an AMOLED (Active Matrix Organic Light Emitting Diode), or an FLED (Flexible LED). The touchscreen 980 of the present disclosure may display a notification message indicating that the stored backup boot record of another memory card is to be deleted and the boot record of the currently inserted memory card is to be copied and that the FAT table of the currently inserted memory card is to be copied. In addition, the touchscreen 980 may receive an instruction for safely removing an inserted memory card.

[0078] The memory 910 may be connected to the memory interface 921. The memory unit 910 may include one or more high-speed random-access memories (RAMs) such as magnetic disk storage devices, one more nonvolatile memories, one or more optical storage devices, and/or one or more flash memories (for example, NAND flash memories or NOR flash memories).

[0079] The memory 910 stores software. Software components include an operation system (OS) module 911, a communication module 912, a graphic module 913, a user interface (UI) module 914, a codec module 915, a camera module 916, and one or more application modules 917. Also, since the module that is a software component may be represented as a set of instructions, the module may be referred to as an instruction set. The module may also be referred to as a program. The OS software 911 (for example, WINDOWS, LINUX, Darwin, RTXC, UNIX, OS X, or an embedded OS such as VxWorks) includes various software components for controlling general system operations. For example, general system operation controls may include memory control/management, storage hardware (device) control/management, and power control/management. The OS software also performs a function for enabling smooth communication between various hardware components (devices) and software components (modules).

[0080] The communication module 912 may enable communication with other electronic devices (such as computers, servers, and/or portable terminals) through the wireless communication subsystems 930 and 931 or the external port 960.

[0081] The graphic module 913 includes various software components for providing and displaying graphics on the touchscreen 980. The graphics include texts, web pages, icons, digital images, videos, and animations.

[0082] The UI module 914 includes various software components related to an user interface. Through the user interface module, the electronic device provides information about how the state of the user interface changes and/or information about under what condition the state of the user interface changes.

[0083] The codec module 915 may include software components related to video file encoding/decoding. The codec module may include a video stream module such as an MPEG module or an H204 module. Also, the codec module may include various audio file codec modules such as AAA, AMR, and WMA. Also, the codec module 915 includes an instruction set corresponding to implementation methods of the present disclosure.

[0084] The camera module 916 may include camera-related software components that enable camera-related processes and functions.

[0085] The application module 917 includes a browser application, an e-mail application, an instant message application, a word processing application, a keyboard emulation application, an address book application, a touch list application, a widget application, a digital right management (DRM) application, a voice recognition application, a voice replication application, a position determining function application, a location-based service (LBS) application, and the like.

[0086] In addition, various functions of the electronic device 900 according to the present disclosure as described above and as described below may be implemented by hardware and/or software including one or more stream processings and/or an application-specific integrated circuit (ASIC) and/or a combination thereof.

[0087] While the disclosure has been shown and described with reference to certain exemplary aspects thereof, it will be understood by those skilled in the art that various changes in form and details may be made therein without departing from the scope of the disclosure as defined by the appended claims. Therefore, the scope of the disclosure is defined not by the detailed description of the disclosure but by the appended claims, and all differences within the scope will be construed as being included in the present disclosure.

[0088] The processes provided with respect to FIGS. 6-8 are provided as examples only. Any of the steps in these processes may be performed concurrently, in a different order, or altogether omitted.

[0089] The above-described aspects of the present disclosure can be implemented in hardware, firmware or via the execution of software or computer code that can be stored in a recording medium such as a CD ROM, a Digital Versatile Disc (DVD), a magnetic tape, a RAM, a floppy disk, a hard disk, or a magneto-optical disk or computer code downloaded over a network originally stored on a remote recording medium or a non-transitory machine readable medium and to be stored on a local recording medium, so that the methods described herein can be rendered via such software that is stored on the recording medium using a general purpose computer, or a special processor or in programmable or dedicated hardware, such as an ASIC or FPGA. As would be understood in the art, the computer, the processor, microprocessor controller or the programmable hardware include memory components, e.g., RAM, ROM, Flash, etc. that may store or receive software or computer code that when accessed and executed by the computer, processor or hardware implement the processing methods described herein. In addition, it would be recognized that when a general purpose computer accesses code for implementing the processing shown herein, the execution of the code transforms the general purpose computer into a special purpose computer for executing the processing shown herein. Any of the functions and steps provided in the Figures may be implemented in hardware, software or a combination of both and may be performed in whole or in part within the programmed instructions of a computer.


Claims

1. A method comprising:

identifying (601) that a removable memory card is inserted into a predetermined slot of an electronic device;

detecting (602), upon insertion of the memory card into the electronic device, whether a backup boot record is stored in the boot record area (104) of the internal storage; and

determining (606) if a fast mode is selected;

wherein if the fast mode is selected the method further comprises:

copying (608) a backup boot record of a boot record area (101) and a file allocation table of a file allocation table area (102) in the memory card to a boot record area (104) and a file allocation table area (105) located in an internal storage located in the electronic device;

generating (604) a virtual block device that comprises the file allocation table area (107), the backup boot record, and a cluster heap area (108), wherein the file allocation table area (107) is synchronized with the file allocation table area (105) located in the internal storage of the electronic device, and the cluster heap area (108) is synchronized with the cluster heap area (103) in the memory card; and

mounting (605) a file system of the memory card using the generated virtual block device;

wherein the fast mode is a mode for executing the file system of the memory card using the generated virtual block device.


 
2. The method of claim 1, further comprising detecting (603), upon insertion of the memory card into the electronic device, whether a backup boot record stored in the boot record area (104) of the internal storage matches a boot record stored in the boot record area (101) of the memory card, and only performing the copying (608) if they do not match.
 
3. The method of claim 1, wherein mounting (605) the file system using the generated virtual block device comprises:

detecting whether an error is present in the file system before the file system is mounted; and

when the error is detected, correcting the error before the file system is mounted.


 
4. The method of claim 1, further comprising deleting a boot record stored in the boot record area (101) of the inserted memory card and a file allocation table stored in the file allocation table area (102) of the inserted memory card.
 
5. The method of claim 1, further comprising reading or storing, from or in a file allocation table area (107) of the generated virtual block device, data from or in a cluster heap area (108) of the virtual block device.
 
6. The method of claim 1, further comprising outputting an indication if (i) a backup boot record is not stored in a boot record area (104) of the internal storage or (ii) a backup boot record stored in the boot record area (104) of the internal storage is not identical to a boot record stored in a boot record area (101) of the memory card.
 
7. The method of claim 6, further comprising:
if the indication is output, detecting (606) whether an instruction is received for mounting the file system, and only performing the copying (608) if the instruction is received.
 
8. The method of claim 7, further comprising:

detecting (603) that a backup boot record of another memory card is stored in the boot record area (104) of the internal storage; and

outputting (607) an indication that the backup boot record of the other memory card is to be deleted.


 
9. The method of claim 7, further comprising:

detecting an error in the file system before the file system is mounted; and

when the error is detected, correcting the error before mounting the file system.


 
10. The method of claim 1, further comprising:
when a command for removing the inserted memory card is received, copying (703) the backup boot record stored in a boot record area (104) of the internal storage and the file allocation table stored in the file allocation table area (105) of the internal storage to the boot record area (101) and the file allocation table area (102) of the memory card, respectively, the copying (703) being performed after the file system using the virtual block device is un-mounted (702).
 
11. The method of claim 10, wherein un-mounting (702) the file system comprises:

copying a backup boot record updated and stored in a boot record area of the virtual block device (106) and a FAT table updated and stored in a FAT area (107) of the virtual block device to the boot record area (101) and FAT area (102) of the memory card respectively; and

copying a data cluster stored in a cluster heap area (108) of the virtual block device to the cluster heap area (103) of the memory card.


 
12. An electronic device comprising an internal storage (910) and a processing circuitry (920) configured to:

identify (601) that a removable memory card is inserted into a predetermined slot of an electronic device;

detect (602), upon insertion of the memory card into the electronic device, whether a backup boot record is stored in the boot record area (104) of the internal storage; and

determine (606) if a fast mode is selected;

wherein if the fast mode is selected the electronic device is further configured to:

copy (608) a backup boot record of a boot record area (101) and a file allocation table of a file allocation table area (102) in the memory card to a boot record area (104) and a file allocation table area (105) in an internal storage located in the electronic device;

generate (801) a virtual block device including the file allocation table area (107), the backup boot record, and a cluster heap area (108),wherein the file allocation table area (107) is synchronized with the file allocation table area (105) located in the internal storage of the electronic device, and the cluster heap area (108) is synchronized with the cluster heap area (103) in the memory card; and

mount (802) a file system of the memory card using the generated virtual block device;

wherein the fast mode is a mode for executing the file system of the memory card using the generated virtual block device.


 
13. A computer program product comprising computer program code means adapted to perform all the steps of any one of the method claims 1 to 11 when the computer program is run on a computer.
 


Ansprüche

1. Verfahren, umfassend:

Identifizieren (601), dass eine entfernbare Speicherkarte in einen vorbestimmten Steckplatz eines elektronischen Geräts eingesetzt ist;

Erkennen (602), bei Einsetzen der Speicherkarte in das elektronische Gerät, ob ein Backup-Boot-Record in dem Boot-Record-Bereich (104) des internen Speichers gespeichert ist; und

Bestimmen (606), ob ein schneller Modus ausgewählt ist;

wobei, wenn der schnelle Modus ausgewählt ist, das Verfahren ferner Folgendes umfasst:

Kopieren (608) eines Backup-Boot-Records eines Boot-Record-Bereichs (101) und einer Dateizuordnungstabelle eines Dateizuordnungstabellen-Bereichs (102) in der Speicherkarte in einen Boot-Record-Bereich (104) und einen Dateizuordnungstabellen-Bereich (105), die sich in einem internen Speicher befinden, der sich in dem elektronischen Gerät befindet;

Erzeugen (604) einer virtuellen Blockvorrichtung, die den Dateizuordnungstabellen-Bereich (107), den Backup-Boot-Record und einen Cluster-Heap-Bereich (108) umfasst, wobei der Dateizuordnungstabellen-Bereich (107) mit dem Dateizuordnungstabellen-Bereich (105) synchronisiert ist, der sich in dem internen Speicher der elektronischen Vorrichtung befindet, und der Cluster-Heap-Bereich (108) mit dem Cluster-Heap-Bereich (103) in der Speicherkarte synchronisiert ist; und

Mounten (605) eines Dateisystems der Speicherkarte unter Verwendung der erzeugten virtuellen Blockvorrichtung;

wobei der schnelle Modus ein Modus zum Ausführen des Dateisystems der Speicherkarte unter Verwendung der erzeugten virtuellen Blockvorrichtung ist.


 
2. Verfahren nach Anspruch 1, ferner umfassend ein Erkennen (603), bei Einsetzen der Speicherkarte in die elektronische Vorrichtung, ob ein in dem Boot-Record-Bereich (104) des internen Speichers gespeicherter Backup-Boot-Record mit einem in dem Boot Record-Bereich (101) der Speicherkarte gespeicherten Boot-Record übereinstimmt, und Ausführen des Kopierens (608) nur, wenn sie nicht übereinstimmen.
 
3. Verfahren nach Anspruch 1, wobei ein Mounten (605) des Dateisystems unter Verwendung der erzeugten virtuellen Blockvorrichtung Folgendes umfasst:

Erkennen, ob ein Fehler in dem Dateisystem vorhanden ist, bevor das Dateisystem gemountet wird; und

wenn der Fehler erkannt wird, Korrigieren des Fehlers, bevor das Dateisystem gemountet wird.


 
4. Verfahren nach Anspruch 1, ferner umfassend ein Löschen eines Boot-Records, das in dem Boot-Record-Bereich (101) der eingesetzten Speicherkarte gespeichert ist, und einer Dateizuordnungstabelle, die in dem Dateizuordnungstabellen-Bereich (102) der eingesetzten Speicherkarte gespeichert ist.
 
5. Verfahren nach Anspruch 1, ferner umfassend ein Lesen oder Speichern von Daten aus oder in einem Dateizuordnungstabellen-Bereich (107) der erzeugten virtuellen Blockvorrichtung aus oder in einem Cluster-Heap-Bereich (108) der virtuellen Blockvorrichtung.
 
6. Verfahren nach Anspruch 1, ferner umfassend ein Ausgeben einer Angabe, wenn (i) ein Backup-Boot-Record nicht in einem Boot-Record-Bereich (104) des internen Speichers gespeichert ist, oder (ii) ein Backup-Boot-Record, der in dem Boot-Record-Bereich (104) des internen Speichers gespeichert ist, nicht mit einem Boot-Record identisch ist, der in einem Boot-Record-Bereich (101) der Speicherkarte gespeichert ist.
 
7. Verfahren nach Anspruch 6, ferner umfassend:
wenn die Angabe ausgegeben wird, Erkennen (606), ob eine Anweisung zum Mounten des Dateisystems empfangen wird, und Ausführen des Kopierens (608) nur, wenn die Anweisung empfangen wird.
 
8. Verfahren nach Anspruch 7, ferner umfassend:

Erkennen (603), dass ein Backup-Boot-Record einer anderen Speicherkarte in dem Boot-Record-Bereich (104) des internen Speichers gespeichert ist; und

Ausgeben (607) einer Angabe, dass das Backup-Boot-Record der anderen Speicherkarte gelöscht werden soll.


 
9. Verfahren nach Anspruch 7, ferner umfassend:

Erkennen eines Fehlers in dem Dateisystem, bevor das Dateisystem gemountet wird; und

wenn der Fehler erkannt wird, Korrigieren des Fehlers vor einem Mounten des Dateisystems.


 
10. Verfahren nach Anspruch 1, ferner umfassend:
wenn ein Befehl zum Entfernen der eingesetzten Speicherkarte empfangen wird, Kopieren (703) des in einem Boot-Record-Bereich (104) des internen Speichers gespeicherten Backup-Boot-Records und der in dem Dateizuordnungstabellen-Bereich (105) des internen Speichers gespeicherten Dateizuordnungstabelle in den Boot-Record-Bereich (101) bzw. den Dateizuordnungstabellen-Bereich (102) der Speicherkarte, wobei das Kopieren (703) ausgeführt wird, nachdem das Dateisystem, das die virtuelle Blockvorrichtung verwendet, unmountet (702) wurde.
 
11. Verfahren nach Anspruch 10, wobei ein Unmounten (702) des Dateisystems Folgendes umfasst:

Kopieren eines Backup-Boot-Records, der in einem Boot-Record-Bereich des virtuellen Blockgeräts (106) aktualisiert und gespeichert ist, und einer FAT-Tabelle, die in einem FAT-Bereich (107) des virtuellen Blockgeräts aktualisiert und gespeichert ist, in den Boot-Record-Bereich (101) bzw. den FAT-Bereich (102) der Speicherkarte; und

Kopieren eines Daten-Clusters, der in einem Cluster-Heap-Bereich (108) des virtuellen Blockgeräts gespeichert ist, in den Cluster-Heap-Bereich (103) der Speicherkarte.


 
12. Elektronische Vorrichtung, umfassend einen internen Speicher (910) und eine Verarbeitungsschaltung (920), die zu Folgendem konfiguriert ist:

Identifizieren (601), dass eine entfernbare Speicherkarte in einen vorbestimmten Steckplatz eines elektronischen Geräts eingesetzt ist;

Erkennen (602), bei Einsetzen der Speicherkarte in das elektronische Gerät, ob ein Backup-Boot-Record in dem Boot-Record-Bereich (104) des internen Speichers gespeichert ist; und

Bestimmen (606), ob ein schneller Modus ausgewählt ist;

wobei, wenn der schnelle Modus ausgewählt ist, die elektronische Vorrichtung ferner zu Folgendem konfiguriert ist:

Kopieren (608) eines Backup-Boot-Records eines Boot-Record-Bereichs (101) und einer Dateizuordnungstabelle eines Dateizuordnungstabellen-Bereichs (102) in der Speicherkarte in einen Boot-Record-Bereich (104) und eines Dateizuordnungstabellen-Bereichs (105) in einen internen Speicher, der sich in dem elektronischen Gerät befindet;

Erzeugen (801) einer virtuellen Blockvorrichtung, die den Dateizuordnungstabellen-Bereich (107), den Backup-Boot-Record und einen Cluster-Heap-Bereich (108) beinhaltet, wobei der Dateizuordnungstabellen-Bereich (107) mit dem Dateizuordnungstabellen-Bereich (105) synchronisiert ist, der sich in dem internen Speicher der elektronischen Vorrichtung befindet, und der Cluster-Heap-Bereich (108) mit dem Cluster-Heap-Bereich (103) in der Speicherkarte synchronisiert ist; und

Mounten (802) eines Dateisystems der Speicherkarte unter Verwendung der erzeugten virtuellen Blockvorrichtung;

wobei der schnelle Modus ein Modus zum Ausführen des Dateisystems der Speicherkarte unter Verwendung der erzeugten virtuellen Blockvorrichtung ist.


 
13. Computerprogrammprodukt, umfassend Computerprogrammcode-Mittel, die angepasst sind, um alle Schritte eines der Verfahrensansprüche 1 bis 11 auszuführen, wenn das Computerprogramm auf einem Computer ausgeführt wird.
 


Revendications

1. Procédé comprenant :

l'identification (601) qu'une carte mémoire amovible est insérée dans une fente prédéfinie d'un dispositif électronique ;

la détection (602), lors de l'insertion de la carte mémoire dans le dispositif électronique, pour savoir si un enregistrement d'amorçage de sauvegarde est stocké dans la zone d'enregistrement d'amorçage (104) du dispositif de stockage interne ; et

la détermination (606) pour savoir si un mode rapide est choisi ;

si le mode rapide est choisi, ledit procédé comprenant en outre :

la reproduction (608) d'un enregistrement d'amorçage de sauvegarde d'une zone d'enregistrement d'amorçage (101) et d'une table d'allocation de fichiers d'une zone de table d'allocation de fichiers (102) dans la carte mémoire sur une zone d'enregistrement d'amorçage (104) et une zone de table d'allocation de fichiers (105) situé dans dispositif de stockage interne situé dans le dispositif électronique ;

la génération (604) d'un dispositif de bloc virtuel qui comprend la zone de table d'allocation de fichiers (107), l'enregistrement d'amorçage de sauvegarde et une zone de tas de grappes (108), ladite zone de table d'allocation de fichiers (107) étant synchronisée avec la zone de table d'allocation de fichiers (105) située dans le dispositif de stockage interne du dispositif électronique, et ladite zone de tas de grappes (108) étant synchronisée avec la zone de tas de grappes (103) dans la carte mémoire ; et

le montage (605) d'un système de fichiers de la carte mémoire à l'aide du dispositif de bloc virtuel généré ;

ledit mode rapide étant un mode permettant d'exécuter le système de fichiers de la carte mémoire à l'aide du dispositif de bloc virtuel généré.


 
2. Procédé selon la revendication 1, comprenant en outre la détection (603), lors de l'insertion de la carte mémoire dans le dispositif électronique, pour savoir si un enregistrement d'amorçage de sauvegarde stocké dans la zone d'enregistrement d'amorçage (104) du dispositif de stockage interne correspond à un enregistrement d'amorçage stocké dans la zone d'enregistrement d'amorçage (101) de la carte mémoire, et n'effectuant la reproduction (608) que s'ils ne correspondent pas.
 
3. Procédé selon la revendication 1, ledit montage (605) du système de fichiers à l'aide du dispositif de bloc virtuel généré comprenant :

la détection pour savoir si une erreur est présente dans le système de fichiers avant que le système de fichiers ne soit monté ; et

lorsque l'erreur est détectée, la correction de l'erreur avant que le système de fichiers ne soit monté.


 
4. Procédé selon la revendication 1, comprenant en outre la suppression d'un enregistrement d'amorçage stocké dans la zone d'enregistrement d'amorçage (101) de la carte mémoire insérée et d'une table d'allocation de fichier stockée dans la zone de table d'allocation de fichier (102) de la carte mémoire insérée.
 
5. Procédé selon la revendication 1, comprenant en outre la lecture ou le stockage, à partir de ou dans une zone de table d'allocation de fichiers (107) du dispositif de bloc virtuel généré, des données à partir de ou dans une zone de tas de grappes (108) du dispositif de bloc virtuel.
 
6. Procédé selon la revendication 1, comprenant en outre l'émission en sortie d'une indication si (i) un enregistrement d'amorçage de sauvegarde n'est pas stocké dans une zone d'enregistrement d'amorçage (104) du dispositif de stockage interne ou (ii) un enregistrement d'amorçage de sauvegarde stocké dans la zone d'enregistrement d'amorçage (104) du dispositif de stockage interne n'est pas identique à un enregistrement d'amorçage stocké dans une zone d'enregistrement d'amorçage (101) de la carte mémoire.
 
7. Procédé selon la revendication 6, comprenant en outre :
si l'indication est émis en sortie, la détection (606) pour savoir si une instruction est reçue pour monter le système de fichiers, et la réalisation de la reproduction (608) uniquement si l'instruction est reçue.
 
8. Procédé selon la revendication 7, comprenant en outre :

la détection (603) qu'un enregistrement d'amorçage de sauvegarde d'une autre carte mémoire est stocké dans la zone d'enregistrement d'amorçage (104) du dispositif de stockage interne ; et

l'émission en sortie (607) d'une indication que l'enregistrement d'amorçage de sauvegarde de l'autre carte mémoire doit être supprimé.


 
9. Procédé selon la revendication 7, comprenant en outre :

la détection d'une erreur dans le système de fichiers avant que le système de fichiers ne soit monté ; et

lorsque l'erreur est détectée, la correction de l'erreur avant le montage du système de fichiers.


 
10. Procédé selon la revendication 1, comprenant en outre :
lorsqu'une commande pour retirer la carte mémoire insérée est reçue, la reproduction (703) de l'enregistrement d'amorçage de sauvegarde stocké dans une zone d'enregistrement d'amorçage (104) du dispositif de stockage interne et de la table d'allocation de fichiers stockée dans la zone de table d'allocation de fichier (105) du dispositif de stockage interne sur la zone d'enregistrement d'amorçage (101) et sur la zone de table d'allocation de fichier (102) de la carte mémoire, respectivement, la reproduction (703) étant effectuée après que le système de fichiers utilisant le dispositif de bloc virtuel est démonté (702).
 
11. Procédé selon la revendication 10, ledit démontage (702) du système de fichiers comprenant :

la reproduction d'un enregistrement d'amorçage de sauvegarde mis à jour et stocké dans une zone d'enregistrement d'amorçage du dispositif de bloc virtuel (106) et d'une table FAT mise à jour et stockée dans une zone FAT (107) du dispositif de bloc virtuel dans la zone d'enregistrement d'amorçage (101) et dans la zone FAT (102) de la carte mémoire respectivement ; et

la reproduction d'une grappe de données stockée dans une zone de tas de grappes (108) du dispositif de bloc virtuel sur la zone de tas de grappes (103) de la carte mémoire.


 
12. Dispositif électronique comprenant un dispositif de stockage interne (910) et un ensemble de circuits de traitement (920) configuré pour :

identifier (601) qu'une carte mémoire amovible est insérée dans une fente prédéfinie d'un dispositif électronique ;

détecter (602), lors de l'insertion de la carte mémoire dans le dispositif électronique, si un enregistrement d'amorçage de sauvegarde est stocké dans la zone d'enregistrement d'amorçage (104) du dispositif de stockage interne ; et

déterminer (606) si un mode rapide est choisi ;

si le mode rapide est choisi, ledit dispositif électronique étant en outre configuré pour :

reproduire (608) un enregistrement d'amorçage de sauvegarde d'une zone d'enregistrement d'amorçage (101) et une table d'allocation de fichier d'une zone de table d'allocation de fichier (102) dans la carte mémoire sur une zone d'enregistrement d'amorçage (104) et une zone de table d'allocation de fichier (105) dans un dispositif de stockage interne situé dans le dispositif électronique ;

générer (801) un dispositif de bloc virtuel comprenant la zone de table d'allocation de fichier (107), l'enregistrement d'amorçage de sauvegarde et une zone de tas de grappe (108), ladite zone de table d'allocation de fichier (107) étant synchronisée avec la zone de table d'allocation de fichier (105) située dans le dispositif de stockage interne du dispositif électronique, et ladite zone de tas de grappes (108) étant synchronisée avec la zone de tas de grappes (103) dans la carte mémoire ; et

monter (802) un système de fichiers de la carte mémoire à l'aide du dispositif de bloc virtuel généré ;

ledit mode rapide étant un mode permettant d'exécuter le système de fichiers de la carte mémoire à l'aide du dispositif de bloc virtuel généré.


 
13. Produit programme informatique comprenant un moyen de code de programme informatique adapté pour effectuer toutes les étapes de l'une quelconque des revendications de procédé 1 à 11 lorsque le programme informatique est exécuté sur un ordinateur.
 




Drawing
































Cited references

REFERENCES CITED IN THE DESCRIPTION



This list of references cited by the applicant is for the reader's convenience only. It does not form part of the European patent document. Even though great care has been taken in compiling the references, errors or omissions cannot be excluded and the EPO disclaims all liability in this regard.

Non-patent literature cited in the description