Sign In to Follow Application
View All Documents & Correspondence

Method And System Providing File System For An Electronic Device Comprising A Composite Memory Device

Abstract: ABSTRACT A method and an electronic device for providing a file system for the electronic device comprising a composite memory device is described. The method comprises organizing at least one Non-Volatile Dual in-line Memory Module-P (NVDIMM-P) of the composite memory device into at least one group based on a location information of the at least one NVDIMM-P. Further, the method comprises creating a single File System Instance (FSI) for each group among the at least one group. FIG. 2

Get Free WhatsApp Updates!
Notices, Deadlines & Correspondence

Patent Information

Application #
Filing Date
05 February 2016
Publication Number
32/2017
Publication Type
INA
Invention Field
COMMUNICATION
Status
Email
patent@bananaip.com
Parent Application
Patent Number
Legal Status
Grant Date
2024-02-02
Renewal Date

Applicants

SAMSUNG R&D Institute India - Bangalore Private Limited
#2870, Phoenix Building, Bagmane Constellation Business Park, Outer Ring Road, Doddanekundi Circle, Marathahalli Post, Bengaluru, Karnataka 560037

Inventors

1. Vishak Guddekoppa
#2870, Phoenix Building, Bagmane Constellation Business Park, Outer Ring Road, Doddanekundi Circle, Marathahalli Post, Bengaluru, Karnataka 560037

Specification

Claims:STATEMENT OF CLAIMS
What is claimed is:
1. A method providing a file system for an electronic device, the method comprising:
organizing at least one Non-Volatile Dual in-line Memory Module-P (NVDIMM-P) of a composite memory device of the electronic device into at least one group based on location information of the at least one NVDIMM-P; and
creating a single File System Instance (FSI) for each group among the at least one group.
2. The method as claimed in claim 1, wherein each of the group among the at least one group comprises at least one NVDIMM-P, wherein the at least one NVDIMM-P comprising a NVDIMM-N and a NVDIMM-F is from at least one channel of the composite memory device.
3. The method as claimed in claim 1, wherein a meta data for the single FSI corresponding to the group is stored in a meta partition of a NVDIMM-F among at least one NVDIMM-F in the group.
4. The method as claimed in claim 3, wherein the meta data in the meta partition of the NVDIMM-F is accessed using a block interface, wherein the block interface is an asynchronous interface providing block level access of the meta partition.
5. The method as claimed in claim 3, wherein a NVDIMM-N area corresponding to the at least one NVDIMM-N of the group is available for user data and the user data is accessed using a store interface, wherein the store interface is a synchronous interface providing byte level access of the NVDIMM-N area.
6. An electronic device for providing a file system, the electronic device comprises a file system module configured to:
organize at least one Non-Volatile Dual in-line Memory Module-P (NVDIMM-P) of a composite memory device of the electronic device into at least one group based on a location information of the at least one NVDIMM-P; and
create a single File System Instance (FSI) for each group among the at least one group.
7. The electronic device as claimed in claim 6, wherein each of the group among the at least one group comprises at least one NVDIMM-P, wherein the at least one NVDIMM-P comprising a NVDIMM-N and a NVDIMM-F is from at least one channel of the composite memory device.
8. The electronic device as claimed in claim 6, wherein the file system module is configured to store a meta data for the single FSI corresponding to the group in a meta partition of a NVDIMM-F among at least one NVDIMM-F in the group.
9. The electronic device as claimed in claim 8, wherein the file system module is configured to access the meta data in the meta partition of the NVDIMM-F using a block interface, wherein the block interface is an asynchronous interface providing block level access of the meta partition.
10. The electronic device as claimed in claim 8, wherein a NVDIMM-N area corresponding to the at least one NVDIMM-N of the group is available for user data and the file system module is configured to access the user data using a store interface, wherein the store interface is a synchronous interface providing byte level access of the NVDIMM-N area.
11. A computer program product comprising:
a processor; and
a non-transitory computer-readable medium coupled to the processor, the non-transitory computer-readable medium configured to store computer program instructions that when executed by the processor are operable to cause the processor to perform actions comprising:
organizing at least one Non-Volatile Dual in-line Memory Modules-P (NVDIMM-P) of the composite memory device into at least one group based on a location information of the at least one NVDIMM-P; and
creating a single File System Instance (FSI) for each group among the at least one group.

