Patents Assigned to Sun Microsystems
  • Patent number: 7240160
    Abstract: A multiple-core processor providing a flexible cache directory scheme. In one embodiment, a processor may include a second-level cache including a number of cache banks and a respective number of cache directories corresponding to the cache banks. The processor may further include a number of processor cores configured to access the cache banks, as well as core/bank mapping logic coupled to the second-level cache and the processor cores. Each of the processor cores may include a respective first-level cache. Each of the respective cache directories may be configured to store directory state information associated with portions of respective first-level caches of at least two of the processor cores. If fewer than all of the cache banks are enabled, the core/bank mapping logic may be configured to completely map directory state information associated with each respective first-level cache of enabled processor cores to respective cache directories associated with enabled cache banks.
    Type: Grant
    Filed: February 23, 2005
    Date of Patent: July 3, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Ricky C. Hetherington, Bikram Saha
  • Patent number: 7239605
    Abstract: A cluster topology self-healing process is performed in order to replicate a data set stored on a failed node from a first node storing another copy of the data set to a second non-failed node. The self-healing process is performed by: locking one of several domains included in the data set, where locking that domain does not lock any of the other domains in the data set; storing data sent from the first node to the second node in the domain; and releasing the domain. This process of locking, storing, and releasing is repeated for each other domain in the data set. Each domain may be locked for significantly less time than it takes to copy the entire data set. Accordingly, client access requests targeting a locked domain will be delayed for less time than if the entire data set is locked during the self-healing process.
    Type: Grant
    Filed: September 23, 2002
    Date of Patent: July 3, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Darpan Dinker, Pramod Gopinath, Mahesh Kannan, Suveen R. Nadipalli
  • Patent number: 7240109
    Abstract: The invention relates to an apparatus for interfacing between a plurality of service modules and a remote services system which includes a service module application program interface. The service module application program interface provides an interface between the plurality of service modules and a remote services infrastructure. The service module application program interface is distributed within the remote services infrastructure.
    Type: Grant
    Filed: June 27, 2002
    Date of Patent: July 3, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Michael J. Wookey, Trevor Watson, Jean Chouanard
  • Patent number: 7240058
    Abstract: A client-server system may include a primary state of session data. Application servers may include client states of the session data and may access the primary state. The session data may include attributes. The distributed store may provide locked access to the primary state to processes executing within the application servers. While one process has locked access, other processes are not allowed to access the primary state. In one embodiment, the distributed store provides locked access to portions of the primary state to threads executing within a process with locked access. While a portion of the primary state is locked for a thread, other threads cannot access the portion. In one embodiment, the distributed store may request the process to release the locked access. The process may release the locked access in response to the request. In one embodiment, the process may release the locked access when no longer needed.
    Type: Grant
    Filed: March 1, 2002
    Date of Patent: July 3, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Ajay Kumar, Hanumantha Rao Susarla, Prakash Khemani
  • Patent number: 7240084
    Abstract: A reduction operation is utilized in an arithmetic operation on two binary polynomials X(t) and Y(t) over GF(2), where an irreducible polynomial Mm(t)=tm+am?1tm?1+am?2tm?2+ . . . +a1t+a0, where the coefficients ai are equal to either 1 or 0, and m is a field degree. The reduction operation includes partially reducing a result of the arithmetic operation on the two binary polynomials to produce a congruent polynomial of degree less than a chosen integer n, with m?n. The partial reduction includes using a polynomial M?=(Mm(t)?tm)*tn?m, or a polynomial M?=Mm(t)*tn?m as part of reducing the result to the degree less than n and greater than or equal to m. The integer n can be the data path width of an arithmetic unit performing the arithmetic operation, a multiple of a digit size of a multiplier performing the arithmetic operation, a word size of a storage location, such as a register, or a maximum operand size of a functional unit in which the arithmetic operation is performed.
    Type: Grant
    Filed: March 11, 2003
    Date of Patent: July 3, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Nils Gura, Hans Eberle, Edouard Goupy
  • Patent number: 7240172
    Abstract: An embodiment of the invention provides a method for creating a snapshot of a data store. A command to create a snapshot of an original data store, stored to a parent virtual logical unit (VLU), is received. A deferred propagation data structure (DPDS) is associated with the parent VLU. The DPDS is capable of containing data propagation records and separators, each data propagation record contains a previous version of one or more data blocks of the parent VLU, each separator contains a pointer to a particular child VLU storing a snapshot of the original data store and separating the data propagation records pertaining to the particular child VLU. A child VLU to store the copy of the original data store is created. A new separator containing a pointer to the child VLU is created in the DPDS. A search pointer pointing to the DPDS is implemented in the child VLU.
    Type: Grant
    Filed: February 7, 2003
    Date of Patent: July 3, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Fay Chong, Jr., Whay Sing Lee, Raghavendra J. Rao
  • Patent number: 7240289
    Abstract: An intuitive graphical user interface is based upon a geographic map structure, and includes a system for controlling remote external electronic devices. In the defined graphical user interface, each space of the geographic map structure is rendered on a touch screen display as a graphic image of a geographic space. Within each space are colored cartoon-like icons called “objects” which can be selected and manipulated by the user. Certain objects, referred to as portals, transport the user from one space to another space when Selected. Other objects, referred to as buttons, perform associated actions or functions when Selected. The graphical user interface is displayed on a hand-held display device used to control remote devices. Each remote electronic device transmits a user interface program object that defines a graphical user interface to the display device.
    Type: Grant
    Filed: January 23, 2002
    Date of Patent: July 3, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Patrick J. Naughton, Charles H. Clanton, III, James A. Gosling, Chris Warth, Joseph M. Palrang, Edward H. Frank, David A. LaVallee, R. Michael Sheridan
  • Patent number: 7240169
    Abstract: Methods, systems, and articles of manufacture consistent with the present invention coordinate distribution of shared memory to threads of control executing in a program by using a cooperative synchronization protocol. The protocol serializes access to memory by competing threads requesting assignment of memory space, while allowing competing threads that have already been assigned memory space, to share access to the memory. A designated area of memory assigns the memory to requesting threads. The protocol is an application level entity and therefore does access the operating system to serialize the memory allocation process.
    Type: Grant
    Filed: January 18, 2002
    Date of Patent: July 3, 2007
    Assignee: Sun Microsystems, Inc.
    Inventor: Shaun Dennie
  • Patent number: 7240365
    Abstract: A method and apparatus for digital content access control comprises receiving an authenticated digital content request based at least in part on a digital content request comprising a request for digital content, validating the authenticated digital content request and providing the digital content if the authenticated digital content request is valid. The validating comprises indicating the authenticated digital content request is valid if the authenticated digital content request is validly associated with the digital content and if the authenticated digital content request authenticates the digital content request, and indicating the authenticated digital content request is invalid if the authenticated digital content request is not validly associated with the digital content.
    Type: Grant
    Filed: September 13, 2002
    Date of Patent: July 3, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Eduard de Jong, Aaron Cooley, Jon Bostrom
  • Patent number: 7239507
    Abstract: An apparatus for reducing shielding gaps associated with the mounting of peripheral cards in a computer system. A computer system chassis includes a frame mounted thereupon, the frame having at least one opening adjacent to a peripheral card slot. The frame includes a plurality of tabs arranged around the opening, wherein the tabs on one side of the opening are staggered with respect to the tabs on the other side of the opening. A shield bracket configured for coupling to a peripheral card mountable in the slot is slidable to cover the opening. When the shield bracket is slid into position to cover the opening, the shield bracket is retained by the plurality of tabs. The frame and the slot bracket are made of a flexible, electrically conductive material.
    Type: Grant
    Filed: March 24, 2004
    Date of Patent: July 3, 2007
    Assignee: Sun Microsystems, Inc.
    Inventor: David K. J. Kim
  • Publication number: 20070150624
    Abstract: A method for pipelining execution input/output (I/O) includes obtaining a first I/O operation, determining a first plurality of stages of a pipeline needed to execute the first I/O operation, and executing each of the first plurality of stages to complete the I/O operation, wherein the first plurality of stages is a subset of a plurality of stages associated with pipeline, and wherein each of the first plurality of stages of the pipeline is executed in sequence.
    Type: Application
    Filed: April 20, 2006
    Publication date: June 28, 2007
    Applicant: Sun Microsystems, Inc.
    Inventors: William Moore, Jeffrey Bonwick
  • Publication number: 20070150712
    Abstract: In one embodiment, a processor comprises a branch prediction array, an index generator coupled to the branch prediction array, and a control unit coupled to the index generator. The branch prediction array is configured to store a plurality of branch predictions for conditional branches. The index generator is configured to generate an index to the branch prediction array responsive to at least a portion of a fetch address corresponding to a fetch request that is at a first pipeline stage of the processor and further responsive to a branch history. The control unit is configured to update the branch history responsive to a first fetch request at the first pipeline stage and to defer the update for a second fetch request to a second pipeline stage subsequent to the first pipeline stage.
    Type: Application
    Filed: December 22, 2005
    Publication date: June 28, 2007
    Applicant: Sun Microsystems, Inc.
    Inventors: Abid Ali, Jiejun Lu, Brian Keish
  • Publication number: 20070147376
    Abstract: A method for protecting a victim includes locating at least one router, providing a set of addresses associated with at least one replica and a victim to each of the at least one router, intercepting a request packet sent from a requesting source to the victim by one of the at least one router, directing the request packet to the at least one replica, and creating a response packet specifying the victim as a response source and the requesting source as a response destination.
    Type: Application
    Filed: December 22, 2005
    Publication date: June 28, 2007
    Applicant: Sun Microsystems, Inc.
    Inventors: Radia Perlman, Hilarie Orman
  • Publication number: 20070150509
    Abstract: In a multi-threaded computer system that uses transactional memory, object fields accessed by only one thread are accessed by regular non-transactional read and write operations. When an object may be visible to more than one thread, access by non-transactional code is prevented and all accesses to the fields of that object are performed using transactional code. In one embodiment, the current visibility of an object is stored in the object itself. This stored visibility can be checked at runtime by code that accesses the object fields or code can be generated to check the visibility prior to access during compilation.
    Type: Application
    Filed: December 19, 2005
    Publication date: June 28, 2007
    Applicant: Sun Microsystems, Inc.
    Inventors: Yosef Lev, Jan-Willem Maessen, Mark Moir
  • Patent number: 7236987
    Abstract: A storage virtualization environment is provided that includes a system for providing one or more virtual volumes. The system may include a host system and a set of storage devices, each of which includes physical block addresses that stores data. Further, the system includes a network switch system connecting the host system and the set of storage devices and is configured to define and manage a virtual volume associated with data distributed across the physical block addresses. The network switch system includes a first virtualization layer that maintains first tier objects including information reflecting a relationship between the physical block addresses and one or more logical partitions of virtual volume data. Moreover, the network switch system includes a second virtualization layer that maintains second tier objects including information reflecting a logical configuration of the virtual volume.
    Type: Grant
    Filed: February 27, 2004
    Date of Patent: June 26, 2007
    Assignee: Sun Microsystems Inc.
    Inventors: Kevin Faulkner, Wai Yim, Rod DeKoning, David Kopper
  • Patent number: 7237031
    Abstract: A method and apparatus are provided for caching data for protocol processing. A protocol processing cache stores data needed for the generation of new headers, from both receive and transmit flows. Some data may be stored in the cache only after being processed (e.g., updated, calculated) by a protocol processor. Other data may bypass the protocol processor and be stored in the cache without being handled by the protocol processor. An entry in the cache includes data needed for header generation, a tag identifying an index into a control block memory of the TCP connection to which the data corresponds. An entry may also include one or more control indicators to indicate whether a transmit flow has been acknowledged, whether a receive flow has been observed, and whether the transmit flow has been updated with control data from the receive flow. The apparatus is protocol processor independent.
    Type: Grant
    Filed: March 7, 2002
    Date of Patent: June 26, 2007
    Assignee: SUN Microsystems, Inc.
    Inventor: Charles T. Cheng
  • Patent number: 7237256
    Abstract: Embodiments of the present invention provide an open and interoperable single sign-on session in a heterogeneous communication network. The open and interoperable single sign-on system is configured by exchanging an entity identifier, an account mapping, an attribute mapping, a site attribute list, an action mapping and/or the like. The entity identifier, account mapping, attribute mapping, site attribute list, action mapping and the like for each partner entity is stored in a partner list accessable to the particular entity. Thereafter, the open and interoperable single sign-on session may be provided upon receipt of a SAML request or assertion containing an entity identifier. The entity identifier contained in the SAML request or assertion is looked-up in the partner list of the particular entity which received the SAML request or assertion. A record containing a matching entity identifier provides the applicable account mapping, attribute mapping, site attribute list, and/or action mapping.
    Type: Grant
    Filed: July 14, 2003
    Date of Patent: June 26, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Qingwen Cheng, Bhavna Bhatnagar, Hong Xu, Wei Sun, Ping Luo, Shivaram Bhat, Aravindan Ranganathan
  • Patent number: D545816
    Type: Grant
    Filed: September 9, 2005
    Date of Patent: July 3, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Christopher H. Frank, Andreas V. Bechtolsheim, Edward J. Cornelius, III, June Lee, James M. Stanton, Denise Silverman, Andrew P. Tosh, Philip G. Yurkonis
  • Patent number: D545817
    Type: Grant
    Filed: September 9, 2005
    Date of Patent: July 3, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Christopher H. Frank, June Lee, Denise Silverman, Andrew P. Tosh, Edward J. Cornelius, III, Sarah T. Aquino, Andreas V. Bechtolsheim, Philip G. Yurkonis
  • Patent number: D545823
    Type: Grant
    Filed: April 15, 2005
    Date of Patent: July 3, 2007
    Assignee: Sun Microsystems, Inc.
    Inventors: Edward Cornelius, III, June Lee, Christopher H. Frank, James M. Stanton, Andrew Tosh, Philip G. Yurkonis, Sarah T. Aquino, Denise Silverman