Cross-domain data transfer using deferred page remapping

Electrical computers and digital processing systems: multicomput – Computer-to-computer data routing – Least weight routing

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C709S241000

Reexamination Certificate

active

06256657

ABSTRACT:

BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to data transfer across domains, and more particularly, to data transfer across a number of different protection domains using page remapping.
2. Description of the Related Art
Operating systems that utilize different protection domains require a data transfer scheme to transfer data from one domain (sender or source) to another domain (receiver or sink). The operating system is responsible for not only the transfer of the data from one domain to another but also insuring that the protection or security information is updated so that processes running in a certain domain will not interfere with processes running in other domains.
Through use of multiprogramming, modern computer systems are able to execute several processes at essentially the same time. With multiprogramming, the computer (e.g., CPU) and the memory are time shared amongst the several users (i.e., processes), thereby giving the illusion that all users have their own machine. Computers which use multiprogramming usually also provide for a sharing of code and data between processes. Such sharing allows communication between the processes and can reduce the number of copies of identical information being stored.
Despite the ability to share code and data between processes, often times data must be transferred from one domain to another domain. Simply copying the data from the sender domain to the receiver domain is unacceptable because it is so inefficient and burdensome to the computer and the memory that they become a bottleneck. As networks become faster, this bottleneck worsens because when data is copied, every word passes through the computer and the memory.
Prior attempts to minimize data transfer overhead associated with the transfer of data between different protection domains in an operating system have typically used virtual memory remapping techniques. Virtual memory remapping techniques give the appearance of data transfer by remapping data pages from the sender domain to the receiver domain. See, e.g., S.-Y. Tzou and D. P. Anderson, “The Performance of Message-passing using Restricted Virtual Memory Remapping,”
Software
-
Practice and Experience
, Vol. 21, March 1991. Here, instead of copying the data across domains, virtual memory remapping techniques are used to update page table entries in a memory-management unit (MMU).
However, in reality, simulating the data transfer by conventional virtual memory remapping techniques requires a lot more work than simply updating page table entries within the MMU. Typically, the operating system has to manage buffers at the source and destination, update virtual mappings at several levels, and perform translation-lookaside buffer (TLB) consistency actions. As a result, the total work involved with remapping can be expensive.
Recently, proposals have been made which attempt to cut down the number of page remapping operations required for data transfer across different domains. See, e.g., Peter Druschel and Larry L. Peterson, “Fbufs: A High-Bandwidth Cross-Domain Transfer Function,”
Proceedings of the Fourteenth ACM Symposium on Operating Systems Principals
, December 1993. However, these recent proposals are unsatisfactory because they require deviation from existing UNIX networking I/O interface, require special hardware support and/or compromise data protection or security.
Thus, there is a need for a cross-domain data transfer technique which does not require extensive page remapping operations, yet maintains data protection and security and works with existing network interfaces without the need for special hardware support.
SUMMARY OF THE INVENTION
Broadly speaking, the invention is a cross-domain data transfer technique in which page remapping operations are eliminated in situations where physical memory addresses can be passed across domains. By passing physical memory addresses across domains instead of virtual memory addresses, the page remapping operations necessarily associated with passing virtual memory addresses across domains can be avoided in many cases.
There are two primary aspects to the invention. The first aspect pertains to the receipt of data across domains, and the second aspect pertains to the transmission of data across domains. With the receipt of data across domains, the remapping operations are able to be deferred until the data is received in a domain that needs to touch the data. In certain cases, the transfer of data can be completed without ever having to map in the data to the receiving domain's address space. With the transmission of data across domains, where possible the pages are borrowed in their physical form. The invention can be embodied in many ways, including system, apparatus, method or computer program product forms.
As a computer system, an embodiment of the invention includes a network adapter that connects to a network, the network adapter including circuitry for performing data checksum operations; a computer and an operating system arranged to support multiple processes and multiple domains; a main memory having at least a portion thereof arranged in pages; and a virtual memory management unit for managing reads and writes to the memory using page mapping information. Pages are fixed size blocks or chunks of memory. The operating system controls ownership of the pages in the memory using page ownership information. Further, the computer system enables the receipt of a physical page of data transferred between domains by reassigning ownership of the physical page within the page ownership information without updating the page mapping information associated with the virtual memory management unit until the domain obtaining ownership needs to read the data. Additionally, the computer system may further enables the transmission of a physical page of data across domains by borrowing the physical page.
As a method associated with the first aspect of the invention, the invention operates within a multitasking computer system having an operating system supporting multiple domains and virtual memory to transfers a block of data associated with a first domain to a second domain. The method includes the steps of: receiving a request at a first domain from a second domain for a physical block of data residing on a portion of physical memory assigned to the first domain; and flipping ownership of the physical block of data requested from the first domain to the second domain with a physical block of data residing on a portion of physical memory assigned to the second domain, thereby transferring the physical blocks of data between the first and second domains without having to map in the physical blocks into the virtual memory. Preferably, the operating system includes an operating system kernal, and the operating system kernal performs the flipping. Also, as an example, the first domain may be a network domain and the second domain may be a kernal domain.
As a method associated with the second aspect of the invention, the invention operates within a multitasking computer system having an operating system supporting multiple domains and virtual memory to transfers a block of data associated with a second domain to a first domain. The method includes the steps of: receiving a write request to write data residing on a physical page of memory associated with the second domain to the first domain; borrowing, by the first domain, the physical page from the second domain for use by the second domain; and returning the borrowed physical page to the second domain after the first domain has finished using the borrowed physical page. The method may also include the steps of: locking ownership of the borrowed page while the physical page is being borrowed, and providing read-only access to the borrowed page from the second domain while the physical page is being borrowed. Again, as an example, the first domain may be a network domain and the second domain may be a kernal domain. domain.
Other aspects and advantages of the invention will become ap

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Cross-domain data transfer using deferred page remapping does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Cross-domain data transfer using deferred page remapping, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Cross-domain data transfer using deferred page remapping will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-2506724

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.