Dated this 5th February, 2016

Signature:
Name of the Signatory: Dr. Kalyan Chakravarthy
, Description:The following specification particularly describes and ascertains the nature of this invention and the manner in which it is to be performed:-

TECHNICAL FIELD
[001] The embodiments herein generally relate to the field of devices comprising of a composite memory device and more particularly to file system for the devices comprising of the composite memory device.

BACKGROUND
[002] Computing and storage systems such as servers play critical role in the current electronic world of cloud computing, virtualization, high-performance computing (HPC), databases, big data, real-time video editing of 4K content and so on. A primary memory of the computing and storage device such as a server is required to boot normally and run so that server hypervisors, Operating Systems (OS), applications and the like do not run out of RAM memory. Conventionally, a Dynamic Random Access Memory (DRAM) is used as a primary memory.
[003] Emerging next generation memory devices or storage devices such as Non-Volatile Dual in-line Memory Modules (NV-DIMMs) are being widely used for data storage and primary memory functions. The NV-DIMMs are connected to a processor through a memory controller, unlike the conventional Peripheral Component Interconnect (PCI) bus. The NV-DIMMs perform workloads at DRAM speeds, yet are persistent and provide data retention in the event of a power failure or system crash. Further, the data can be available almost immediately upon power being restored to a host system. Thus, the NV-DIMMs provide high speed with low latency for Input/Output (I/O) operations.
[004] The NV-DIMMs are available in three types. First type is a NVDIMM-F, which is a block device (block addressable device), used as secondary storage device (like hard disk). Second type is a NVDIMM-N, which is a character device (byte addressable device), used as power backed DRAM in the primary memory. Recently developed third type is a composite storage device or composite memory device called a NVDIMM-P. The NVDIMM-P combines the NVDIMM-F and the NVDIMM-N, into a single device. All storage devices or memory devices utilize a file system to efficiently read or write data to the memory devices. The file system is a structured data representation and a set of meta data that describe the stored data. Traditional NVDIMM-N aware file systems in a kernel space store meta data of the file system and user data in a NVDIMM-N area of a NVDIMM-N. Thus, the NVDIMM-N aware file system introduces a limitation on storage space for user data and the NVDIMM-N area is shared for the meta data of the file system and the user data. Such a limitation may be critical since size of the NVDIMM–N is small (approximately 1GB to 2GB) which, already is a limitation with respect to available storage space for user data. Further, cost per byte in the NVDIMM-N is huge as compared to the NVDIMM-F (whose size is in the ranges approximately from of 1TB to 2TB) as the NVDIMM-N needs to be backed up on sudden power off. Thus, even though cost per byte is high, with existing NVDIMM-N aware file system the NVDIMM-N area cannot be entirely used for user data storage. Thus, cost per byte increases further. This constraint on the user data space availability in the NVDIMM-N is carried further into the NVDIMM-P storage devices that combine NVDIMM-F and NVDIMM-N into single device. Further, each NVDIMM-P used by the server requires a separate file system, also referred as file system instance (FSI). However, server platforms can have multiple NVDIMM-Ps. Thus, having a separate FSI for each NVDIMM-P device requires additional space for storage of the multiple file instances. Further, the existing NVDIMM-N aware file system is unable to assist feature of the memory controller that enables accessing memory devices in an interleaved manner. Thus, existing file systems are unable to efficiently use the memory devices storage space resulting in increase in cost per byte for memory devices. Also, the existing file systems are unable to allow access to memory devices in an interleaved manner and increase device access latency.

