IP Library Granted Patent US 7,599,972
Granted Patent B2
US 7,599,972 · App. 11/510,174 · Granted Oct 6, 2009

File system having variable logical storage block size

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,599,972
App. No.
11/510,174
Granted
Oct 6, 2009
Kind
B2
Abstract

A system is set forth that includes a processor, a data storage device that accessible by the processor, and filesystem software that executable by the processor to organize files on the data storage device. The filesystem software is executable to organize files on the data storage device in storage areas having different logical storage block sizes that are dependent on file type. In one implementation, the filesystem software is executable to generate a hole map associated with the data storage device. The hole map comprises data indicative of a logical storage block size for each of a plurality of storage areas of the data storage device and, optionally, data indicative of a degree of usage for each of the plurality of storage areas. The filesystem may identify the file type using a filename of the file and/or embedded file information.

Claims (25)

1. A system comprising:

a processor;

a data storage device having memory accessible by the processor;

filesystem code executable by the processor to manage files of different file types on the data storage device using different storage area types, where the different storage area types define different logical storage block sizes used by the filesystem to logically divide the memory of the data storage device, where the filesystem code identifies the file type of each file managed by the filesystem code and executes memory transactions for each managed file using the storage area type assigned to the file type.

2. The system of claim 1 , where the different media file types comprise video data files, audio data files, and executable files.

3. The system of claim 2 , where the filesystem code is executable to organize video data files in larger logical storage block sizes than audio data files.

4. The system of claim 3 , where the filesystem code is executable to organize audio data files in larger logical storage block sizes than executable files.

5. The system of claim 1 , where the filesystem code is executable to generate a hole map associated with the data storage device, and where the hole map comprises data indicative of a logical storage block size for each of a plurality of storage areas of the data storage device.

6. The system of claim 5 , where the filesystem code is executable to generate the hole map proximate a beginning portion of a volume on the data storage device.

7. The system of claim 5 , where the filesystem code is executable to store data indicative of a degree of usage of mapped storage areas of the storage device in the hole map.

8. The system of claim 1 , where the filesystem code is executable to identify the file type of a file using a filename of the file.

9. The system of claim 1 , where the filesystem code is executable to identify the file type of a file using embedded file information.

10. The system of claim 1 , where the filesystem code is executable to store file data in an area of a lesser logical storage block size when an area of a logical storage block size corresponding to the file type is unavailable.

11. The system of claim 1 , where the filesystem code is executable to store file data in a degraded area of the memory storage when an area of a logical storage block size corresponding to the file type is unavailable.

12. A system comprising:

a processor;

a data storage device having memory storage accessible by the processor;

filesystem code executable by the processor to manage files on the data storage device, where the filesystem code is executable to manage files on the data storage device using storage areas of a first type having a first logical storage block size and storage areas of a second type having a second logical storage block size that differs in size from the first logical storage block size, where the first and second logical storage block sizes are used by the filesystem code to logically divide the memory of the storage device, and where the filesystem code is further executable to store file data of a file of a first file type in storage areas of the first type and file data of a file of a second file type in storage areas of the second type, and where the filesystem code is executable to identify whether each file managed by the file system code is of the first or second file type.

13. The system of claim 12 , where the first file type comprises video data files and the second file type comprises audio data files.

14. The system of claim 13 , where the first logical storage block size is larger than the second logical storage block size.

15. The system of claim 12 , where the filesystem code is executable to generate a hole map corresponding to storage areas of the data storage device, where the hole map comprises data indicative of whether a storage area is of the first or second type.

16. The system of claim 15 , where the hole map generated through execution of the filesystem code is stored proximate a beginning of a volume on the data storage device.

17. The system of claim 15 , where the hole map comprises data indicative of a degree of usage of the storage areas of the storage device that are mapped in the hole map.

18. The system of claim 12 , where the filesystem code is executable to identify the file type of a file using a filename of the file.

19. The system of claim 12 , where the filesystem code is executable to identify the file type of a file using embedded file information.

