Patents Represented by Attorney, Agent or Law Firm A. Bruce Clay
-
Patent number: 7237242Abstract: Thread pools in a multithreaded server are programmatically adjusted, based on observed statistics from the server's inbound workload. In a multithreaded server environment, response time to end users is improved while increasing the efficiency of software execution and resource usage. Execution time and wait/queued time are tracked, for various types of requests being serviced by a server. Multiple logical pools of threads are used to service these requests, and inbound requests are directed to a selected one of these pools such that requests of similar execution-time requirements are serviced by the threads in that pool. The number and size of thread pools may be adjusted programmatically, and the distribution calculation (i.e., determining which inbound requests should be assigned to which pools) is a programmatic determination. In preferred embodiments, only one of these variables is adjusted at a time, and the results are monitored to determine whether the effect was positive or negative.Type: GrantFiled: December 31, 2002Date of Patent: June 26, 2007Assignee: International Business Machines CorporationInventors: Christopher James Blythe, Gennaro A. Cuomo, Erik A. Daughtrey, Matt R. Hogstrom
-
Patent number: 7219341Abstract: A method, system and apparatus for performing selective data processing based upon a static analysis of the code of a compiled object. A compiled object, for example an enterprise bean, can be analyzed to determine how individual methods in the enterprise bean access specific objects. Those specific objects can include, for instance, data members of a class, or class objects passed into one or more individual methods of the enterprise bean. Where the individual methods of the enterprise bean do not mutate or otherwise change the state of the specific objects, those objects can be accessed by reference only. Importantly, where the specific objects are data fields linked to a table in a database as managed by a container managed persistence (CMP) bean, an update to the table will not be required when the static analysis of the enterprise bean otherwise indicates that the data fields are merely accessed, but not updated.Type: GrantFiled: October 31, 2002Date of Patent: May 15, 2007Assignee: International Business Machines CorporationInventors: Ann Eleanor Dalton, David Granshaw, Matt Richard Hogstrom, Aaron Stephen Jay Kershenbaum, Lawrence Koved, Bert Laonipon, Simon Christopher Nash, Marco Pistola
-
Patent number: 7207043Abstract: Workload is programmatically distributed across a set of execution resources. In a multithreaded server environment, response time to end users is improved while increasing the efficiency of software execution and resource usage. Execution time and wait/queued time are tracked, for various types of requests being serviced by a server. Multiple logical pools of threads are used to service these requests, and inbound requests are directed to a selected one of these pools such that requests of similar execution-time requirements are serviced by the threads in that pool. The number and size of thread pools may be adjusted programmatically, and the distribution calculation (i.e., determining which inbound requests should be assigned to which pools) is a programmatic determination. In preferred embodiments, only one of these variables is adjusted at a time, and the results are monitored to determine whether the effect was positive or negative.Type: GrantFiled: December 31, 2002Date of Patent: April 17, 2007Assignee: International Business Machines CorporationInventors: Christopher James Blythe, Gennaro A. Cuomo, Erik A. Daughtrey, Matt R. Hogstrom
-
Patent number: 7124192Abstract: Methods, systems, and computer program products are disclosed for protecting the security of resources in distributed computing environments. The disclosed techniques improve administration and enforcement of security policies. Allowed actions on resources, also called permissions, (such as invocations of particular methods, read or write access of a particular row or perhaps a particular column in a database table, and so forth) are grouped, and each group of permissions is associated with a role name. A particular action on a particular resource may be specified in more than one group, and therefore may be associated with more than one role. Each role is administered as a security object. Users and/or user groups may be associated with one or more roles. At run-time, access to a resource is protected by determining whether the invoking user has been associated with (granted) at least one of the roles required for this type of access on this resource.Type: GrantFiled: August 30, 2001Date of Patent: October 17, 2006Assignee: International Business Machines CorporationInventors: Robert Howard High, Jr., Anthony Joseph Nadalin, Nataraj Nagaratnam
-
Patent number: 7012528Abstract: Techniques are disclosed for detecting shoplifting or theft, particularly in a retail environment, using radio-frequency identification (“RFID”). Preferred embodiments leverage RFID tags on merchandise and RFID data that is written at the point of sale on the merchandise-borne RFID tags themselves, on the customer's receipt, or both. Some embodiments also leverage RFID tags on customer identification or “loyalty” cards. After writing RFID data on the merchandise-borne tags and/or receipt, a matching operation is performed at an RFID reader when the shopper and his merchandise exit the premises, in order to determine whether the shopper has paid for the items in his possession.Type: GrantFiled: September 19, 2003Date of Patent: March 14, 2006Assignee: International Business Machines CorporationInventors: James M. Mathewson, II, Marcia L. Stockton
-
Patent number: 6996622Abstract: A server issues a virtual directory name at the beginning of a session, and a client redirects to a page at or below the virtual directory name. The server changes the virtual directory name to a physical name during the tracking in the session, and implements a method to a resource specified by the physical directory name. If necessary, the server identifies the user having an access under the virtual directory name when implementing the method. When the user moves within the physical directory structured to be present at or below the virtual directory (that is, during the session management), the user moves from one link to another by a relative path.Type: GrantFiled: July 11, 2002Date of Patent: February 7, 2006Assignee: International Business Machines CorporationInventor: Takashi Itoh
-
Patent number: 6948002Abstract: A system method of interfacing a computer system executing commercial transactions initiated from communication devices, each communication device having a display, with custom display parameters, is provided. For the system and method, at the computer system, for each device, a command is received and translated into a common format command. The common format command is executed and results therefrom are received. A database is accessed having elements identifying sets of display parameters, one set of the sets is for use with the custom display parameters. One set of display parameters is retrieved from the database.Type: GrantFiled: December 7, 2001Date of Patent: September 20, 2005Assignee: International Business Machines CorporationInventors: Victor Chan, Kit Yin Madelaine Fok, Mark W. Hubbard
-
Patent number: 6886166Abstract: Methods are provided for parsing, in a message parser P1, P2 of a message processing system 1, a plurality of messages comprising respective corresponding sets of data fields arranged in a predetermined format, to extract a corresponding data field from each message. The format is defined by format information which is stored in the system 1 and which indicates a name for each data field in a said set. In response to a handle request, which indicates the name of a required data field, received from a component 2, 3, 6 of the system, the format information is accessed to determine the location of the required data field in a said message. A handle, indicative of this location, is then supplied to the component. In response to subsequent parsing requests, each comprising the handle and a said message, from the component, the required data field is extracted from the message in each parsing request according to the location indicated by the handle.Type: GrantFiled: August 21, 2001Date of Patent: April 26, 2005Assignee: International Business Machines CorporationInventors: Roy B Harrison, Stephen James Todd
-
Patent number: 6882353Abstract: A locale identification triplet is provided and a related computer implemented method, computer system and computer program for making practical use of the locale identification triplet. The identifier includes a table identifier, locale version identifier and a locale token. The locale token is the only mandatory identifier in the triplet and addresses the need to uniquely identify desired localization specifications through a concise unambiguous hexadecimal format. The locale version identifier addresses the need to allow multiple variations of the locale specification defined for a given “root” locale, and the table identifier addresses the need to provide a mechanism to identify and distinguish a particular instance of a locale with regards to an environment (such as a system) or reference to an installation/application/user provided reference table.Type: GrantFiled: March 22, 2002Date of Patent: April 19, 2005Assignee: International Business Machines CorporationInventors: William B. Nettles, Daniel A. Rose, Baldev S. Soor
-
Patent number: 6823494Abstract: A window display enables a user to easily identify a window to which a selected object belongs. A computer system displays a plurality of windows, each of which includes one or a plurality of objects, and which displays a window to which a selected object belongs. The window field to which a selected object belongs is, in response to the selection of the object, displayed with an attribute, e.g., with a domain (background) color, that differs from that of other window fields. In this manner, it is possible for a user to easily identify the window of the selected object.Type: GrantFiled: October 11, 2001Date of Patent: November 23, 2004Assignee: International Business Machines CorporationInventors: Tadaaki Minoura, Toru Tachibana, Yugo Tanabe
-
Patent number: 6823515Abstract: A technique, system, and computer program for enhancing performance of a computer running a multithreaded server application. A scheduling heuristic is defined for optimizing the number of available threads. This heuristic alleviates over-scheduling of worker threads by defining a technique to wait to assign an incoming request to a currently-executing thread (upon completion of the thread's current work), instead of awakening a blocked thread for the incoming request. Provision is made to ensure no thread waits too long. Two stages are associated with a passive socket, so that a connection is only bound to a worker thread when work arrives for that connection. A new type of socket is defined, for merging input from more than one source and making that merged input available for scheduling. A giveback function is defined, for optimizing assignment of threads to incoming requests when persistent connections are used. Threads that go idle are put onto an idle queue, releasing them from a worker thread.Type: GrantFiled: May 10, 2001Date of Patent: November 23, 2004Assignee: International Business Machines CorporationInventor: Patrick Michael LiVecchi
-
Patent number: 6823358Abstract: Provided are a method, apparatus and a computer program product which address the problem of differentiating between processes which appear to a server process to have the same process ID associated with them, for example processes which run within a common process such as a single Java Virtual Machine (JVM). A server process which relies on the process ID to differentiate between sender client processes cannot determine the source of a request. This problem can lead to conflicts between requests which are sent by different client processes running under the same process ID. The problem is solved by creating a set of dispatcher processes and associating one with each requester process. Then requests which are sent to a server process for processing are sent via the respective dispatcher process and its unique process ID is attached to the request. The server process can now use the dispatcher process ID to differentiate between requester clients.Type: GrantFiled: September 29, 2000Date of Patent: November 23, 2004Assignee: International Business Machines CorporationInventor: Adrian William Spender
-
Patent number: 6813630Abstract: Disclosed are a system, apparatus, method and computer program for communicating information content using wireless means between a host and a client in a communications system, wherein the client is adapted to transmit pointer movement signals and selection signals to a host. The host is adapted to receive pointer movement signals and selection signals and to display a pointer and a selection boundary, and is further adapted to transmit data to the client. The client is adapted to receive and store in storage the data thus acquired. Preferably the client is further adapted to transmit to a host pointer movement and insertion point selection signals and to transmit selected data from its storage to the host. The host is adapted to receive these signals and data, and to respond by displaying the data according to the insertion point selection signal.Type: GrantFiled: February 22, 2000Date of Patent: November 2, 2004Assignee: International Business Machines CorporationInventor: Mohammad Ali Sanamrad
-
Patent number: 6792596Abstract: It is one object of the present invention to edit a Java program by effectively utilizing the access control using a name scope, so that a program that controls a resource and is to be protected can be prevented from being called by a malevolent program. According to the present invention, a Java program development method comprises: a package name replacement step (101) of replacing, with a single package name, package names of packages to which classes that constitute a program belong; a name scope changing step (102) of changing, to package scopes, name scopes of internal fields in the classes that are not to be referred to by sources outside the application program; and a digital signing step (105) of digitally signing the program obtained through the package name replacement and the name scope changing.Type: GrantFiled: March 23, 2001Date of Patent: September 14, 2004Assignee: International Business Machines CorporationInventors: Hiroshi Maruyama, Hisashi Kojima
-
Patent number: 6781611Abstract: A user may easily switch between multiple open windows in multiple applications on a computer desktop. A visual indicator is provided on an application button. The indicator is linked to a list of open windows within an application represented by the application button. By interacting with the visual indicator, a desired selection from the list of open windows can be surfaced. The visual indicator may comprise an arrow positioned within the application button. Interaction with the visual indicator may comprise positioning a pointer of a pointing device over the visual indicator on the application button. A user then clicks and holds on the visual indicator with the pointing device. A pop-up menu is surfaced containing the list of open windows within the application represented by the application button. By releasing the pointing device over a desired selection on the list of open windows, the desired selection is presented to the user.Type: GrantFiled: June 28, 2000Date of Patent: August 24, 2004Assignee: International Business Machines CorporationInventor: Christian James Richard
-
Patent number: 6782528Abstract: Application software is visually programmed with a relational diagram that is structured in a left-to-right format. Parts/beans of a software application are placed onto the relational diagram to illustrate an inherent visual flow of the application's logic. The relational diagram is further structured by providing a three column workspace for display of the parts/beans of the software application. The three column workspace can be further structured with a center column for placement of a main part/bean. A left most column is also provided for placement of others of the parts/beans which provide input to the main part/bean in the center column. In addition, a right most column is provided for placement of other parts/beans which receive output from the main part/bean in the center column. The application logic can be modified when a user adds at least one of the parts/beans directly to any one of the three columns in the workspace.Type: GrantFiled: June 16, 2000Date of Patent: August 24, 2004Assignee: International Business Machines CorporationInventors: Laura Johnson Bennett, Scott Michael Consolatti, Christopher Joseph Paul
-
Patent number: 6779017Abstract: Load balancing of client transactions, for the duration of a client session, in a Web site is implemented by a cluster of servers. An initial request in each client session is sent to the site load balancer, thus, greatly enhancing the capability of the site to accept new session requests. All subsequent requests from a client are forwarded directly to the server first selected so that the sessions cannot be later broken by the load balancer.Type: GrantFiled: December 29, 1999Date of Patent: August 17, 2004Assignee: International Business Machines CorporationInventors: Marc Lamberton, Eric Levy-Abegnoli, Eric Montagnon, Pascal Thubert
-
Patent number: 6775687Abstract: A method, system, and computer program product for exchanging supplemental information fields between a client and server. This supplemental information can then be used by the server to complete a client's request for content stored at a particular location. For example, the supplemental information may be used to provide a customized response, or for access control to sensitive data. Preferably, the REDIRECT message of the Hypertext Transfer Protocol (HTTP) or the Wireless Session Protocol (WSP) is used to request the supplemental information, encoding a comma-separated list of attribute names in a request header for the desired supplemental information. This solution is designed to be backward-compatible.Type: GrantFiled: October 12, 1999Date of Patent: August 10, 2004Assignee: International Business Machines CorporationInventors: Carl Binding, Stefan Georg Hild, Luke James O'Connor, Sandeep K. Singhal
-
Patent number: 6775772Abstract: A method, system, and computer program product for establishing security parameters that are used to exchange data on a secure connection. A piggy-backed key exchange protocol is defined, with which these security parameters are advantageously exchanged. By piggy-backing the key exchange onto other already-required messages (such as a client's HTTP GET request, or the server's response thereto), the overhead associated with setting up a secure browser-to-server connection is minimized. This technique is defined for a number of different scenarios, where the client and server may or may not share an encoding scheme, and is designed to maintain the integrity of application layer communication protocols. In one scenario, a client and a server exchange secure messages using a trusted third party.Type: GrantFiled: October 12, 1999Date of Patent: August 10, 2004Assignee: International Business Machines CorporationInventors: Carl Binding, Stefan Georg Hild, Luke James O'Connor, Sandeep K. Singhal, Victor John Shoup, Michael Steiner
-
Patent number: 6760886Abstract: A method of performing distributed development of a computer software application by using a WebDAV (Web Distributed Authoring and Versioning) client, to access a WebDAV server, ensures that referential integrity is maintained when checking in documents from the client top the server.Type: GrantFiled: October 6, 2000Date of Patent: July 6, 2004Assignee: International Business Machines CorporationInventors: Gaetan Nadon, Dirk Alexander Seelemann, Michael Starkey