Patents by Inventor Domenico Di Giulio

Domenico Di Giulio has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Patent number: 8301779
    Abstract: Providing access to a shared resource in a computing environment involves maintaining a timestamp for each shared resource, the timestamp representing the time the resource was last accessed. Then, detecting if the resource is reserved before obtaining access to the resource, by reading the resource timestamp, and if the timestamp represents a future time relative to the current time, indicating that the resource is reserved and delaying access to the resource. If the resource is unreserved, then accessing the resource by reading the resource timestamp to detect any changes in the timestamp since the last reading; if unchanged, then accessing the resource. If the resource is unreserved, then obtaining exclusive access to the resource by reserving the resource by incrementing its timestamp by a reservation period; accessing the resource; and resetting the resource timestamp to the current time.
    Type: Grant
    Filed: January 4, 2012
    Date of Patent: October 30, 2012
    Assignee: International Business Machines Corporation
    Inventors: Alessandro Capomassi, Domenico Di Giulio, Eliana Cerasaro, Silvano Lutri
  • Patent number: 8201177
    Abstract: A mechanism is provided for scheduling a workload on a computer. The mechanism receives, in the computer, one or more workload-related variables. The mechanism further receives, in the computer, one or more trigger values for at least one of the one or more workload-related variables. Moreover, the mechanism determines, from the workload-related variables and their triggering values, one or more conditions under which one or more tasks are to be performed on the computer. In addition, the mechanism acquires a status value of at least one of the one or more workload-related variables at regular intervals and performs a task when a status value of a workload-related variable attains the triggering value for the task.
    Type: Grant
    Filed: October 24, 2008
    Date of Patent: June 12, 2012
    Assignee: International Business Machines Corporation
    Inventor: Domenico Di Giulio
  • Publication number: 20120110190
    Abstract: Providing access to a shared resource in a computing environment involves maintaining a timestamp for each shared resource, the timestamp representing the time the resource was last accessed. Then, detecting if the resource is reserved before obtaining access to the resource, by reading the resource timestamp, and if the timestamp represents a future time relative to the current time, indicating that the resource is reserved and delaying access to the resource. If the resource is unreserved, then accessing the resource by reading the resource timestamp to detect any changes in the timestamp since the last reading; if unchanged, then accessing the resource. If the resource is unreserved, then obtaining exclusive access to the resource by reserving the resource by incrementing its timestamp by a reservation period; accessing the resource; and resetting the resource timestamp to the current time.
    Type: Application
    Filed: January 4, 2012
    Publication date: May 3, 2012
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Alessandro Capomassi, Domenico Di Giulio, Eliana Cerasaro, Silvano Lutri
  • Patent number: 8112528
    Abstract: Providing access to a shared resource in a computing environment involves maintaining a timestamp for each shared resource, the timestamp representing the time the resource was last accessed. Then, detecting if the resource is reserved before obtaining access to the resource, by reading the resource timestamp, and if the timestamp represents a future time relative to the current time, indicating that the resource is reserved and delaying access to the resource. If the resource is unreserved, then accessing the resource by reading the resource timestamp to detect any changes in the timestamp since the last reading; if unchanged, then accessing the resource. If the resource is unreserved, then obtaining exclusive access to the resource by reserving the resource by incrementing its timestamp by a reservation period; accessing the resource; and resetting the resource timestamp to the current time.
    Type: Grant
    Filed: February 19, 2009
    Date of Patent: February 7, 2012
    Assignee: International Business Machines Corporation
    Inventors: Alessandro Capomassi, Domenico Di Giulio, Eliana Cerasaro, Silvano Lutri
  • Patent number: 7797312
    Abstract: A database comprising a plurality of tables is interrogated by generating a database query, and a data map, the data map describing the structure of table instances implicated in the database query. Next, the database query is submitted to the database. A response is received from the database. The data map is traversed so as to iteratively apply a data extraction process to components of the response corresponding to each table instance associated with the database query, thereby extracting the required data from the response.
    Type: Grant
    Filed: April 3, 2007
    Date of Patent: September 14, 2010
    Assignee: International Business Machines Corporation
    Inventor: Domenico Di Giulio
  • Publication number: 20100211682
    Abstract: Providing access to a shared resource in a computing environment involves maintaining a timestamp for each shared resource, the timestamp representing the time the resource was last accessed. Then, detecting if the resource is reserved before obtaining access to the resource, by reading the resource timestamp, and if the timestamp represents a future time relative to the current time, indicating that the resource is reserved and delaying access to the resource. If the resource is unreserved, then accessing the resource by reading the resource timestamp to detect any changes in the timestamp since the last reading; if unchanged, then accessing the resource. If the resource is unreserved, then obtaining exclusive access to the resource by reserving the resource by incrementing its timestamp by a reservation period; accessing the resource; and resetting the resource timestamp to the current time.
    Type: Application
    Filed: February 19, 2009
    Publication date: August 19, 2010
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Alessandro Capomassi, Domenico Di Giulio, Eliana Cerasaro, Silvano Lutri
  • Patent number: 7752262
    Abstract: A load balancing system and a corresponding computer-readable medium are proposed. The load balancing system is used in environments (e.g., implementing a licensing management application) wherein each client is associated with a preferred server storing specific information for the client. Each client periodically detects a workload and a response time of all the servers. The client selects a subset of nearest servers (according to their response times). The server in that subset with the lowest workload is set as an eligible server. Whenever a ratio between the workload of the preferred server and the workload of the eligible server exceeds a predefined threshold value (e.g., 1.1), the client switches to the eligible server (transferring the corresponding specific information). The system of the invention exhibits a slow dynamic, and tends to reach a steady condition (wherein the specific information of the clients is not continuously moved across the system).
    Type: Grant
    Filed: December 23, 2008
    Date of Patent: July 6, 2010
    Assignee: International Business Machines Corporation
    Inventors: Domenico Di Giulio, Bruno Portaluri, Ricardo Rossi
  • Patent number: 7680787
    Abstract: A process for generating SQL queries to retrieve requested information from a database, whilst applying requested search filters, involving defining a “base” query, which is the simplest SQL query that can be executed to retrieve the information requested by the user (i.e. without applying any search filter), and then use a separate module for each search filter to detect the existence of the table that is required to apply that filter, and possibly add a “WHERE” condition that includes the required table using a sub-query. For each module, if the table required to filter a particular attribute exists in the current query, the “WHERE” condition is added on that table, without adding any sub-query. If on the other hand the required table does not exist in the current query, a sub-query that navigates associations from the tables involved in the current query to the required on is added, and the “WHERE” condition is added to the required table within the sub-query.
    Type: Grant
    Filed: April 4, 2007
    Date of Patent: March 16, 2010
    Assignee: International Business Machines Corporation
    Inventor: Domenico Di Giulio
  • Patent number: 7661147
    Abstract: A method (300) and system for controlling use of software programs on multiple workstations of a network. An agent running on each workstation detects (306) any new process (using a kernel hooking technique), which is started in response to the request of execution of a program (397). The process is suspended (308) and an authorization to run the program is requested (334) to an associated metering server. The metering server compares (380) the current usage of the product with the respective authorized conditions of use, and answers (382) the agent granting or denying the authorization to run. The process is accordingly resumed (312), in order to enable the program to start, or aborted (315), so as to prevent execution of the program. In any case, the program is not stopped (but it is prevented from starting); this avoids killing the program while it is performing potentially risky operations.
    Type: Grant
    Filed: January 23, 2008
    Date of Patent: February 9, 2010
    Assignee: International Business Machines Corporation
    Inventors: Bernardo Pastorelli, Domenico Di Giulio, Riccardo Rossi
  • Publication number: 20090313631
    Abstract: A method of automatically optimizing workload scheduling. Target values for workload characteristics and constraint specifications are received. Generation of a first execution plan is initiated. Initial constraint values conforming to the constraint specifications are selected. Each constraint value constrains tasks included in the workload. The first execution plan is executed, thereby determining measurements of workload characteristics. Contributions indicating differences between workload characteristic measurements and target values are determined and stored. Generation of a next execution plan is initiated. Modified constraint values conforming to the constraint specifications are selected. Changes in the workload characteristics based on the modified constraint values are evaluated. An optimal or acceptable sub-optimal solution in a space of solutions defined by the constraint specifications is determined, resulting in new values for the constraints.
    Type: Application
    Filed: June 11, 2008
    Publication date: December 17, 2009
    Inventors: Fabio De Marzo, Antonio Di Cocco, Domenico Di Giulio, Franco Mossotto
  • Publication number: 20090133024
    Abstract: A mechanism is provided for scheduling a workload on a computer. The mechanism receives, in the computer, one or more workload-related variables. The mechanism further receives, in the computer, one or more trigger values for at least one of the one or more workload-related variables. Moreover, the mechanism determines, from the workload-related variables and their triggering values, one or more conditions under which one or more tasks are to be performed on the computer. In addition, the mechanism acquires a status value of at least one of the one or more workload-related variables at regular intervals and performs a task when a status value of a workload-related variable attains the triggering value for the task.
    Type: Application
    Filed: October 24, 2008
    Publication date: May 21, 2009
    Applicant: International Business Machines Corporation
    Inventor: Domenico Di Giulio
  • Publication number: 20090100133
    Abstract: A load balancing system and a corresponding computer-readable medium are proposed. The load balancing system is used in environments (e.g., implementing a licensing management application) wherein each client is associated with a preferred server storing specific information for the client. Each client periodically detects a workload and a response time of all the servers. The client selects a subset of nearest servers (according to their response times). The server in that subset with the lowest workload is set as an eligible server. Whenever a ratio between the workload of the preferred server and the workload of the eligible server exceeds a predefined threshold value (e.g., 1.1), the client switches to the eligible server (transferring the corresponding specific information). The system of the invention exhibits a slow dynamic, and tends to reach a steady condition (wherein the specific information of the clients is not continuously moved across the system).
    Type: Application
    Filed: December 23, 2008
    Publication date: April 16, 2009
    Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATION
    Inventors: Domenico Di Giulio, Bruno Port Aluri, Ricardo Rossi
  • Patent number: 7475108
    Abstract: A load balancing method and a corresponding system are proposed. The load balancing method is used in environments (e.g., implementing a licensing management application) wherein each client is associated with a preferred server storing specific information for the client. Each client periodically detects a workload and a response time of all the servers. The client selects a subset of nearest servers (according to their response times). The server in that subset with the lowest workload is set as an eligible server. Whenever a ratio between the workload of the preferred server and the workload of the eligible server exceeds a predefined threshold value (e.g., 1.1), the client switches to the eligible server (transferring the corresponding specific information). The method of the invention exhibits a slow dynamic, and tends to reach a steady condition (wherein the specific information of the clients is not continuously moved across the system).
    Type: Grant
    Filed: June 16, 2004
    Date of Patent: January 6, 2009
    Assignee: International Business Machines Corporation
    Inventors: Domenico Di Giulio, Bruno Portaluri, Ricardo Rossi
  • Publication number: 20080189795
    Abstract: A method (300) and system for controlling use of software programs on multiple workstations of a network. An agent running on each workstation detects (306) any new process (using a kernel hooking technique), which is started in response to the request of execution of a program (397). The process is suspended (308) and an authorisation to run the program is requested (334) to an associated metering server. The metering server compares (380) the current usage of the product with the respective authorised conditions of use, and answers (382) the agent granting or denying the authorisation to run. The process is accordingly resumed (312), in order to enable the program to start, or aborted (315), so as to prevent execution of the program. In any case, the program is not stopped (but it is prevented from starting); this avoids killing the program while it is performing potentially risky operations.
    Type: Application
    Filed: January 23, 2008
    Publication date: August 7, 2008
    Inventors: BERNARDO PASTORELLI, Domenico Di Giulio, Riccardo Rossi
  • Patent number: 7376971
    Abstract: A method (300) and system for controlling use of software programs on multiple workstations of a network. An agent running on each workstation detects (306) any new process (using a kernel hooking technique), which is started in response to the request of execution of a program (397). The process is suspended (308) and an authorisation to run the program is requested (334) to an associated metering server. The metering server compares (380) the current usage of the product with the respective authorised conditions of use, and answers (382) the agent granting or denying the authorisation to run. The process is accordingly resumed (312), in order to enable the program to start, or aborted (315), so as to prevent execution of the program. In any case, the program is not stopped (but it is prevented from starting); this avoids killing the program while it is performing potentially risky operations.
    Type: Grant
    Filed: October 10, 2002
    Date of Patent: May 20, 2008
    Assignee: International Business Machines Corporation
    Inventors: Bernardo Pastorelli, Domenico Di Giulio, Riccardo Rossi
  • Publication number: 20070239667
    Abstract: A process for generating SQL queries to retrieve requested information from a database, whilst applying requested search filters, involving defining a “base” query, which is the simplest SOL query that can be executed to retrieve the information requested by the user (i.e. without applying any search filter), and then use a separate module for each search filter to detect the existence of the table that is required to apply that filter, and possibly add a “WHERE” condition that includes the required table using a sub-query. For each module, if the table required to filter a particular attribute exists in the current query, the “WHERE” condition is added on that table, without adding any sub-query. If on the other hand the required table does not exist in the current query, a sub-query that navigates associations from the tables involved in the current query to the required on is added, and the “WHERE” condition is added to the required table within the sub-query.
    Type: Application
    Filed: April 4, 2007
    Publication date: October 11, 2007
    Inventor: Domenico Di Giulio
  • Publication number: 20040267930
    Abstract: A load balancing method and a corresponding system are proposed. The load balancing method is used in environments (e.g., implementing a licensing management application) wherein each client is associated with a preferred server storing specific information for the client. Each client periodically detects a workload and a response time of all the servers. The client selects a subset of nearest servers (according to their response times). The server in that subset with the lowest workload is set as an eligible server. Whenever a ratio between the workload of the preferred server and the workload of the eligible server exceeds a predefined threshold value (e.g., 1.1), the client switches to the eligible server (transferring the corresponding specific information). The method of the invention exhibits a slow dynamic, and tends to reach a steady condition (wherein the specific information of the clients is not continuously moved across the system).
    Type: Application
    Filed: June 16, 2004
    Publication date: December 30, 2004
    Applicant: International Business Machines Corporation
    Inventors: Domenico Di Giulio, Bruno Portaluri, Ricardo Rossi
  • Publication number: 20040133801
    Abstract: A method (300) and system for controlling use of software programs on multiple workstations of a network. An agent running on each workstation detects (306) any new process (using a kernel hooking technique), which is started in response to the request of execution of a program (397). The process is suspended (308) and an authorisation to run the program is requested (334) to an associated metering server. The metering server compares (380) the current usage of the product with the respective authorised conditions of use, and answers (382) the agent granting or denying the authorisation to run. The process is accordingly resumed (312), in order to enable the program to start, or aborted (315), so as to prevent execution of the program. In any case, the program is not stopped (but it is prevented from starting); this avoids killing the program while it is performing potentially risky operations.
    Type: Application
    Filed: November 5, 2003
    Publication date: July 8, 2004
    Inventors: Bernardo Pastorelli, Domenico Di Giulio, Riccardo Rossi