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: 8301779Abstract: 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: GrantFiled: January 4, 2012Date of Patent: October 30, 2012Assignee: International Business Machines CorporationInventors: Alessandro Capomassi, Domenico Di Giulio, Eliana Cerasaro, Silvano Lutri
-
Patent number: 8201177Abstract: 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: GrantFiled: October 24, 2008Date of Patent: June 12, 2012Assignee: International Business Machines CorporationInventor: Domenico Di Giulio
-
Publication number: 20120110190Abstract: 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: ApplicationFiled: January 4, 2012Publication date: May 3, 2012Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Alessandro Capomassi, Domenico Di Giulio, Eliana Cerasaro, Silvano Lutri
-
Patent number: 8112528Abstract: 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: GrantFiled: February 19, 2009Date of Patent: February 7, 2012Assignee: International Business Machines CorporationInventors: Alessandro Capomassi, Domenico Di Giulio, Eliana Cerasaro, Silvano Lutri
-
Patent number: 7797312Abstract: 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: GrantFiled: April 3, 2007Date of Patent: September 14, 2010Assignee: International Business Machines CorporationInventor: Domenico Di Giulio
-
Publication number: 20100211682Abstract: 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: ApplicationFiled: February 19, 2009Publication date: August 19, 2010Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Alessandro Capomassi, Domenico Di Giulio, Eliana Cerasaro, Silvano Lutri
-
Patent number: 7752262Abstract: 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: GrantFiled: December 23, 2008Date of Patent: July 6, 2010Assignee: International Business Machines CorporationInventors: Domenico Di Giulio, Bruno Portaluri, Ricardo Rossi
-
Patent number: 7680787Abstract: 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: GrantFiled: April 4, 2007Date of Patent: March 16, 2010Assignee: International Business Machines CorporationInventor: Domenico Di Giulio
-
Patent number: 7661147Abstract: 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: GrantFiled: January 23, 2008Date of Patent: February 9, 2010Assignee: International Business Machines CorporationInventors: Bernardo Pastorelli, Domenico Di Giulio, Riccardo Rossi
-
Publication number: 20090313631Abstract: 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: ApplicationFiled: June 11, 2008Publication date: December 17, 2009Inventors: Fabio De Marzo, Antonio Di Cocco, Domenico Di Giulio, Franco Mossotto
-
Publication number: 20090133024Abstract: 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: ApplicationFiled: October 24, 2008Publication date: May 21, 2009Applicant: International Business Machines CorporationInventor: Domenico Di Giulio
-
Publication number: 20090100133Abstract: 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: ApplicationFiled: December 23, 2008Publication date: April 16, 2009Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Domenico Di Giulio, Bruno Port Aluri, Ricardo Rossi
-
Patent number: 7475108Abstract: 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: GrantFiled: June 16, 2004Date of Patent: January 6, 2009Assignee: International Business Machines CorporationInventors: Domenico Di Giulio, Bruno Portaluri, Ricardo Rossi
-
Publication number: 20080189795Abstract: 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: ApplicationFiled: January 23, 2008Publication date: August 7, 2008Inventors: BERNARDO PASTORELLI, Domenico Di Giulio, Riccardo Rossi
-
Patent number: 7376971Abstract: 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: GrantFiled: October 10, 2002Date of Patent: May 20, 2008Assignee: International Business Machines CorporationInventors: Bernardo Pastorelli, Domenico Di Giulio, Riccardo Rossi
-
Publication number: 20070239667Abstract: 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: ApplicationFiled: April 4, 2007Publication date: October 11, 2007Inventor: Domenico Di Giulio
-
Publication number: 20040267930Abstract: 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: ApplicationFiled: June 16, 2004Publication date: December 30, 2004Applicant: International Business Machines CorporationInventors: Domenico Di Giulio, Bruno Portaluri, Ricardo Rossi
-
Publication number: 20040133801Abstract: 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: ApplicationFiled: November 5, 2003Publication date: July 8, 2004Inventors: Bernardo Pastorelli, Domenico Di Giulio, Riccardo Rossi