Claims Analysis
Total Claims: 9
Claim 1
Independent Claim
400 words
A multi-tasking system in which multiple processes are executed by a central processing unit (CPU) of the system on a time-shared basis using context switching, the context of the CPU being the state of the CPU with respect to a particular process, the switching of the CPU from one process to another process referred to as process switching, said system further comprising at least one device which is connected to the system through a memory management unit (MMU), said device being mapped into the process address space of each process which may access the device, said process address space comprising pages which are grouped into segments, each of said pages having a corresponding valid bit that invokes a page fault if the bit is not set and an attempt is made to access the address space, each of said segments having a page fault handler associated with it which is invoked when a page fault occurs in the segment, said system further comprising a means for synchronizing process access to said device wherein a first process has a high priority associated with it such that it requires exclusive access to the device, said system comprising: means for mapping the device in each process address space such that each device is mapped into a separate segment whereby processes access the device through the address the device is mapped to in its process address space; means for a first process to notify the page fault handler that it requires exclusive access to the device; means for the first process to notify the page fault handler that it completed access to the device; means for initializing the page fault handler, when the first process notifies the page fault handler that it requires exclusive access to the device, means for resetting the valid bits of the process address space corresponding to other processes the device is mapped to; when a process attempts to access the device and the valid bits in the process address space the device is mapped to are reset thereby causing a page fault, putting the process to sleep thereby suspending the process, when the first process notifies the page fault handler that it completed access to the device, setting the valid bits of the process address space corresponding to the other processes the device is mapped to and waking suspended processes; whereby access to the device is synchronized among processes.
Claim 2
Dependent Claim
400 words
A multi-tasking system in which multiple processes are executed by a central processing unit (CPU) of the system on a time-shared basis using context switching, the context of the CPU being the state of the CPU with respect to a particular process, the switching of the CPU from one process to another process referred to as process switching, said system further comprising at least one device which is connected to the system through a memory management unit (MMU), said device being mapped into the process address space of each process which may access the device, said process address space comprising pages which are grouped into segments, each of said pages having a corresponding valid bit that invokes a page fault if the bit is not set and an attempt is made to access the address space, each of said segments having a page fault handler associated with it which is invoked when a page fault occurs in the segment, said system further comprising a means for synchronizing process access to said device wherein a first process has a high priority associated with it such that it requires exclusive access to the device, said system comprising: means for mapping the device in each process address space such that each device is mapped into a separate segment whereby processes access the device through the address the device is mapped to in its process address space; means for a first process to notify the page fault handler that it requires exclusive access to the device; means for the first process to notify the page fault handler that it completed access to the device; means for initializing the page fault handler, when the first process notifies the page fault handler that it requires exclusive access to the device, means for resetting the valid bits of the process address space corresponding to other processes the device is mapped to; when a process attempts to access the device and the valid bits in the process address space the device is mapped to are reset thereby causing a page fault, putting the process to sleep thereby suspending the process, when the first process notifies the page fault handler that it completed access to the device, setting the valid bits of the process address space corresponding to the other processes the device is mapped to and waking suspended processes; whereby access to the device is synchronized among processes.
Claim 3
Dependent Claim
62 words
The multi-tasking system of claim 1 wherein said means for the first process to notify the page fault handler that it completed access to the device notifies the page fault by attempting to access the device through another page of the process address space, which valid bit is reset to zero, thereby causing a page fault and invoking the page fault handler.
Claim 4
Dependent Claim
70 words
The multi-tasking system of claim 1 wherein said means for the first process to notify the page fault handler that it completed access to the device notifies the page fault handler by attempting to access the device through the page of process address space with respect to another process the device is mapped to, which valid bit is reset, thereby causing a page fault and invoking the page fault handler.
Claim 5
Dependent Claim
101 words
The multi-tasking system of claim 1 wherein said means for the first process to notify the page fault handler that it requires exclusive access to the device and completed access to the device comprise: means for writing a semaphore wherein the value of the semaphore indicates whether the first process requires exclusive access to the device or has completed access to the device, the writing of the semaphore causing an interrupt to occur transferring control to interrupt handler means: an interrupt handler means which is invoked when an interrupt occurs, said interrupt handler means transfering control to the page fault handler.
Claim 6
Dependent Claim
395 words
In a multi-tasking system in which multiple processes are executed by a central processing unit (CPU) of the system on a time-shared basis using context switching, the context of the CPU being the state of the CPU with respect to a particular process, the switching of the CPU from one process to another process referred to as process switching, said system further comprising at least one device which is connected to the system through a memory management unit (MMU), said device being mapped into the process address space of each process which may access the device, said process address space comprising pages which are grouped into segments, each of said pages having a corresponding valid bit that invokes a page fault if the bit is not set and an attempt is made to access the address space, each of said segments having a page fault handler associated with it which is invoked when a page fault occurs in the segment, said system further comprising device specific system software used to control the device and a means for synchronizing process access to the device comprising: means for mapping the device in each process address space such that each device is mapped into a separate segment whereby processes access the device through the address the device is mapped to in its address space; means for initializing the device specific system software to transfer control to the page fault handler when a process requests exclusive access to the device; means for initializing the page fault handler to perform predetermined tasks to control the device said tasks comprising; means for resetting the corresponding valid bits in each process address space to which the device is mapped except the process requiring exclusive access to the device, when a process requests exclusive access to the device; means for putting a process to sleep thereby suspending the process and preventing the process from accessing the device when a page fault occurs due to the process attempting to access the device and the corresponding valid bits are reset; and means for setting the corresponding valid bits in each process address space to which the device is mapped and waking up any process put to sleep thereby permitting access to the device, when the process which requested exclusive access to the device completes access to the device; whereby the synchronization of processes is provided.
Claim 7
Dependent Claim
395 words
In a multi-tasking system in which multiple processes are executed by a central processing unit (CPU) of the system on a time-shared basis using context switching, the context of the CPU being the state of the CPU with respect to a particular process, the switching of the CPU from one process to another process referred to as process switching, said system further comprising at least one device which is connected to the system through a memory management unit (MMU), said device being mapped into the process address space of each process which may access the device, said process address space comprising pages which are grouped into segments, each of said pages having a corresponding valid bit that invokes a page fault if the bit is not set and an attempt is made to access the address space, each of said segments having a page fault handler associated with it which is invoked when a page fault occurs in the segment, said system further comprising device specific system software used to control the device and a means for synchronizing process access to the device comprising: means for mapping the device in each process address space such that each device is mapped into a separate segment whereby processes access the device through the address the device is mapped to in its address space; means for initializing the device specific system software to transfer control to the page fault handler when a process requests exclusive access to the device; means for initializing the page fault handler to perform predetermined tasks to control the device said tasks comprising; means for resetting the corresponding valid bits in each process address space to which the device is mapped except the process requiring exclusive access to the device, when a process requests exclusive access to the device; means for putting a process to sleep thereby suspending the process and preventing the process from accessing the device when a page fault occurs due to the process attempting to access the device and the corresponding valid bits are reset; and means for setting the corresponding valid bits in each process address space to which the device is mapped and waking up any process put to sleep thereby permitting access to the device, when the process which requested exclusive access to the device completes access to the device; whereby the synchronization of processes is provided.
Claim 8
Dependent Claim
342 words
In a multi-tasking system in which multiple processes are executed by a central processing unit (CPU) of the system on a time-shared basis using context switching, the context of the CPU being the state of the CPU with respect to a particular process, the switching of the CPU from one process to another process referred to as process switching, said system further comprising at least one device which is connected to the system through a memory management unit (MMU), said device being mapped into the process address space of each process which may access the device, said process address space comprising pages which are grouped into segments, each of said pages having a corresponding valid bit that invokes a page fault if the bit is not set and an attempt is made to access the address space, each of said segments having a page fault handler associated with it which is invoked when a page fault occurs in the segment, a process for synchronizing process access to the device wherein a first process has a high priority associated with it such that it requires exclusive access to the device, comprising the steps of: mapping the device in each process address space such that each device is mapped into a separate segment whereby processes access the device through the address the device is mapped to in its address space; when first process requires exclusive access to the device, resetting the corresponding valid bits of the process address space with respect to other processes the device is mapped to, such that when another process attempts to access the device, a page fault occurs; when a page fault occurs when a process attempts to access a device and the corresponding valid bits are reset; putting the process to sleep thereby suspending the process; setting the valid bits of the process address space corresponding to the other processes the device is mapped to and waking suspended processes, when the first process has completed access to the device; whereby access to the device is synchronized among processes.
Claim 9
Dependent Claim
342 words
In a multi-tasking system in which multiple processes are executed by a central processing unit (CPU) of the system on a time-shared basis using context switching, the context of the CPU being the state of the CPU with respect to a particular process, the switching of the CPU from one process to another process referred to as process switching, said system further comprising at least one device which is connected to the system through a memory management unit (MMU), said device being mapped into the process address space of each process which may access the device, said process address space comprising pages which are grouped into segments, each of said pages having a corresponding valid bit that invokes a page fault if the bit is not set and an attempt is made to access the address space, each of said segments having a page fault handler associated with it which is invoked when a page fault occurs in the segment, a process for synchronizing process access to the device wherein a first process has a high priority associated with it such that it requires exclusive access to the device, comprising the steps of: mapping the device in each process address space such that each device is mapped into a separate segment whereby processes access the device through the address the device is mapped to in its address space; when first process requires exclusive access to the device, resetting the corresponding valid bits of the process address space with respect to other processes the device is mapped to, such that when another process attempts to access the device, a page fault occurs; when a page fault occurs when a process attempts to access a device and the corresponding valid bits are reset; putting the process to sleep thereby suspending the process; setting the valid bits of the process address space corresponding to the other processes the device is mapped to and waking suspended processes, when the first process has completed access to the device; whereby access to the device is synchronized among processes.