OBJECTS OF INVENTION
[005] The principal object of the embodiments herein is to provide a method and system for providing a file system for an electronic device comprising a composite memory device.
[006] Another object of the embodiments herein is to provide a method for arranging one or more Non-Volatile Dual in-line Memory Modules-P (NVDIMM-Ps) in the composite memory device into one or more groups based on location information of one or more NVDIMM-Ps, wherein each NVDIMM-P comprises a NVDIMM-N and a NVDIMM-F.
[007] Another object of the embodiments herein is to provide a method for creating a single file system instance (FSI) for each group among one or more groups, wherein the single file instance is for all NVDIMM-Ns in the group.
[008] Another object of the embodiments herein is to store a meta data for the single FSI corresponding to the group in a meta partition of a NVDIMM-F of the group.

SUMMARY
[009] In view of the foregoing, an embodiment herein provides a method for providing a file system for an electronic device. The method comprises organizing at least one Non-Volatile Dual in-line Memory Module-P (NVDIMM-P) of a composite memory device of the electronic device into at least one group based on location information of the at least one NVDIMM-P. Further, the method comprises creating a single File System Instance (FSI) for each group among the at least one group.
[0010] Embodiments further disclose an electronic device for providing a file system, the electronic device comprises a file system module configured to organize at least one Non-Volatile Dual in-line Memory Module-P (NVDIMM-P) of a composite memory device of the electronic device into at least one group based on a location information of the at least one NVDIMM-P. Further, the file system module is configured to create a single File System Instance (FSI) for each group among the at least one group.
[0011] Embodiments further disclose a computer program product comprising a processor; and a non-transitory computer-readable medium coupled to the processor, the non-transitory computer-readable medium configured to store computer program instructions that when executed by the processor are operable to cause the processor to perform actions comprising organizing at least one Non-Volatile Dual in-line Memory Module-P (NVDIMM-P) of the composite memory device into at least one group based on a location information of the at least one NVDIMM-P. Further, the actions comprise creating a single File System Instance (FSI) for each group among the at least one group.
[0012] These and other aspects of the embodiments herein will be better appreciated and understood when considered in conjunction with the following description and the accompanying drawings. It should be understood, however, that the following descriptions, while indicating embodiments and numerous specific details thereof, are given by way of illustration and not of limitation. Many changes and modifications may be made within the scope of the embodiments herein without departing from the spirit thereof, and the embodiments herein include all such modifications.

BRIEF DESCRIPTION OF FIGURES
[0013] The embodiments of this invention are illustrated in the accompanying drawings, throughout which like reference letters indicate corresponding parts in the various figures. The embodiments herein will be better understood from the following description with reference to the drawings, in which:
[0014] FIG. 1 illustrates a plurality of components of an electronic device that provides a file system for a composite memory device in the electronic device, according to embodiments as disclosed herein;
[0015] FIG. 2 is a flow diagram illustrating a method for providing the file system for the electronic device comprising the composite memory device, according to embodiments as disclosed herein;
[0016] FIG. 3a illustrates a Non-Volatile Dual in-line Memory Module-P (NVDIMM-P) with storage space distribution for user data and meta data of a NVDIMM-N integrated in the NVDIMM-P, according to embodiments as disclosed herein;
[0017] FIG. 3b illustrates grouping of plurality of NVDIMM-Ps in a single group with a single file system instance (FSI) for plurality of NVDIMM-Ns within the group, according to embodiments as disclosed herein;
[0018] FIG. 4 is an example illustrating grouping of plurality of NVDIMM-Ps of a composite memory device into plurality of groups with NVDIMM-Ps in a group spread across channels of the composite memory device, according to embodiments as disclosed herein; and
[0019] FIG. 5 illustrates a computing environment implementing the method for providing the file system for the electronic device that comprises the composite memory device in the electronic device, according to the embodiments as disclosed.



