US2009292825A1PendingUtilityA1

Method and apparatus for in-kernel application-specific processing of content streams

Assignee: IBMPriority: Mar 1, 2005Filed: Jul 31, 2009Published: Nov 26, 2009
Est. expiryMar 1, 2025(expired)· nominal 20-yr term from priority
H04L 69/02
54
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

An embodiment of the invention transfers content between one or more input streams and one or more output streams via an application running on a host system. A kernel-level service is provided which is adapted to perform application-specific processing and which attends to transfer of content from at least one input stream to at least one output stream. With the kernel-level service, an operation is performed for the collection of at least one input stream and at least one output stream via: performing application-specific processing; and attending to the transfer of content from at least one input stream to at least one output stream.

Claims

exact text as granted — not AI-modified
1 . A method comprising:
 utilizing a machine to execute a program of instructions tangibly embodied in a program storage device, the program of instructions, when executed, being configured to:   cause a kernel-level transfer service to receive a request from one or more applications for general purpose operating system kernel-level offloading of content transfer between one or more input streams and one or more output streams;   cause the kernel-level transfer service to register one or more application-specific handlers, the one or more application specific handlers being configured to execute application-specific content processing in kernel space;   cause the kernel-level transfer service to invoke the one or more application-specific handlers to execute the application-specific content processing in kernel space; and   cause the kernel-level transfer service to transfer content between the one or more input streams and the one or more output streams.   
   
   
       2 . The method according to  claim 1 , wherein the program of instructions is further configured to employ the kernel-level transfer service to provide feedback on at least one of the transfer and the application-specific processing to the one or more applications in response to the transfer or the application-specific processing transitioning into a predetermined state or upon application request. 
   
   
       3 . The method according to  claim 1 , wherein said application-specific processing comprises one or more of:
 performing different procedures for different streams; and   utilizing different configuration parameters for different streams.   
   
   
       4 . The method according to  claim 1 , wherein said application-specific processing comprises one or more of:
 dropping one or more content segments of an input stream;   modifying one or more content segments of an input stream; and   transferring to an output stream one or more content segments not contained in any input stream.   
   
   
       5 . The method according to  claim 1 , wherein the program of instructions is further configured to vary a number of streams subsequent to initiating said application-specific content processing. 
   
   
       6 . The method according to  claim 1 , wherein the program of instructions is further configured to, during the transfer, cause the one or more applications to indicate how the transfer is to proceed if a stream-state change occurs on one or more input or output streams. 
   
   
       7 . The method according to  claim 1 , wherein the one or more applications handle web content. 
   
   
       8 . The method according to  claim 7 , wherein:
 the one or more input streams and the one or more output streams differ in specific encoding characteristics; and   said application-specific processing comprises translating between specific encoding characteristics of the one or more input streams and the one or more output streams.   
   
   
       9 . The method according to  claim 1 , wherein:
 the one or more applications handle media content;   the one or more input streams comprise one or more stream produced by a media source; and   said application-specific processing comprises adding content markers to customize one or more output streams to capabilities of a media consumer.   
   
   
       10 . An apparatus comprising:
 one or more processors; and   a program storage device tangibly embodying a program of instructions, the program of instructions, when executed by the one or more processors, being configured to:   cause a kernel-level transfer service to receive a request from one or more applications for general purpose operating system kernel-level offloading of content transfer between one or more input streams and one or more output streams;   cause the kernel-level transfer service to register one or more application-specific handlers, the one or more application specific handlers being configured to execute application-specific content processing in kernel space;   cause the kernel-level transfer service to invoke the one or more application-specific handlers to execute the application-specific content processing in kernel space; and   cause the kernel-level service to transfer content between the one or more input streams and the one or more output streams.   
   
   
       11 . The apparatus according to  claim 10 , wherein the program of instructions is further configured to employ the kernel-level service to provide feedback on at least one of the transfer and the application-specific processing to the one or more applications in response to the transfer or the application-specific processing transitioning into a predetermined state or upon application request. 
   
   
       12 . The apparatus according to  claim 10 , wherein said application-specific processing comprises one or more of:
 performing different procedures for different streams; and   utilizing different configuration parameters for different streams.   
   
   
       13 . The apparatus according to  claim 10 , wherein said application-specific processing comprises one or more of:
 dropping one or more content segments of an input stream;   modifying one or more content segments of an input stream; and   transferring to an output stream one or more content segments not contained in any input stream.   
   
   
       14 . The apparatus according to  claim 10 , wherein the program of instructions is further configured to vary a number of streams subsequent to initiating said application-specific content processing. 
   
   
       15 . The apparatus according to  claim 10 , wherein the program of instructions is further configured to, during the transfer, cause the one or more applications to indicate how the transfer is to proceed if a stream-state change occurs on one or more input or output streams. 
   
   
       16 . The apparatus according to  claim 10 , wherein the one or more applications handle web content. 
   
   
       17 . The apparatus according to  claim 16 , wherein:
 one or more input streams and one or more output streams differ in specific encoding characteristics; and   said application-specific processing comprises translating between specific encoding characteristics of the one or more input streams and the one or more output streams.   
   
   
       18 . The method according to  claim 10 , wherein:
 the one or more applications handle media content;   the one or more input streams comprise one or more streams produced by a media source; and   said application-specific processing comprises adding content markers to customize one or more output streams to capabilities of a media consumer.   
   
   
       19 . The apparatus according to  claim 10 , wherein the request further comprises: an indication of input and output streams; a pre-registered procedure to be invoked for each input stream; a set of application-specific processing parameters regarding each input stream; a type of transfer termination; one or more content caching requirements; and whether an interaction is synchronous or asynchronous. 
   
   
       20 . A program storage device readable by machine, tangibly embodying a program of instructions executable by the machine to:
 cause a kernel-level transfer service to receive a request from one or more applications for general purpose operating system kernel-level offloading of content transfer between one or more input streams and one or more output streams;   cause the kernel-level transfer service to register one or more application-specific handlers, the one or more application specific handlers being configured to execute application-specific content processing in kernel space;   cause the kernel-level transfer service to invoke the one or more application-specific handlers to execute the application-specific content processing in kernel space; and   cause the kernel-level service to transfer content between the one or more input streams and one or more output streams.

Join the waitlist — get patent alerts

Track US2009292825A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.