Assignments (13)
NUNC PRO TUNC ASSIGNMENT Recorded Jun 19, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064270/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 16, 2023
From: BLACKBERRY LIMITED
To: MALIKIE INNOVATIONS LIMITED
Reel/Frame 064104/0103 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 22, 2020
From: 2236008 ONTARIO INC.
To: BLACKBERRY LIMITED
Reel/Frame 053313/0315 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 4, 2014
From: QNX SOFTWARE SYSTEMS LIMITED
To: 8758271 CANADA INC.
Reel/Frame 032607/0943 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 4, 2014
From: 8758271 CANADA INC.
To: 2236008 ONTARIO INC.
Reel/Frame 032607/0674 →
CHANGE OF ADDRESS Recorded Feb 27, 2012
From: QNX SOFTWARE SYSTEMS LIMITED
To: QNX SOFTWARE SYSTEMS LIMITED
Reel/Frame 027768/0961 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 9, 2011
From: 7801769 CANADA INC.
To: QNX SOFTWARE SYSTEMS LIMITED
Reel/Frame 026883/0553 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 9, 2011
From: QNX SOFTWARE SYSTEMS GMBH & CO. KG
To: 7801769 CANADA INC.
Reel/Frame 026883/0544 →
REGISTRATION Recorded Oct 26, 2010
From: QNX SOFTWARE SYSTEMS GMBH & CO. KG
To: QNX SOFTWARE SYSTEMS GMBH & CO. KG
Reel/Frame 025192/0042 →
CHANGE OF SEAT Recorded Oct 26, 2010
From: QNX SOFTWARE SYSTEMS GMBH & CO. KG
To: QNX SOFTWARE SYSTEMS GMBH & CO. KG
Reel/Frame 025192/0067 →
PARTIAL RELEASE OF SECURITY INTEREST Recorded Jun 3, 2010
From: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
To: HARMAN INTERNATIONAL INDUSTRIES, INCORPORATED; QNX SOFTWARE SYSTEMS (WAVEMAKERS), INC.; QNX SOFTWARE SYSTEMS GMBH & CO. KG
Reel/Frame 024483/0045 →
SECURITY AGREEMENT Recorded May 8, 2009
From: HARMAN INTERNATIONAL INDUSTRIES, INCORPORATED; BECKER SERVICE-UND VERWALTUNG GMBH; CROWN AUDIO, INC.; HARMAN BECKER AUTOMOTIVE SYSTEMS (MICHIGAN), INC.; HARMAN BECKER AUTOMOTIVE SYSTEMS HOLDING GMBH; HARMAN BECKER AUTOMOTIVE SYSTEMS, INC.; HARMAN CONSUMER GROUP, INC.; HARMAN DEUTSCHLAND GMBH; HARMAN FINANCIAL GROUP LLC; HARMAN HOLDING GMBH & CO. KG; HARMAN MUSIC GROUP, INCORPORATED; HARMAN SOFTWARE TECHNOLOGY INTERNATIONAL BETEILIGUNGS GMBH; HARMAN SOFTWARE TECHNOLOGY MANAGEMENT GMBH; HBAS INTERNATIONAL GMBH; HBAS MANUFACTURING, INC.; INNOVATIVE SYSTEMS GMBH NAVIGATION-MULTIMEDIA; JBL INCORPORATED; LEXICON, INCORPORATED; MARGI SYSTEMS, INC.; QNX SOFTWARE SYSTEMS (WAVEMAKERS), INC.; QNX SOFTWARE SYSTEMS CANADA CORPORATION; QNX SOFTWARE SYSTEMS CO.; QNX SOFTWARE SYSTEMS GMBH; QNX SOFTWARE SYSTEMS GMBH & CO. KG; QNX SOFTWARE SYSTEMS INTERNATIONAL CORPORATION; QNX SOFTWARE SYSTEMS, INC.; XS EMBEDDED GMBH (F/K/A HARMAN BECKER MEDIA DRIVE TECHNOLOGY GMBH)
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 022659/0743 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 12, 2007
From: DODGE, DAN; VAN DER VEEN, PETER
To: QNX SOFTWARE SYSTEMS GMBH & CO. KG
Reel/Frame 018879/0738 →