DETAILED DESCRIPTION
[0020] The embodiments herein and the various features and advantageous details thereof are explained more fully with reference to the non-limiting embodiments that are illustrated in the accompanying drawings and detailed in the following description. Descriptions of well-known components and processing techniques are omitted so as to not unnecessarily obscure the embodiments herein. The examples used herein are intended merely to facilitate an understanding of ways in which the embodiments herein may be practiced and to further enable those of skill in the art to practice the embodiments herein. Accordingly, the examples should not be construed as limiting the scope of the embodiments herein.
[0021] The embodiments herein provide a method and a system for providing a file system for an electronic device comprising a composite memory device. The composite memory device includes one or more Non-Volatile Dual in-line Memory Modules-P (NVDIMM-Ps), where each NVDIMM-P comprises a combination of a NVDIMM-N and a NVDIMM-F.
[0022] In an embodiment, the file system is a NVDIMM-N aware file system for plurality of NVDIMM-Ns within the plurality NVDIMM-Ps using a single file instance (FSI) rather than creating separate file system for each NVDIMM-N. The method includes organizing NVDIMM-Ps of the composite memory device into one or more groups based on location information of one or more NVDIMM-Ps. Thus, the NVDIMM-Ps, which are located on different channels, can be grouped in a single group. The method provides the file system that can create a single file system instance (FSI) for each group among one or more groups of the NVDIMM-Ps. The single FSI serves for all NVDIMM-Ns in the same group. Further, the method includes storing meta data for each single FSI in a meta partition of one NVDIMM-F among plurality of the NVDIMM-F belonging to the same group. The NVDIMM-P, associated with the NVDIMM-F that is identified for storing the meta data in the meta partition may be referred as a master device. Thus, the single FSI technique proposed eliminates need for maintaining multiple file instances for each NVDIMM-N within the NVDIMM-Ps in the composite memory device. This effectively reduces storage space requirement in the composite memory device comprising one or more NVDIMM-Ps. Further, the method includes accessing the meta partition of the NVDIMM-F for handling the meta data using a block interface. The block interface is an asynchronous interface providing block level access of the meta partition. Since the meta data for every NVDIMM-N is stored outside the NVDIMM-N onto the master device of the group (NVDIMM-F), an entire NVDIMM-N area of each the NVDIMM-N of the group is available for user data. Thus, increasing NVDIMM-N storage space and effectively reducing cost per byte of the NVDIMM-N. The user data in the NVDIMM-N area corresponding to each of the NVDIMM-N of the group can be accessed using a store interface. The store interface is a synchronous interface providing byte level access of the NVDIMM-N area. Thus, the file system proposed by the method allows parallel access of user data from NVDIMM-Ns in a group, reducing device access latency. The method provides the file system that is aware of the device interfaces such as the block interface and the store interface and appropriately utilizes it for the user data access from the NVDIMM-N area and the meta data access from the meta partition on the NVDIMM-F.
[0023] In an embodiment, the electronic device is a computing and/or storage device which comprises of a composite memory such as NVDIMM-P; for example, a file server, financial and real time transaction servers, enterprise servers and the like.
[0024] Referring now to the drawings, and more particularly to FIGS. 1 through 5, where similar reference characters denote corresponding features consistently throughout the figures, there are shown embodiments.
[0025] FIG. 1 illustrates a plurality of components of the electronic device 100 that provides a file system for the composite memory device in the electronic device 100, according to embodiments as disclosed herein.
[0026] Referring to figure 1, the electronic device 100 is illustrated in accordance with an embodiment of the present subject matter. In an embodiment, the electronic device 100 may include at least one processor 102, an input/output (I/O) interface 104 (herein a configurable user interface), a memory 106. The at least one processor 102 may be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units, state machines, logic circuitries, and/or any devices that manipulate signals based on operational instructions. Among other capabilities, the at least one processor 102 is configured to fetch and execute computer-readable instructions stored in the memory 106. The I/O interface104 may include a variety of software and hardware interfaces, for example, a web interface, a graphical user interface, and the like. The I/O interface 104 may allow the electronic device 100 to communicate with other devices. The I/O interface 104 may facilitate multiple communications within a wide variety of networks and protocol types, including wired networks, for example, Local Area Network (LAN), cable, etc., and wireless networks, such as Wide Area Network (LAN), cellular, Device to Device (D2D) communication network, Wi-Fi networks and so on.
[0027] In an embodiment, the memory 106 may include applications 108, modules 110, a composite memory device comprising one or more NVDIMM-Ps 116 and data 118. A system memory controller interface (not shown) that is an interface between the at least one processor 102 and memory 106 can have multiple channels and each channel has multiple slots for memory devices such as NVDIMMs 116. Thus the NVDIMMs 116 are spread across channels of the memory controller interface.
[0028] The modules 110 include routines, programs, objects, components, data structures, and the like, which perform particular tasks, functions or implement particular abstract data types. In one implementation, the modules 110 may include a file system 112. The file system 112 includes a file system module 114 that can be configured to organize NVDIMM-Ps of the composite memory device into one or more groups based on location information of one or more NVDIMM-Ps 116. Thus, the NVDIMM-Ps 116 which are located on different channels can be grouped in a single group. In an embodiment, the file system 112 is the NVDIMM-N aware file system for plurality of NVDIMM-Ns within the plurality NVDIMM-Ps 116, wherein the file system 112 uses a single file instance (FSI) for one or more NVDIMM-Ns within a single group of NVDIMM-P.. Thus, the single FSI serves for all NVDIMM-Ns in the same group. Further, the file system module 114 can be configured to store meta data for the single FSI in the meta partition of one among plurality of the NVDIMM-F belonging to the same group. The NVDIMM-P, associated with the NVDIMM-F that is identified for storing the meta data in the meta partition may be referred as the master device. A format utility of the file system 112 can be configured to group the NVDIMM-N portion of available and suitable NVDIMM-P devices and write the meta in meta partition. Thus, the single FSI technique proposed eliminates need for maintaining multiple file instances for each NVDIMM-N in the composite memory device. Further, the file system module 114 can be configured to access the meta partition of the NVDIMM-F for handling the meta data using the block interface. The block interface is an asynchronous interface providing block level access of the meta partition. Since the meta data for every NVDIMM-N is stored outside the NVDIMM-N onto the master device of the group (NVDIMM-F) an entire NVDIMM-N area of each the NVDIMM-N of the group is available for user data, thus increasing NVDIMM-N storage space and effectively decreasing cost per byte of the NVDIMM-N. The user data in the NVDIMM-N area corresponding to each of the NVDIMM-N of the group can be accessed using the store interface. Thus, the file system 112 proposed by the method allows parallel access of user data from NVDIMM-Ns in the single group, reducing device access latency. The parallel access to area of the user data is possible due to location of devices (NVDIMM-Ps) which, are chosen at format time based on parallel access capability. Since the devices are chosen in group from different channels they can be accessed parallel. The file system 112 is explained with an example in conjunction with FIGs. 3a, 3b and 4 respectively.
[0029] The modules 110 may include programs or coded instructions that supplement applications 108 and functions of the electronic device 100. The data 118, amongst other things, serves as a repository for storing data processed, received, and generated by one or more of the modules 110. Further, the names of components and the modules of the electronic device 100 are illustrative and need not be construed as a limitation.
[0030] FIG. 2 is a flow diagram illustrating a method 200 for providing the file system 112 for the electronic device 100 comprising the composite memory device, according to embodiments as disclosed herein. The composite memory device includes plurality NVDIMM-Ps 116, where each NVDIMM-P includes combination of the NVDIMM-N and the NVDIMM-F. The system memory controller interface, which is the interface between the at least one processor 102 and memory 106, can provide multiple channels. Each channel can have multiple slots for memory devices such as NVDIMMs 116. Thus the NVDIMMs 116 are spread across channels of the memory controller interface.
[0031] At step 202, the method 200 includes allowing the file system module 114 to organize NVDIMM-Ps 116, spread across channels, into one or more groups. The groups are organized based on location information such as channel number and device number explained in conjunction with Fig 4. Thus, the NVDIMM-Ps which, are located on different channels can be grouped in a single group.
[0032] At step 204, the method 200 includes allowing the file system module 114 to create the single file system instance (FSI) for each group among one or more groups rather than creating separate file system for each NVDIMM-N in a group. The single FSI serves for all NVDIMM-Ns in the same group.
[0033] At step 206, the method 200 includes allowing the file system module 114 to store meta data for FSI created in the meta partition on of one NVDIMM-F among plurality of the NVDIMM-F belonging to the same group. Thus, one NVDIMM-F in each group holds the meta data for the corresponding group in a location partitioned as meta partition. The method 200 allows the file system module 114 to partition the NVDIMM-F area using normal disk partitioning tool and identify and reserve one partition as meta partition for storing the meta data of all NVDIMM-Ns in the same group. The format utility of the file system 112 groups the NVDIMM-N portion of available and suitable NVDIMM-P devices and writes the meta in meta partition. Every group identifies one NVDIMM-P which is associated with the NVDIMM-F selected for storing the meta data in the meta partition. This NVDIMM-P may be referred as the master device. Thus, the single FSI technique proposed eliminates need for maintaining multiple file instances for each NVDIMM-N in the composite memory device. This effectively reduces storage space requirement in the composite memory device with one or more NVDIMM-Ps.
[0034] At step 208, the method 200 includes allowing the file system module 114 to access the meta partition of the NVDIMM-F for handling the meta data using the block interface. The block interface is the asynchronous interface providing block level access of the meta partition. Since the meta data for every NVDIMM-N is stored outside the NVDIMM-N onto the master device of the group (NVDIMM-F), the entire NVDIMM-N area of each the NVDIMM-N of the group is available for user data. This increases NVDIMM-N storage space for user data and effectively decreases cost per byte of the NVDIMM-N. The user data in the NVDIMM-N area corresponding to each of the NVDIMM-N of the group can be accessed using the store interface. The store interface is the synchronous interface providing byte level access of the NVDIMM-N area. Thus, the file system 112 proposed by the method 200 allows parallel access of user data from NVDIMM-Ns of same group, reducing device access latency. Parallel access is due to physical location of devices which are placed in different channels. Further, a byte interface used to access user data from NVDIMM-Ns is faster interface as compared to block interface used to access data from NVDIMM-Fs. The method 200 provides the file system 112 that is aware of the device interfaces such as the block interface and the store interface and appropriately utilizes it for the user data access from the NVDIMM-N area and the meta data access from the meta portion.
[0035] The various actions in method 200 may be performed in the order presented, in a different order or simultaneously. Further, in some embodiments, some actions listed in FIG. 2 may be omitted.
[0036] FIG. 3a illustrates a NVDIMM-P 300 with storage space distribution for user data and meta data of the NVDIMM-N 302 integrated in the NVDIMM-P 300, according to embodiments as disclosed herein. The FIG. 3 shows the NVDIMM-P 300 that is a combination the NVDIMM-N 302 and a NVDIMM-F 304. The file system 112 that creates the FSI for the NVDIMM-N 302 stores meta data of the NVDIMM-N 302 in NVDIMM-F’s meta partition 308. The meta partition 308 is one partition among multiple normal disk partitions 306 of the NVDIMM-F 304. Thus the entire N-area 310 of the NVDIMM-N 302 is available for the user data to be stored in the NVDIMM-N 302. The normal disk partition can be created during disk formatting.
[0037] FIG. 3b illustrates grouping of plurality of NVDIMM-Ps 312 in a single group with a single file system instance (FSI) for the plurality of NVDIMM-Ns in the group, according to embodiments as disclosed herein. The figure 3 illustrates NVDIMM-P1, NVDIMM-P2 and NVDIMM-P3, in the composite device environment of memory 106, grouped together by the file system 112 as the single group (indicated by the dotted line). A single FSI 314 is created for all the NVDIMM-P1, the NVDIMM-P2 and the NVDIMM-P3 in the group and metadata for all corresponding NVDIMM-Ns of the NVDIMM-P1, theNVDIMM-P2 and the NVDIMM-P3 are stored in the meta partition of NVDIMM-F area of the NVDIMM-P2. Thus, leaving the entire NVDIMM-N area of the NVDIMM-P1, the NVDIMM-P2 and the NVDIMM-P3 for user data.
[0038] FIG. 4 is an example illustrating grouping of plurality of NVDIMM-Ps 418 of a composite memory device 400 into plurality of groups with NVDIMM-Ps in a group spread across channels of the composite memory device 400, according to embodiments as disclosed herein. The figure 4 illustrates the plurality of NVDIMM-Ps 418, including D0, D1 of channel C0 (410) and D0, D1 of Channel C1 (412), organized into two groups 401 and 402 (G0 and G1) respectively by the file system 112. The group G0 includes device D0 of channel C0 and device D0 of channel C1 (G0= devices with physical location or location information as C0D0, C1D0), similarly the group G1 includes device D1 of channel C0 and device D1 of channel C1 (G1= devices with physical location as C0D1, C1D1). For each group G0 and G1 an FSI0 (406) and FSI1 (408) respectively is created. Further meta data for the FSI0 is stored in meta partition of any one of selected NVDIMM-F of group G0. Similarly, meta data for the FSI1 is stored in meta partition of any one of selected NVDIMM-F of group G1. The format utility of the file system 112 groups the NVDIMM-N portion of available and suitable NVDIMM-P devices and writes the meta in the meta partition during device formatting. This information (meta data) is stored in superblock on master device’s (selected NVDIMM-P for the group) chosen partition (meta partition). The order of devices in the group is important, because this decides how data is stripped across devices. The device location itself cannot be relied upon to determine the order, since a user can swap devices between boots. In order to get proper order, at format time file system 112 can be configured to write a sequence number on each device’s NVDIMM-N’s area. First block of each NVDIMM-N device has sequence number, which is read at file system 112 mount time. Based on this file system 112 can detect swap and get correct order. This information (meta data) can also be used incase device is swapped across channel, in this case the user can be informed about it.
[0039] Thus with each group G0 and G1 having the FSI-0 and FSI-1 respectively as depicted in the figure 4, a logical data area 410 for the NVDIMM-N area in the composite memory device 400 can be represented as two logical block 414 and 416 respectively. The metadata corresponding to the NVDIMM-N area of all NVDIMM-Ns in the group is stored in one of the NVDIMM-F of the group. Thus, entire NVDIMM-N area within the group is available as user data area. The file system 112 uses the block interface to access the meta data for the group (G0 and G1). The file system 112 uses the store interface for simultaneous access of the user data of each NVDIMM-N within the group. Since group devices are accessed in parallel, this results in reduced device access latency.
[0040] Effective device access latency is computed by dividing individual device latency by number of devices in that particular group
[0041] FIG. 5 illustrates a computing environment implementing the method for providing the file system for the electronic device that comprises the composite memory device, as disclosed in the embodiments herein.
[0042] As depicted, the computing environment 502 comprises at least one processing unit 504 that is equipped with a control unit 506 and an Arithmetic Logic Unit (ALU) 508, a memory 510, a storage unit 512, plurality of networking devices 514 and a plurality Input output (I/O) devices 516. The processing unit 504 is responsible for processing the instructions of the algorithm. The processing unit 504 receives commands from the control unit 506 in order to perform its processing. Further, any logical and arithmetic operations involved in the execution of the instructions are computed with the help of the ALU 508.
[0043] The overall computing environment 502 can be composed of multiple homogeneous and/or heterogeneous cores, multiple CPUs of different kinds, special media and other accelerators. The processing unit 504 is responsible for processing the instructions of the algorithm. Further, the plurality of processing units 504 may be located on a single chip or over multiple chips.
[0044] The algorithm comprising of instructions and codes required for the implementation are stored in either the memory unit 510 or the storage 512 or both. At the time of execution, the instructions may be fetched from the corresponding memory 510 and/or storage 512, and executed by the processing unit 504. In case of any hardware implementations various networking devices 514 or external I/O devices 516 may be connected to the computing environment to support the implementation through the networking unit and the I/O device unit.
[0045] The embodiments disclosed herein can be implemented through at least one software program running on at least one hardware device and performing network management functions to control the network elements. The network elements shown in FIG. 1 through FIG. 5 include blocks which can be at least one of a hardware device, or a combination of hardware device and software module.
[0046] The foregoing description of the specific embodiments will so fully reveal the general nature of the embodiments herein that others can, by applying current knowledge, readily modify and/or adapt for various applications such specific embodiments without departing from the generic concept, and, therefore, such adaptations and modifications should and are intended to be comprehended within the meaning and range of equivalents of the disclosed embodiments. It is to be understood that the phraseology or terminology employed herein is for the purpose of description and not of limitation. Therefore, while the embodiments herein have been described in terms of preferred embodiments, those skilled in the art will recognize that the embodiments herein can be practiced with modification within the spirit and scope of the embodiments as described herein.

