IP Library › Granted Patent US 7,707,362
Granted Patent B2
US 7,707,362 · App. 11/171,712 · Granted Apr 27, 2010

Context-free data transactions between dual operating systems embedded within a data storage subsystem

Assignee: Seagate Technology LLC
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,707,362
App. No.
11/171,712
Granted
Apr 27, 2010
Kind
B2
Abstract

A method is provided for storing and retrieving data in a network-attached data storage device by a cooperatively multitasking real time operating system configured to execute datapath routines and a general purpose operating system kernel configured to communicate with the network.

Claims (30)

1. A method comprising:

sequencing an operating system kernel module via instructions stored in computer readable memory to communicate data between a storage device and a remote device;

sequencing a policy processor to execute a real time operating system module, the operating system kernel module not included in the real time operating system module, via instructions stored in computer readable memory to establish datapath control for data transfers with respect to the storage device;

mapping a shared memory so that it is addressable at a same virtual address for both a kernel thread from the operating system kernel module and a firmware thread from the policy processor executing the real time operating system module; and

storing datapath control firmware configuration information in the shared memory.

2. The method of claim 1 comprising making the shared memory not visible to other processes.

3. The method of claim 2 comprising loading the operating system kernel module at the lowest physical address of the shared memory.

4. The method of claim 3 comprising the operating system kernel module mapping itself into an area of the shared memory.

5. The method of claim 4 comprising pinning a physical page to every virtual address in the shared memory.

6. The method of claim 5 comprising reserving a portion of physical pages available from the operating system kernel module for covering all virtual addresses, and increasing a page size that each reserved page maps.

7. The method of claim 6 comprising reducing an amount of usable random access memory (RAM) in the operating system kernel module by the size of the shared memory.

8. The method of claim 7 comprising the operating system kernel module flagging the shared memory as non-swappable.

9. The method of claim 8 wherein the operating system kernel module maps device register peripheral component interconnect (PCI) addresses to the shared memory.

10. The method of claim 9 comprising mapping a virtual memory allocation at a true end of physical RAM.

11. An apparatus comprising:

an operating system kernel module communicating data between a data storage device and a remote device;

a policy processor executing a real time operating system module, the operating system kernel module not included in the real time operating system module, handling datapath control of data transfers with respect to the data storage device;

a shared memory that is addressable at a same virtual address for both a kernel thread from the operating system kernel module and a firmware thread from the policy processor executing the real time operating system module; and

datapath control firmware configuration information stored in the shared memory.

12. The apparatus of claim 11 wherein the shared memory is mapped with respect to device register peripheral component interconnect (PCI) addresses.

13. The apparatus of claim 11 wherein the shared memory is non-swappable.

14. The apparatus of claim 11 wherein the processor comprises a plurality of function-specific controllers communicating with one or more list managers via a cross point switch.

15. The apparatus of claim 11 wherein the firmware threads and kernel threads are processed to generate work items that are passed to a work ring via an event ring buffer.

16. A method comprising:

sequencing an operating system kernel module via instructions stored in computer readable memory to communicate data between a storage device and a remote device;

sequencing a processor to execute a real time operating system module, the operating system kernel module not included in the real time operating system module, via instructions stored in computer readable memory to establish datapath control for data transfers with respect to the storage device;

mapping a shared memory so that it is addressable by kernel threads from the operating system kernel module and by firmware threads from the processor executing the real time operating system module;

storing datapath control firmware configuration information in the shared memory;

reserving a portion of physical pages available from the operating system kernel module for covering all virtual addresses; and

increasing a page size that each reserved page maps.

Assignments (6)
RELEASE OF SECURITY INTEREST Recorded Jul 23, 2025
From: THE BANK OF NOVA SCOTIA
To: SEAGATE TECHNOLOGY PUBLIC LIMITED COMPANY; SEAGATE TECHNOLOGY; SEAGATE TECHNOLOGY HDD HOLDINGS; I365 INC.; SEAGATE TECHNOLOGY LLC; SEAGATE TECHNOLOGY INTERNATIONAL; SEAGATE HDD CAYMAN; SEAGATE TECHNOLOGY (US) HOLDINGS, INC.
Reel/Frame 072193/0001 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENT RIGHTS Recorded Jul 19, 2013
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT AND SECOND PRIORITY REPRESENTATIVE
To: SEAGATE TECHNOLOGY LLC; EVAULT INC. (F/K/A I365 INC.); SEAGATE TECHNOLOGY INTERNATIONAL; SEAGATE TECHNOLOGY US HOLDINGS, INC.
Reel/Frame 030833/0001 →
SECURITY AGREEMENT Recorded Mar 24, 2011
From: SEAGATE TECHNOLOGY LLC
To: THE BANK OF NOVA SCOTIA, AS ADMINISTRATIVE AGENT
Reel/Frame 026010/0350 →
RELEASE Recorded Jan 19, 2011
From: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
To: SEAGATE TECHNOLOGY HDD HOLDINGS; MAXTOR CORPORATION; SEAGATE TECHNOLOGY LLC; SEAGATE TECHNOLOGY INTERNATIONAL
Reel/Frame 025662/0001 →
SECURITY AGREEMENT Recorded May 15, 2009
From: MAXTOR CORPORATION; SEAGATE TECHNOLOGY LLC; SEAGATE TECHNOLOGY INTERNATIONAL
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT AND FIRST PRIORITY REPRESENTATIVE; WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT AND SECOND PRIORITY REPRESENTATIVE
Reel/Frame 022757/0017 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 30, 2005
From: BEAN, ROBERT GEORGE; LUBBERS, CLARK EDWARD; TRACE, ROBERT BRINHAM
To: SEAGATE TECHNOLOGY LLC
Reel/Frame 016748/0557 →
Continuity (1)
Related Publication 20070022147A1 · Jan 25, 2007