US6195710B1 - Operating system having shared personality neutral resources - Google Patents
Operating system having shared personality neutral resources Download PDFInfo
- Publication number
- US6195710B1 US6195710B1 US08/489,540 US48954095A US6195710B1 US 6195710 B1 US6195710 B1 US 6195710B1 US 48954095 A US48954095 A US 48954095A US 6195710 B1 US6195710 B1 US 6195710B1
- Authority
- US
- United States
- Prior art keywords
- personality
- data processing
- personalities
- processing system
- application programming
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/468—Specific access rights for resources, e.g. using capability register
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5022—Mechanisms to release resources
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/542—Event management; Broadcasting; Multicasting; Notifications
Definitions
- This invention pertains in general to data processing systems and more particularly to operating systems and yet more particularly to operating systems having a plurality of operating system personalities.
- a data processing system is typically controlled by an operating system (“OS”).
- OS is software that controls the execution of programs and provides services such as resource allocation, scheduling, input/output control and data management.
- OSs There are many different types of OSs, including AIX, DOS, and OS/2.
- Each type of OS has its own components for directing and managing resources in the data processing system. For example, AIX, DOS, and OS/2 each support character mode applications. Although each OS supports the same character mode features and screen attributes, each OS has a different internal representation of the screen content.
- each OS has an event queue for accepting input to the data processing system from sources such as a keyboard or mouse.
- Each OS provides some form of keyboard translation support and varying support for generic input event processing. However, each OS implements its queue and other input invent processing in a different manner.
- a data processing system using a microkernel based OS can support various OS “personalities.” Each personality is a separate full-fledged version of an OS such as AIX, DOS, or OS/2.
- OSs can coexist on a single data processing system and the microkemel OS manages their coexistence.
- a program in one personality has difficulty accessing resources in another. Specifically, a program attempting to read the contents of a character mode window in a different personality must know how to interpret that personality's internal character window structure. For example, IBM's SCREEN READER program assists visually-impaired persons by speaking the contents of a character mode window. SCREEN READER must have separate program components to read the contents of OS/2, DOS, and AIX character windows. Each component must be programmed separately and increases the size and complexity of SCREEN READER.
- Each input source such as a mouse, must have a device driver capable of translating its input into each personality's queue. Implementing this capability adds size and complexity to the device driver.
- a data processing system having shared, distributed personality neutral resources managed by a microkernel based operating system.
- the microkernel supports multiple personalities and manages common resources accessible to all personalities.
- the microkemel has a logical video buffer service that manages the creation, deletion, and maintenance of logical video buffers. Each personality uses the logical video buffers to store its character mode screen displays. The service maintains a handle to each logical video buffer that is accessible by all personalities.
- the microkernel also has an event window server that creates input queues and provides them to the personalities.
- the event window server receives all system input and places it into the appropriate personality's queue.
- the event window server provides APIs allowing personalities to read input queues, remove events from the queues, inject input events into the event window server, and register hot keys.
- FIG. 1 shows a data processing system embodying the present invention
- FIG. 2 shows a block diagram of the relevant logical components of an operating system embodying the present invention
- FIG. 3 shows a block diagram of the logical components associated with the logical video buffer pool
- FIG. 4 shows a block diagram of the logical components associated with the event window server.
- FIG. 1 illustrates a typical hardware configuration of a workstation in accordance with the subject invention having at least one central processing unit 10 , such as a conventional microprocessor, and a number of other units interconnected via system bus 12 .
- central processing unit 10 such as a conventional microprocessor
- system bus 12 interconnects system bus 12 .
- RAM random access memory
- ROM read only memory
- I/O input/output
- user interface adapter 22 for connecting keyboard 24 , mouse 26 , speaker 28 , microphone 32 , and/or other user interface devices such as a touch screen device (not shown) to bus 12
- communication adapter 34 for connecting the workstation to a data processing network
- display adapter 36 for connecting bus 12 to display device 38 .
- Each peripheral device 18 - 38 has a device driver (not shown on FIG. 1) that enables the peripheral device to communicate with the data processing system.
- the device drivers are stored in RAM 16 , ROM 14 , or in hardware associated with their respective peripheral devices.
- FIG. 2 shows a typical configuration of an operating system (“OS”) in accordance with the present invention.
- a base OS 210 preferably a microkernel OS, resides on disk unit 20 and in RAM 16 while being executed by CPU 10 .
- the base OS 210 controls the low-level aspects of the data processing system.
- the base OS 210 simultaneously supports several different OS personalities, such as OS/2 212 , DOS 214 , and AIX 216 .
- each personality runs multiple application programs, or tasks (not shown).
- Each personality also supports character mode (non-graphical) applications shown in windows on display device 38 and receives input through its own input queue.
- One personality is the dominant personality. The dominant personality controls the boot process and other tasks involved in managing the OS.
- each personality 212 - 216 has aspects not shown in FIG. 2 .
- OS/2 212 has a graphical user interface (“GUI”) called Presentation Manager.
- GUI graphical user interface
- OS/2 212 also supports windowed and full screen 38 character mode applications.
- AIX 216 supports a GUI called X Windows and character mode sessions such as xterm and AIXterm.
- DOS 214 in contrast to OS/2 212 and AIX 216 , supports only character mode sessions, although DOS 214 tasks may use graphics.
- Logical Video Buffer Pool (“LVBP”) 218 and Event Window Server (“EWS”) 220 are also shown in FIG. 2 .
- These two components 218 , 220 are personality neutral (“PN”) and are used to simplify communications between base OS 210 and the personalities 212 - 216 and among the personalities 212 - 216 themselves.
- PN personality neutral
- Personalities 212 - 216 or tasks executing within a personality may request access to a PN resource 218 , 220 .
- any personality, task, or other component accessing a PN resource is called a “client.”
- FIG. 3 shows a detailed view of the logical components associated with LVBP 218 . Shown in FIG.
- LVBP 218 Logical Video Buffer Pool Service (“LVBPS”) 310 , OS/2 212 , DOS 214 , and AIX 216 personalities, and Screen Reader client 316 .
- LLBPS Logical Video Buffer Pool Service
- OS/2 212 OS/2 212
- DOS 214 DOS 214
- AIX 216 AIX 216 personalities
- Screen Reader client 316 is shown as a discrete component, in reality it is a task running within one of the personalities 212 - 216 .
- LVBP 218 is stored in RAM 16 .
- LVBP 218 is comprised of a plurality of Logical Video Buffers (“LVB”).
- a LVB is a PN architected data structure representing the contents of a character mode window on display device 38 .
- the LVB data structure supports cursor positioning, character attributes, and other LVB state requirements required by clients.
- LVBPS 310 is actually a collection of program libraries that manage the creation, deletion and maintenance of LVBs. Accordingly, LVBPS 310 is responsible for maintaining LVBP 218 . LVBPS 310 treats each LVB in the pool 218 as a system resource similar, for example, to a data file. In addition, LVBPS 310 maintains a system-wide shared handle to each LVB in the pool 218 .
- a client requiring a LVB requests it from LVBPS 310 .
- LVBPS 310 then grants a LVB 312 to the client 216 by allocating memory for the LVB 312 and mapping it to that client's 216 address space.
- a client can request a LVB from EWS 220 .
- EWS 220 utilizes LVBPS 310 and returns a LVB to the client.
- the client 216 can then access the LVB 312 using its own character mode Application Programming Interface (“API”).
- API Application Programming Interface
- the client 216 may attach the LVB 312 to a graphics subsystem, to a video device interface, to a program that writes the contents to a file, or simply leave it detached.
- LVBPS 310 provides an API by which clients can access the handles of granted LVBs.
- another client in the data processing system such as SCREEN READER 316 , can use the API to request access to LVB 312 .
- LVBPS 310 provides handle 314 to client 316 , thereby allowing client 316 to access the contents of LVB 312 .
- the client 316 is then free to perform actions such as writing the contents of LVB 312 to a file, distributing the contents to another system or task, or sending the contents to a text to speech system.
- FIG. 4 shows a detailed view of the logical components associated with EWS 220 . Shown are device driver (“DD”) 410 , input queue pool 412 , and event translation and interpretation modules 414 .
- DD 410 represents the numerous peripheral DDs found in a typical data processing system. Also shown are input queues 416 - 420 of the various personalities 212 - 216 .
- EWS 220 is a PN component of OS 210 . Similar to LVBPS 218 , EWS 220 maintains a pool 412 of input queues and assigns at least one queue to each personality. Each input queue is identified by a system wide shared handle. Queue handles are available to clients through an EWS 220 API.
- EWS 220 provides a single point 422 in the data processing system to handle all system input.
- EWS 220 can receive input events either from a peripheral DD 410 or programmatically from a client using an EWS 220 API.
- EWS 220 processes the event using its event translation and interpretation modules 414 . These modules convert the raw input event into a higher level representation such as a character encoding.
- EWS 220 packages the event data into a comprehensive event packet that can be understood and processed by a personality.
- EWS 220 determines into which queue it should place the packet. Normally, the packet will go to the personality having the input focus, as determined by the dominant personality.
- the dominant personality or any client can use an EWS 220 API to implement hot keys.
- the API allows the clients to register hot keys with associated functions.
- the dominant personality can register the ALT-ESC key combination to cause the input focus to switch to another personality.
- EWS 220 receives a hot key as input, it performs the assigned function.
- EWS 220 provides several APIs to clients. Clients can programmatically insert events into the system using an EWS 220 API. Clients can also use an EWS 220 API to gain access to a queue handle. Once the client has the handle, it can read and capture events in the queue. Another EWS 220 API allows clients to register hot keys and associated functions.
- clients can access a personality's input queue in a PN manner.
- an automatic testing program can insert keystrokes into a personality's input queue.
- a single version of the testing program can be used to test DOS, OS/2, and AIX programs.
- support for uncommon input devices, such as Special Needs devices and pens can easily be adapted to work with all personalities in the data processing system by providing DDs to input events into EWS 220 , rather than a DD for each personality.
Abstract
Description
Claims (18)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/489,540 US6195710B1 (en) | 1995-06-12 | 1995-06-12 | Operating system having shared personality neutral resources |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/489,540 US6195710B1 (en) | 1995-06-12 | 1995-06-12 | Operating system having shared personality neutral resources |
Publications (1)
Publication Number | Publication Date |
---|---|
US6195710B1 true US6195710B1 (en) | 2001-02-27 |
Family
ID=23944293
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US08/489,540 Expired - Fee Related US6195710B1 (en) | 1995-06-12 | 1995-06-12 | Operating system having shared personality neutral resources |
Country Status (1)
Country | Link |
---|---|
US (1) | US6195710B1 (en) |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030182464A1 (en) * | 2002-02-15 | 2003-09-25 | Hamilton Thomas E. | Management of message queues |
US20040010591A1 (en) * | 2002-07-11 | 2004-01-15 | Richard Sinn | Employing wrapper profiles |
US20040010519A1 (en) * | 2002-07-11 | 2004-01-15 | Sinn Richard P. | Rule based data management |
US20040010791A1 (en) * | 2002-07-11 | 2004-01-15 | Vikas Jain | Supporting multiple application program interfaces |
US20040010520A1 (en) * | 2002-07-11 | 2004-01-15 | Andy Tsang | Portal bridge |
US6707477B1 (en) * | 1996-01-29 | 2004-03-16 | Sun Microsystems, Inc. | Method and apparatus for executing and displaying output of an environment in a host environment |
US20050080792A1 (en) * | 2003-10-09 | 2005-04-14 | Ghatare Sanjay P. | Support for RDBMS in LDAP system |
US20050080766A1 (en) * | 2003-10-09 | 2005-04-14 | Ghatare Sanjay P. | Partitioning data access requests |
US20050080791A1 (en) * | 2003-10-09 | 2005-04-14 | Ghatare Sanjay P. | Translating data access requests |
US20050120349A1 (en) * | 1995-07-17 | 2005-06-02 | Trepton Research Group | Shared virtual desktop collaborative application system |
US20060143381A1 (en) * | 2003-06-18 | 2006-06-29 | Akihiro Mori | System and method for accessing an offline storage unit through an online storage unit |
US20070168530A1 (en) * | 2002-07-11 | 2007-07-19 | Oracle International Corporation | Identifying dynamic groups |
US7428592B2 (en) | 2002-07-11 | 2008-09-23 | Oracle International Corporation | Securely persisting network resource identifiers |
US7447701B2 (en) | 2002-07-11 | 2008-11-04 | Oracle International Corporation | Automatic configuration of attribute sets |
US7512585B2 (en) | 2002-07-11 | 2009-03-31 | Oracle International Corporation | Support for multiple mechanisms for accessing data stores |
US20100077055A1 (en) * | 2008-09-23 | 2010-03-25 | Joseph Chyam Cohen | Remote user interface in a terminal server environment |
US7975117B2 (en) | 2003-03-24 | 2011-07-05 | Microsoft Corporation | Enforcing isolation among plural operating systems |
US20220114271A1 (en) * | 2020-10-14 | 2022-04-14 | International Business Machines Corporation | Secure data storage device access control and sharing |
US11520597B2 (en) * | 2019-06-21 | 2022-12-06 | Limited Liability Company “Peerf” | Operating system architecture for microkernel generations support |
Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4757441A (en) * | 1985-02-28 | 1988-07-12 | International Business Machines Corporation | Logical arrangement for controlling use of different system displays by main proessor and coprocessor |
US4937036A (en) * | 1986-04-28 | 1990-06-26 | Xerox Corporation | Concurrent display of data from two different display processors and user interface therefore |
US5113180A (en) * | 1988-04-20 | 1992-05-12 | International Business Machines Corporation | Virtual display adapter |
US5218697A (en) * | 1990-04-18 | 1993-06-08 | Microsoft Corporation | Method and system for networking computers having varying file architectures |
US5228137A (en) * | 1985-10-29 | 1993-07-13 | Mitem Corporation | Method for controlling execution of host computer application programs through a second computer by establishing relevant parameters having variable time of occurrence and context |
US5233611A (en) * | 1990-08-20 | 1993-08-03 | International Business Machines Corporation | Automated function testing of application programs |
US5289574A (en) * | 1990-09-17 | 1994-02-22 | Hewlett-Packard Company | Multiple virtual screens on an "X windows" terminal |
US5481719A (en) * | 1994-09-09 | 1996-01-02 | International Business Machines Corporation | Exception handling method and apparatus for a microkernel data processing system |
US5530869A (en) * | 1994-11-30 | 1996-06-25 | Salle; Donald A. | System and method for locating and implementing commands without invoking a menu hierarchy |
US5553291A (en) * | 1992-09-16 | 1996-09-03 | Hitachi, Ltd. | Virtual machine control method and virtual machine system |
US5566337A (en) * | 1994-05-13 | 1996-10-15 | Apple Computer, Inc. | Method and apparatus for distributing events in an operating system |
US5668997A (en) * | 1994-10-25 | 1997-09-16 | Object Technology Licensing Corp. | Object-oriented system for servicing windows |
US5673403A (en) * | 1992-11-13 | 1997-09-30 | International Business Machines Corporation | Method and system for displaying applications of different operating systems on a single system using the user interface of the different operating systems |
US5680551A (en) * | 1993-10-21 | 1997-10-21 | Sybase, Inc. | Electronic messaging method of and system for heterogeneous connectivity and universal and generic interfacing for distributed applications and processes residing in wide variety of computing platforms and communication transport facilities |
US5715459A (en) * | 1994-12-15 | 1998-02-03 | International Business Machines Corporation | Advanced graphics driver architecture |
US5715474A (en) * | 1992-04-30 | 1998-02-03 | Motorola, Inc. | Simultaneous control of radio frequency modem in a multi-tasking system using a single session manager program with separate command queue for each application program |
US5764984A (en) * | 1993-02-26 | 1998-06-09 | International Business Machines Corporation | System for multiple co-existing operating system personalities on a microkernel |
-
1995
- 1995-06-12 US US08/489,540 patent/US6195710B1/en not_active Expired - Fee Related
Patent Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4757441A (en) * | 1985-02-28 | 1988-07-12 | International Business Machines Corporation | Logical arrangement for controlling use of different system displays by main proessor and coprocessor |
US5228137A (en) * | 1985-10-29 | 1993-07-13 | Mitem Corporation | Method for controlling execution of host computer application programs through a second computer by establishing relevant parameters having variable time of occurrence and context |
US4937036A (en) * | 1986-04-28 | 1990-06-26 | Xerox Corporation | Concurrent display of data from two different display processors and user interface therefore |
US5113180A (en) * | 1988-04-20 | 1992-05-12 | International Business Machines Corporation | Virtual display adapter |
US5218697A (en) * | 1990-04-18 | 1993-06-08 | Microsoft Corporation | Method and system for networking computers having varying file architectures |
US5233611A (en) * | 1990-08-20 | 1993-08-03 | International Business Machines Corporation | Automated function testing of application programs |
US5289574A (en) * | 1990-09-17 | 1994-02-22 | Hewlett-Packard Company | Multiple virtual screens on an "X windows" terminal |
US5715474A (en) * | 1992-04-30 | 1998-02-03 | Motorola, Inc. | Simultaneous control of radio frequency modem in a multi-tasking system using a single session manager program with separate command queue for each application program |
US5553291A (en) * | 1992-09-16 | 1996-09-03 | Hitachi, Ltd. | Virtual machine control method and virtual machine system |
US5673403A (en) * | 1992-11-13 | 1997-09-30 | International Business Machines Corporation | Method and system for displaying applications of different operating systems on a single system using the user interface of the different operating systems |
US5764984A (en) * | 1993-02-26 | 1998-06-09 | International Business Machines Corporation | System for multiple co-existing operating system personalities on a microkernel |
US5680551A (en) * | 1993-10-21 | 1997-10-21 | Sybase, Inc. | Electronic messaging method of and system for heterogeneous connectivity and universal and generic interfacing for distributed applications and processes residing in wide variety of computing platforms and communication transport facilities |
US5566337A (en) * | 1994-05-13 | 1996-10-15 | Apple Computer, Inc. | Method and apparatus for distributing events in an operating system |
US5481719A (en) * | 1994-09-09 | 1996-01-02 | International Business Machines Corporation | Exception handling method and apparatus for a microkernel data processing system |
US5668997A (en) * | 1994-10-25 | 1997-09-16 | Object Technology Licensing Corp. | Object-oriented system for servicing windows |
US5530869A (en) * | 1994-11-30 | 1996-06-25 | Salle; Donald A. | System and method for locating and implementing commands without invoking a menu hierarchy |
US5715459A (en) * | 1994-12-15 | 1998-02-03 | International Business Machines Corporation | Advanced graphics driver architecture |
Non-Patent Citations (9)
Title |
---|
"Windows NT and Workplace OS: Plug it in", Byte Magazine (online) Jan. 1994. * |
Camp et al, "Microkernels: A Submodule for Tradinal Operating Systems Course" ACM pp. 154-158, Mar. 1995. * |
Cortese, Amy; OS/2 Workplace to Offer Multiple Personalities; PC Week, v10, n10, p. 67(2); Mar. 15, 1993. * |
Gingell et al, "Shared Libraries in Sun OS" USENIX 1987 pp. 131-145, Jun. 1987. * |
Julin et al; "Generalized Emulation Services for Mach 3.0 Overview" USENIX, Nov. 1991. * |
Norr, Henry; Apple Aims for Mainstream with Power PC Licensing; MacWeek, v7, n38, p. 1(2); Sep. 27, 1993. * |
Seltzer, Larry, "Workplace OS will change OS/2 development", PC Week, v11, n21, p. 79(1), May 30, 1994. * |
Seltzer, Larry; "Workplace OS details emerge", PC Week, v11, n20, p. 121(2), May 23, 1994. * |
Varhol, Peter, "Small Kernels Hit It Big", Byte, Jan. 1994. * |
Cited By (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050120349A1 (en) * | 1995-07-17 | 2005-06-02 | Trepton Research Group | Shared virtual desktop collaborative application system |
US6707477B1 (en) * | 1996-01-29 | 2004-03-16 | Sun Microsystems, Inc. | Method and apparatus for executing and displaying output of an environment in a host environment |
US20030182464A1 (en) * | 2002-02-15 | 2003-09-25 | Hamilton Thomas E. | Management of message queues |
US7613794B2 (en) | 2002-07-11 | 2009-11-03 | Oracle International Corporation | Identifying dynamic groups |
US7428523B2 (en) | 2002-07-11 | 2008-09-23 | Oracle International Corporation | Portal bridge |
US20040010791A1 (en) * | 2002-07-11 | 2004-01-15 | Vikas Jain | Supporting multiple application program interfaces |
US8375113B2 (en) | 2002-07-11 | 2013-02-12 | Oracle International Corporation | Employing wrapper profiles |
US20040010519A1 (en) * | 2002-07-11 | 2004-01-15 | Sinn Richard P. | Rule based data management |
US7478407B2 (en) * | 2002-07-11 | 2009-01-13 | Oracle International Corporation | Supporting multiple application program interfaces |
US20040010591A1 (en) * | 2002-07-11 | 2004-01-15 | Richard Sinn | Employing wrapper profiles |
US7467142B2 (en) | 2002-07-11 | 2008-12-16 | Oracle International Corporation | Rule based data management |
US20070168530A1 (en) * | 2002-07-11 | 2007-07-19 | Oracle International Corporation | Identifying dynamic groups |
US7512585B2 (en) | 2002-07-11 | 2009-03-31 | Oracle International Corporation | Support for multiple mechanisms for accessing data stores |
US20040010520A1 (en) * | 2002-07-11 | 2004-01-15 | Andy Tsang | Portal bridge |
US7428592B2 (en) | 2002-07-11 | 2008-09-23 | Oracle International Corporation | Securely persisting network resource identifiers |
US7447701B2 (en) | 2002-07-11 | 2008-11-04 | Oracle International Corporation | Automatic configuration of attribute sets |
US7975117B2 (en) | 2003-03-24 | 2011-07-05 | Microsoft Corporation | Enforcing isolation among plural operating systems |
US20060143381A1 (en) * | 2003-06-18 | 2006-06-29 | Akihiro Mori | System and method for accessing an offline storage unit through an online storage unit |
US20050080766A1 (en) * | 2003-10-09 | 2005-04-14 | Ghatare Sanjay P. | Partitioning data access requests |
US7340447B2 (en) | 2003-10-09 | 2008-03-04 | Oracle International Corporation | Partitioning data access requests |
US7882132B2 (en) | 2003-10-09 | 2011-02-01 | Oracle International Corporation | Support for RDBMS in LDAP system |
US7904487B2 (en) | 2003-10-09 | 2011-03-08 | Oracle International Corporation | Translating data access requests |
US20050080791A1 (en) * | 2003-10-09 | 2005-04-14 | Ghatare Sanjay P. | Translating data access requests |
US20050080792A1 (en) * | 2003-10-09 | 2005-04-14 | Ghatare Sanjay P. | Support for RDBMS in LDAP system |
US20100077055A1 (en) * | 2008-09-23 | 2010-03-25 | Joseph Chyam Cohen | Remote user interface in a terminal server environment |
US8549093B2 (en) | 2008-09-23 | 2013-10-01 | Strategic Technology Partners, LLC | Updating a user session in a mach-derived system environment |
US8924502B2 (en) | 2008-09-23 | 2014-12-30 | Strategic Technology Partners Llc | System, method and computer program product for updating a user session in a mach-derived system environment |
USRE46386E1 (en) | 2008-09-23 | 2017-05-02 | Strategic Technology Partners Llc | Updating a user session in a mach-derived computer system environment |
US11520597B2 (en) * | 2019-06-21 | 2022-12-06 | Limited Liability Company “Peerf” | Operating system architecture for microkernel generations support |
US20220114271A1 (en) * | 2020-10-14 | 2022-04-14 | International Business Machines Corporation | Secure data storage device access control and sharing |
US11907405B2 (en) * | 2020-10-14 | 2024-02-20 | International Business Machines Corporation | Secure data storage device access control and sharing |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6195710B1 (en) | Operating system having shared personality neutral resources | |
US5337412A (en) | Method and apparatus for substituting real and virtual devices independent from an data processing system application program | |
US5313581A (en) | System and method for communication between windowing environments | |
US5289574A (en) | Multiple virtual screens on an "X windows" terminal | |
EP0469709B1 (en) | System and method for emulating a window management environment having a uniform windowing interface | |
US7200695B2 (en) | Method, system, and program for processing packets utilizing descriptors | |
US7356775B2 (en) | Focus priority in window management | |
US5226160A (en) | Method of and system for interactive video-audio-computer open architecture operation | |
US5856826A (en) | Method and apparatus for organizing window groups and windows in a table | |
US5430465A (en) | Apparatus and method for managing the assignment of display attribute identification values and multiple hardware color look-up tables | |
US6229537B1 (en) | Hosting windowed objects in a non-windowing environment | |
US20050240944A1 (en) | Method and apparatus for adapting and hosting legacy user interface controls | |
JPH07121373A (en) | Data processing system and its operating method | |
JPH1078882A (en) | Hardware resource manager | |
US20210303371A1 (en) | Container framework for user-defined functions | |
EP0644483A1 (en) | Computer system and method for performing multiple tasks | |
CN111679911B (en) | Management method, device, equipment and medium of GPU card in cloud environment | |
US6877098B1 (en) | System and method for directing access from a framebuffer to a virtual framebuffer when the framebuffer is powered off in a power management mode | |
CN107918613B (en) | Solid state disk access method according to service quality and device using same | |
US6532487B1 (en) | Method and system for managing semaphores in an object-oriented multi-tasking computer system | |
KR101535792B1 (en) | Apparatus for configuring operating system and method thereof | |
US5692191A (en) | Address space utilization in a distributed data processing system | |
KR20100090328A (en) | Method and system for displaying screen of merged application in mobile communication terminal | |
Unwana et al. | A Study of the Importance of Operating System (OS) in a Computer System | |
Coutinho et al. | VITRAL-a text mode window manager for real-time embedded kernels |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: INTERNATIONAL BUSINESS MACHINES CORPORATION, NEW Y Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BORGENDALE, KENNETH W.;HOLLAND, IAN M.;LAWRENCE, KELVIN R.;REEL/FRAME:007563/0380 Effective date: 19950612 |
|
FEPP | Fee payment procedure |
Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
CC | Certificate of correction | ||
REMI | Maintenance fee reminder mailed | ||
FPAY | Fee payment |
Year of fee payment: 4 |
|
SULP | Surcharge for late payment | ||
FPAY | Fee payment |
Year of fee payment: 8 |
|
REMI | Maintenance fee reminder mailed | ||
LAPS | Lapse for failure to pay maintenance fees | ||
STCH | Information on status: patent discontinuation |
Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362 |
|
FP | Lapsed due to failure to pay maintenance fee |
Effective date: 20130227 |