Documents

Application Documents

# Name Date
1 Form 5 [05-02-2016(online)].pdf 2016-02-05
2 Form 3 [05-02-2016(online)].pdf 2016-02-05
3 Form 18 [05-02-2016(online)].pdf 2016-02-05
4 Drawing [05-02-2016(online)].pdf 2016-02-05
5 Description(Complete) [05-02-2016(online)].pdf 2016-02-05
6 REQUEST FOR CERTIFIED COPY [04-07-2016(online)].pdf 2016-07-04
7 201641004286-FORM-26 [16-03-2018(online)]_83.pdf 2018-03-16
8 201641004286-FORM-26 [16-03-2018(online)].pdf 2018-03-16
9 201641004286-FER.pdf 2019-10-22
10 201641004286-OTHERS [21-04-2020(online)].pdf 2020-04-21
11 201641004286-FER_SER_REPLY [21-04-2020(online)].pdf 2020-04-21
12 201641004286-DRAWING [21-04-2020(online)].pdf 2020-04-21
13 201641004286-CORRESPONDENCE [21-04-2020(online)].pdf 2020-04-21
14 201641004286-CLAIMS [21-04-2020(online)].pdf 2020-04-21
15 201641004286-ABSTRACT [21-04-2020(online)].pdf 2020-04-21
16 201641004286-US(14)-HearingNotice-(HearingDate-28-12-2023).pdf 2023-11-29
17 201641004286-FORM-26 [08-12-2023(online)].pdf 2023-12-08
18 201641004286-Correspondence to notify the Controller [08-12-2023(online)].pdf 2023-12-08
19 201641004286-Annexure [08-12-2023(online)].pdf 2023-12-08
20 201641004286-Written submissions and relevant documents [12-01-2024(online)].pdf 2024-01-12
21 201641004286-RELEVANT DOCUMENTS [12-01-2024(online)].pdf 2024-01-12
22 201641004286-RELEVANT DOCUMENTS [12-01-2024(online)]-1.pdf 2024-01-12
23 201641004286-PETITION UNDER RULE 137 [12-01-2024(online)].pdf 2024-01-12
24 201641004286-PETITION UNDER RULE 137 [12-01-2024(online)]-1.pdf 2024-01-12
25 201641004286-Annexure [12-01-2024(online)].pdf 2024-01-12
26 201641004286-PatentCertificate02-02-2024.pdf 2024-02-02
27 201641004286-IntimationOfGrant02-02-2024.pdf 2024-02-02

Search Strategy

1 SearchStrategy_22-10-2019.pdf

ERegister / Renewals

3rd: 30 Apr 2024

From 05/02/2018 - To 05/02/2019

4th: 30 Apr 2024

From 05/02/2019 - To 05/02/2020

5th: 30 Apr 2024

From 05/02/2020 - To 05/02/2021

6th: 30 Apr 2024

From 05/02/2021 - To 05/02/2022

7th: 30 Apr 2024

From 05/02/2022 - To 05/02/2023

8th: 30 Apr 2024

From 05/02/2023 - To 05/02/2024

9th: 30 Apr 2024

From 05/02/2024 - To 05/02/2025

10th: 30 Jan 2025

From 05/02/2025 - To 05/02/2026