IP Library › Granted Patent US 7,698,495
Granted Patent B2
US 7,698,495 · App. 11/450,140 · Granted Apr 13, 2010

Computer system having logically ordered cache management

Assignee: QNZ Software Systems GmbH & Co. KG
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,698,495
App. No.
11/450,140
Granted
Apr 13, 2010
Kind
B2
Abstract

A computer system is set forth that includes a processor, general memory storage, and cache memory for temporarily storing selected data requested from the general memory storage. The computer system also may include file system software that is executed by the processor. The file system software may be used to manage the file data and the structure of the file system for files stored on the general memory storage. Management of the cache memory is placed under the control of cache management software. The cache management software is executed by the processor to manage the contents of the cache memory pursuant to cache hit and cache miss criterion. Sections of the cache memory are organized by the cache management software based on logical addresses of file data requested from the general memory storage.

Claims (24)

1. A computer system comprising:

a processor;

general memory storage;

cache memory for temporarily storing selected data requested from the general memory storage;

cache management software executable by the processor for managing the contents of the cache memory pursuant to cache hit and cache miss criterion, where the cache management software dedicates physically contiguous memory locations of the cache memory to an individual file and organizes the cache memory dedicated to the individual file so that data items of the individual file are ordered in sequential physical locations of the physically contiguous memory in sequential order of the logical addresses of the data items;

a write buffer for temporarily storing selected data that is to be written from the cache memory to the general memory storage, where the write buffer includes physically contiguous memory locations dedicated to the individual file so that data items of the individual file are ordered in the physically contiguous locations of the write buffer in sequential order of the logical addresses of the data items of the individual file;

where the cache management software organizes the contents of the write buffer, and where organization of the contents of the write buffer occurs prior to the writing of the write buffer contents to the general memory storage;

file system software executable by the processor for managing file data and file system structure of files stored on the general memory storage; and

where the file system software allocates a new memory area in the general memory storage based on a total amount of memory space needed to relocate the original data items of a given file and the data items of the write buffer for the given file to the new memory area.

2. The computer system as claimed in claim 1 , where the file system software organizes the given file in physically contiguous memory locations of the new memory area so data items of a given file are ordered in sequential physical locations of the physically contiguous memory locations of the new memory area in sequential order of logical addresses of the data items.

3. The computer system as claimed in claim 1 , where the general memory storage comprises flash memory.

4. The computer system as claimed in claim 1 , where the general memory storage comprises rotating disk memory.

5. A computer system comprising:

a processor;

general memory storage;

cache memory for temporarily storing selected data requested from the general memory storage;

cache management software executable by the processor for managing the contents of the cache memory pursuant to cache hit and cache miss criterion, where the cache management software allocates a first memory section of physically contiguous memory locations of the cache memory to data items of a first file, where physically contiguous memory locations of the first memory section are allocated sequentially to data items of the first file sequentially in order of logical addresses of data items of the first file, and a second memory section of physically contiguous memory locations of the cache memory to data items of a second file, where physically contiguous memory locations of the second memory section are allocated sequentially to data items of the second file in order of logical addresses of data items of the second file;

a write buffer for temporarily storing selected data items of the first and/or second file that are to be written from the cache memory to the general memory storage, where the write buffer includes one or more sections allocated to the first and/or second file that are organized so that data items of an individual file in its corresponding section are ordered sequentially in sequential physical locations of physically contiguous memory locations of the one or more sections allocated to the first and/or second file in sequential order of logical addresses of the data items of the respective first and/or second file;

where the cache management software logically organizes the contents of the write buffer, and where logical organization of the contents of the write buffer occurs prior to the writing of the write buffer contents to the first and/or second files in the general memory storage;

file system software executable by the processor for managing file data and file system structure of files stored on the general memory storage; and

where the file system software allocates a new memory area in the general memory storage for the first file based on a total amount of memory space needed to relocate original data items of the first file and the data items of the write buffer for the first file to the new memory area in the general memory storage.

6. The computer system as claimed in claim 5 , where the file system software further allocates a further new memory area for the second file in the general memory storage based on a total amount of memory space needed to relocate original data items of the second file and the data items of the write buffer for the second file to the further new memory area in the general memory storage.

7. The computer system as claimed in claim 5 , where the general memory storage comprises flash memory.

8. The computer system as claimed in claim 5 , where the general memory storage comprises rotating disk memory.

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: 8758271 CANADA INC.
To: 2236008 ONTARIO INC.
Reel/Frame 032607/0674 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 4, 2014
From: QNX SOFTWARE SYSTEMS LIMITED
To: 8758271 CANADA INC.
Reel/Frame 032607/0943 →
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: QNX SOFTWARE SYSTEMS GMBH & CO. KG
To: 7801769 CANADA INC.
Reel/Frame 026883/0544 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 9, 2011
From: 7801769 CANADA INC.
To: QNX SOFTWARE SYSTEMS LIMITED
Reel/Frame 026883/0553 →
CHANGE OF SEAT Recorded Feb 28, 2011
From: QNX SOFTWARE SYSTEMS GMBH & CO. KG
To: QNX SOFTWARE SYSTEMS GMBH & CO. KG
Reel/Frame 025863/0434 →
REGISTRATION Recorded Feb 28, 2011
From: QNX SOFTWARE SYSTEMS GMBH & CO. KG
To: QNX SOFTWARE SYSTEMS GMBH & CO. KG
Reel/Frame 025863/0398 →
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 Aug 17, 2006
From: DODGE, DAN
To: QNX SOFTWARE SYSTEMS GMBH & CO. KG
Reel/Frame 018141/0385 →
Continuity (2)
Provisional Application 6069649400 · Jul 1, 2005
Related Publication 20070005894A1 · Jan 4, 2007