Abstract: A method and apparatus for distinguishing reference values from non-reference values in a runtime environment is described. A set of volatile registers and a set of non-volatile registers are statically determined. The set of volatile registers is partitioned into reference and non-reference register partitions statically. The set of non-volatile registers is partitioned into reference and non-reference partitions dynamically.
Abstract: A DVD authoring system in a processor-based system removes an author from consideration of the DVD Specification during authoring. According to a preferred embodiment, the authoring system provides an authoring engine having an interactive graphical authoring interface, a data management engine, an emulator, a compiler, a multiplexer and a simulator. Using summary authoring data, the compiler builds a skeleton-form PGC layout structure comprising control PGC abstractions and router PGC abstractions. The compiler then resolves the PGC abstractions according to source-target connections. During playback on a DVD player, the PGC abstractions form elements in a connection-switching abstraction superstructure. Accordingly, in response to DVD-consumer and other control events, a source PGC preferably determines target PGC information and then transfers control, via virtual connections through necessary router PGC abstractions, to a target PGC abstraction.
Abstract: A method and apparatus are provided for performing need based synchronization of a time clock maintained by a computer system. A number of computer systems are connected to a network, such as the Internet. Each computer system synchronizes its time clock by accessing a time server via the network. The time server may service a large number of client computer systems for purposes of providing accurate time of day readings and may therefore be subject to substantial loading. Accordingly, in each client system, the time clock is synchronized at least twice, and an amount of drift in the time clock is determined based on the two or more synchronizations. The synchronization interval for future synchronizations of the clock or the specific time of the next synchronization is then determined based upon the amount of drift, such that the time clock of each client computer system is synchronized only when necessary, and such that the loading on the time server is reduced.
Abstract: An arbiter arbitrates between PCI agents within an ASIC. The ASIC interfaces with an external PCI bus. In operation, the arbiter receives request signals from the PCI agents, and in response thereto, generates a single external request signal. Once the grant is received by the ASIC, the arbiter will route it to a selected PCI agent. The selected agent then gains access to the PCI bus and all other agents are locked out until the transaction is completed. The arbiter is implemented in such a way that there is a minium delay between the generation of the request by any agent and the request sent out by the ASIC. This is performed by ORing all requests.
Abstract: A lookup operation is carried out on a data table by logically dividing the data table into a number of smaller sets of data that can be indexed with a single byte of data. Each set of data consists of two vectors, which constitute the operands for a permute instruction. Only a limited number of bits are required to index into the table during the execution of this instruction. The remaining bits of each index are used as masks into a series of select instructions. The select instruction chooses between two vector components, based on the mask, and places the selected components into a new vector. The mask is generated by shifting one of the higher order bits of the index to the most significant position, and then propagating that bit throughout a byte, for example by means of an arithmetic shift. This procedure is carried out for all of the index bytes in the vector, to generate a select mask.
Abstract: Improved housings for computing devices are disclosed. One improvement pertains to a multi-axis ventilation system. Another improvement pertains to a push button latch for a portable computer. Still another improvement pertains to a media bay ejection system provided with a dampener. These improvements can be provided separately or in any combination in a given computing device.
Type:
Application
Filed:
February 15, 2002
Publication date:
August 22, 2002
Applicant:
Apple Computer, Inc.
Inventors:
John C. DiFonzo, Andy Johnston, Sung H. Kim, Bart Andre
Abstract: Methods and apparatuses for controlling power consumption in a digital processing system. In one aspect of the invention, an exemplary method includes using a non-volatile memory of the digital processing system (DPS) as a virtual memory of a volatile random access memory (RAM) of the DPS, determining a selection of a reduced power consumption state, storing, in response to the selection and through a virtual memory process, data from the volatile RAM to the non-volatile memory, and reducing power to at least one element of the data processing system after the storing, wherein the storing includes determining whether to store the data to the non-volatile memory by determining if first data previously stored as virtual memory in the non-volatile memory is valid (not dirty) after the selection.
Type:
Grant
Filed:
September 30, 1999
Date of Patent:
August 20, 2002
Assignee:
Apple Computer, Inc.
Inventors:
Cameron J. Esfahani, Byron W. Pang, Paul M. Resch
Abstract: The invention receives a request to store a file having a filename written in a first text encoding, converts the filename into a Unicode filename and stores the Unicode filename and the file into memory. The invention then sets a flag, associated with the memory, indicating that a first test encoding has been used. To retrieve a Unicode filename, the invention receives a request to locate a Unicode filename from memory. Next, the invention uses a predetermined text encoding to convert the filename in to Unicode. The invention then searches for the Unicode filename in the memory. If the Unicode filename is not found, the invention uses a next text encoding from the set of text encodings which have been used, to repeat the conversion and searches the memory until the Unicode filename is identified. Lastly, the Unicode file is retrieved.
Type:
Grant
Filed:
December 17, 1998
Date of Patent:
August 13, 2002
Assignee:
Apple Computer, Inc.
Inventors:
Mark S. Day, Donald J. Brady, Deric S. Horn
Abstract: A low-level portion of the operating system of a computer system is separated from an intermediate-level portion of the operating system. The low-level portion, including hardware-specific code, is stored in a relatively small read-only memory (ROM), while at least part of the intermediate-level portion is stored as a compressed ROM image on a disk or other mass storage device, which may be located remotely from the computer system. Upon power-up or reset of the computer system, the code in the ROM is executed to read the compressed ROM image into random access memory (RAM) of the computer system. The compressed image is then decompressed and executed as part of the boot sequence. Once decompressed, the portion of RAM storing the intermediate-level code is write-protected in the memory map, and the code in boot ROM is deleted from the memory map. Memory space in RAM that is allocated to the intermediate-level code but not used is returned to the operating system for use as part of system RAM.
Type:
Grant
Filed:
December 23, 1998
Date of Patent:
August 13, 2002
Assignee:
Apple Computer, Inc.
Inventors:
Cameron J. Esfahani, Paul M. Resch, Ronald Hochsprung, William M. Galcher
Abstract: An improved apparatus and method for creating high quality virtual reality panoramas is disclosed that yields dramatic improvements during the authoring and projecting cycles, with speeds up to several orders of magnitude faster than prior systems. In a preferred embodiment, a series of rectilinear images taken from a plurality of rows are pairwise registered with one another, and locally optimized using a pairwise objective function (local error function) that minimizes certain parameters in a projective transformation, using an improved iterative procedure. The local error function values for the pairwise registrations are then saved and used to construct a quadratic surface to approximate a global optimization function (global error function). The chain rule is used to avoid the direct evaluation of the global objective function, saving computation.
Abstract: A system and method for utilizing generic computer operating system software for computer hardware systems designed subsequent to the operating system software. The system and method of the present invention employ a separate modular software file called a System Enabler that has all patches, code, data and resources needed to make a particular computer system operational. The System Enabler file is matched to a particular hardware system and may be bundled with that hardware system. During computer system start up the System Enabler file modifies the generic operating system software for optimum operation with the particular computer hardware system.
Abstract: A graphical user interface (GUI) and accompanying functionality for binding Web page definitional elements to a back-end state (e.g., client- or server-side back-end state) and custom logic is provided. In one embodiment, a template containing definitional elements, custom logic, and bindings are generated that define all or a portion of a Web page based on input received and functionality provided by the invention.
Abstract: The invention allows a functional object in a dynamic language to be efficiently used as both a directly-invoked function and as a method in a generic function. This allows a language to combine the two concepts, simplifying the language semantics. As a preferred embodiment, a method object when created comprises as contiguous fields a header, a method-information section, a function prolog, and the method body. When called as a component of a generic function, one entry point is at the method body or at the method-information field. When called directly, another entry point exists at the function prolog field.
Abstract: A computer system user interface provides a document summary which allows the user to more easily identify the contents and subject matter of the document.
Type:
Grant
Filed:
February 1, 1999
Date of Patent:
July 23, 2002
Assignee:
Apple Computer, Inc.
Inventors:
Jeremy J. Bornstein, Douglass R. Cutting, John D. Hatton, Daniel E. Rose
Abstract: A method for processing a first error message to produce a second error message in a component-based architecture. The component-based architecture includes a framework which is associated with a first lookup handler and is capable of embedding a first component associated with a first executable unit for handling data of the first component. The method includes the step of generating a hierarchy of lookup handlers, the hierarchy including the first lookup handler and a second lookup handler associated with the first executable unit when the first component comes into focus. Further, the method includes the step of processing the first error message through the hierarchy of lookup handlers to generate the second error message. Through the hierarchy, the first error message is first processed through the second lookup handler. If the second lookup handler is unable to process the first error message, the first error message is then processed through the first lookup handler.
Inventors:
Bartley K. Andre, Daniel J. Coster, Daniele DeIulüs, Richard P. Howarth, Jonathan P. Ive, Duncan Robert Kerr, Matthew Dean Rohrbach, Douglas B. Satzger, Calvin Q. Seid, Christopher J. Stringer, Eugene Anthony Whang