Patents by Inventor David Dion

David Dion 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: 10363061
    Abstract: Disclosed are nozzles and nozzle assemblies of liquid jet-forming surgical instruments, surgical instruments employing such nozzles and/or nozzle assemblies, and methods of fabricating the nozzle assemblies in forming surgical instruments. Also, disclosed are liquid jet-forming surgical instruments including both liquid jet-forming nozzles and optional evacuation lumens, which when provided can be configured to receive the liquid jet and evacuate the liquid forming the liquid jet. Certain embodiments of such surgical instruments include inventive nozzle alignment component(s) to facilitate alignment of the nozzles and evacuation lumen upon assembly. In certain embodiments, surgical instruments are provided that include a nozzle that is shaped to form a liquid jet, which has surfaces that are optically smooth.
    Type: Grant
    Filed: February 27, 2017
    Date of Patent: July 30, 2019
    Assignee: HydroCision, Inc.
    Inventors: Kevin P. Staid, James J. Frassica, Ernest A. Dion, David P. Hesketh, Joseph A. Meranda
  • Publication number: 20190184234
    Abstract: A method includes receiving, with a processor in communication with a first exercise machine, a first request for an exercise class, the first request being provided by a first user of the first exercise machine. The method also includes providing a video file associated with the exercise class to the first exercise machine, providing a notification to a second user indicating that the first user has chosen to participate in the exercise class, and receiving a second request for the exercise class provided by the second user. The method further includes providing the video file to a second exercise machine of the second user via the network. In such a method, display of the video file via a display of the second exercise machine is synchronized with display of the video file via a display of the first exercise machine.
    Type: Application
    Filed: December 14, 2018
    Publication date: June 20, 2019
    Inventors: David Owen Packles, Joseph Intonato, Thomas Cortese, Matthew Sonier, Benoit Dion, John Foley, Yu Feng
  • Patent number: 10235077
    Abstract: Described is a technology by which an owner node in a server cluster maintains ownership of a storage mechanism through a persistent reservation mechanism, while allowing non-owning nodes read and write access to the storage mechanism. An owner node writes a reservation key to a registration table associated with the storage mechanism. Non-owning nodes write a shared key that gives them read and write access. The owner node validates the shared keys against cluster membership data, and preempts (e.g., removes) any key deemed not valid. The owner node also defends ownership against challenges to ownership made by other nodes, so that another node can take over ownership if a (formerly) owning node is unable to defend, e.g., because of a failure.
    Type: Grant
    Filed: October 20, 2017
    Date of Patent: March 19, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Rajsekhar Das, David A. Dion
  • Patent number: 10196218
    Abstract: A stacking system including an inverting arm arranged above the stacking system for selectively overturning a first elongated metal member into a second elongated metal member or not overturning the first elongated metal member into the second elongated metal member.
    Type: Grant
    Filed: September 22, 2016
    Date of Patent: February 5, 2019
    Assignee: ASC Machine Tools, Inc.
    Inventors: Robert David Dion, David Joshua Pettis, Andrew Damon Flack
  • Patent number: 10169097
    Abstract: Managing a distributed system. Embodiments may allow for a quorum to dynamically change the quorum vote. One example is illustrated in a method. The method includes determining a change to a voter's level of participation in a cluster. A quorum of voters changes the voter's voting privileges, based on the change in the voter's level of participation.
    Type: Grant
    Filed: January 23, 2012
    Date of Patent: January 1, 2019
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Gor Nishanov, Andrea D'Amato, Amitabh Prakash Tamhane, David A. Dion
  • Patent number: 10153941
    Abstract: Certain embodiments of computing systems, devices, components, modules, routines, and processes for implementing distributed operational control in a computing fabric are described herein. In one embodiment, a method includes receiving, at a control cluster, a tenant request for a cloud-based computing service at the computing system. The method also includes creating an application configured to provide the requested cloud-based computing service based on the tenant request and pushing configuration data of the created application to the execution cluster to be executed at the execution cluster without further intervention from the control cluster.
    Type: Grant
    Filed: May 17, 2016
    Date of Patent: December 11, 2018
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: David Dion, James Johnson, Marcus Fontoura, Milan Vukosavljevic, Mark Russinovich, Gopal Kakivaya
  • Publication number: 20180198691
    Abstract: A generation identifier is employed with various systems and methods in order to identify situations where a workload has been reassigned to a new node and where a workload is still being processed by an old node during a failure between nodes. A master node may assign a workload to a worker node. The worker node sends a request to access target data. The request may be associated with a generation identifier and workload identifier that identifies the node and workload. At some point, a failure occurs between the master node and worker node. The master node reassigns the workload to another worker node. The new worker node accesses the target data with a different generation identifier, indicating to the storage system that the workload has been reassigned. The old worker node receives an indication from the storage system that the workload has been reassigned and stops processing the workload.
    Type: Application
    Filed: December 4, 2017
    Publication date: July 12, 2018
    Applicant: MICROSOFT TECHNOLOGY LICENSING, LLC
    Inventors: David Kruse, Qibo Zhu, David Dion, Vladimir Petter, Lokesh Srinivas Koppolu
  • Publication number: 20180129441
    Abstract: Described is a technology by which an owner node in a server cluster maintains ownership of a storage mechanism through a persistent reservation mechanism, while allowing non-owning nodes read and write access to the storage mechanism. An owner node writes a reservation key to a registration table associated with the storage mechanism. Non-owning nodes write a shared key that gives them read and write access. The owner node validates the shared keys against cluster membership data, and preempts (e.g., removes) any key deemed not valid. The owner node also defends ownership against challenges to ownership made by other nodes, so that another node can take over ownership if a (formerly) owning node is unable to defend, e.g., because of a failure.
    Type: Application
    Filed: October 20, 2017
    Publication date: May 10, 2018
    Inventors: Rajsekhar DAS, David A. DION
  • Patent number: 9847918
    Abstract: A generation identifier is employed with various systems and methods in order to identify situations where a workload has been reassigned to a new node and where a workload is still being processed by an old node during a failure between nodes. A master node may assign a workload to a worker node. The worker node sends a request to access target data. The request may be associated with a generation identifier and workload identifier that identifies the node and workload. At some point, a failure occurs between the master node and worker node. The master node reassigns the workload to another worker node. The new worker node accesses the target data with a different generation identifier, indicating to the storage system that the workload has been reassigned. The old worker node receives an indication from the storage system that the workload has been reassigned and stops processing the workload.
    Type: Grant
    Filed: August 12, 2014
    Date of Patent: December 19, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: David Kruse, Qibo Zhu, David Dion, Vladimir Petter, Lokesh Srinivas Koppolu
  • Patent number: 9832267
    Abstract: Described is a technology by which an owner node in a server cluster maintains ownership of a storage mechanism through a persistent reservation mechanism, while allowing non-owning nodes read and write access to the storage mechanism. An owner node writes a reservation key to a registration table associated with the storage mechanism. Non-owning nodes write a shared key that gives them read and write access. The owner node validates the shared keys against cluster membership data, and preempts (e.g., removes) any key deemed not valid. The owner node also defends ownership against challenges to ownership made by other nodes, so that another node can take over ownership if a (formerly) owning node is unable to defend, e.g., because of a failure.
    Type: Grant
    Filed: April 17, 2014
    Date of Patent: November 28, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Rajsekhar Das, David A. Dion
  • Publication number: 20170339008
    Abstract: Certain embodiments of computing systems, devices, components, modules, routines, and processes for implementing distributed operational control in a computing fabric are described herein. In one embodiment, a method includes receiving, at a control cluster, a tenant request for a cloud-based computing service at the computing system. The method also includes creating an application configured to provide the requested cloud-based computing service based on the tenant request and pushing configuration data of the created application to the execution cluster to be executed at the execution cluster without further intervention from the control cluster.
    Type: Application
    Filed: May 17, 2016
    Publication date: November 23, 2017
    Inventors: David Dion, James Johnson, Marcus Fontoura, Milan Vukosavljevic, Mark Russinovich, Gopal Kakivaya
  • Patent number: 9665432
    Abstract: A request identifier is employed with various systems and methods in order to enable an application to pause execution during a failure and subsequently resume execution and communication with a storage system once the failure is resolved. An application residing on a node may attempt to access target data on a storage system. The application sends a request to access the target data. The request may be associated with a request identifier that identifies the application. When the storage system experiences a failure, the application receives a failure notification. The application pauses execution as a result of the notification. When the node reestablishes a connection to the storage system, the application resumes execution using the same request identifier. If the resume request is granted, the application is guaranteed that the target data was not modified during the failure.
    Type: Grant
    Filed: August 7, 2014
    Date of Patent: May 30, 2017
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: David Kruse, Vladimir Petter, Lokesh Srinivas Koppolu, David Dion, Mathew George
  • Publication number: 20170132066
    Abstract: A request identifier is employed with various systems and methods in order to enable an application to pause execution during a failure and subsequently resume execution and communication with a storage system once the failure is resolved. An application residing on a node may attempt to access target data on a storage system. The application sends a request to access the target data. The request may be associated with a request identifier that identifies the application. When the storage system experiences a failure, the application receives a failure notification. The application pauses execution as a result of the notification. When the node reestablishes a connection to the storage system, the application resumes execution using the same request identifier. If the resume request is granted, the application is guaranteed that the target data was not modified during the failure.
    Type: Application
    Filed: January 25, 2017
    Publication date: May 11, 2017
    Applicant: Microsoft Technology Licensing, LLC
    Inventors: David Kruse, Vladimir Petter, Lokesh Srinivas Koppolu, David Dion, Mathew George
  • Publication number: 20170088370
    Abstract: A stacking system including an inverting arm arranged above the stacking system for selectively overturning a first elongated metal member into a second elongated metal member or not overturning the first elongated metal member into the second elongated metal member.
    Type: Application
    Filed: September 22, 2016
    Publication date: March 30, 2017
    Inventors: Robert David Dion, David Joshua Pettis, Andrew Damon Flack
  • Publication number: 20160050294
    Abstract: A generation identifier is employed with various systems and methods in order to identify situations where a workload has been reassigned to a new node and where a workload is still being processed by an old node during a failure between nodes. A master node may assign a workload to a worker node. The worker node sends a request to access target data. The request may be associated with a generation identifier and workload identifier that identifies the node and workload. At some point, a failure occurs between the master node and worker node. The master node reassigns the workload to another worker node. The new worker node accesses the target data with a different generation identifier, indicating to the storage system that the workload has been reassigned. The old worker node receives an indication from the storage system that the workload has been reassigned and stops processing the workload.
    Type: Application
    Filed: August 12, 2014
    Publication date: February 18, 2016
    Applicant: Microsoft Corporation
    Inventors: David Kruse, Qibo Zhu, David Dion, Vladimir Petter, Lokesh Srinivas Koppolu
  • Publication number: 20160041882
    Abstract: A request identifier is employed with various systems and methods in order to enable an application to pause execution during a failure and subsequently resume execution and communication with a storage system once the failure is resolved. An application residing on a node may attempt to access target data on a storage system. The application sends a request to access the target data. The request may be associated with a request identifier that identifies the application. When the storage system experiences a failure, the application receives a failure notification. The application pauses execution as a result of the notification. When the node reestablishes a connection to the storage system, the application resumes execution using the same request identifier. If the resume request is granted, the application is guaranteed that the target data was not modified during the failure.
    Type: Application
    Filed: August 7, 2014
    Publication date: February 11, 2016
    Applicant: Microsoft Corporation
    Inventors: David Kruse, Vladimir Petter, Lokesh Srinivas Koppolu, David Dion, Mathew George
  • Publication number: 20160036924
    Abstract: Embodiments provide workload processing for clustered systems. In an illustrative, non-limiting embodiment, a computer-implemented method may include identifying a server as an active node of a cluster; assigning a workload to the server in response to the identification; determining, after the assignment, that the server is no longer an active node of the cluster; calculating, in response to the determination, a probability that the server is capable of continuing to execute the workload; and deciding, based upon the probability, whether to allow the workload to remain assigned to the server.
    Type: Application
    Filed: November 24, 2014
    Publication date: February 4, 2016
    Applicant: Microsoft Technology Licensing, LLC.
    Inventors: Lokesh Srinivas Koppolu, David A. Dion, Abhinit Kumar, Amitabh P. Tamhane, Andrea D'Amato, Daniel Upton, Elden T. Christensen, Nicholas Maliwacki
  • Patent number: 9098609
    Abstract: A health monitoring technique monitors the health and performance of applications executing in a guest partition in a virtualized environment. In an embodiment, a guest integration component interacts with an application through an application programming interface in order for the virtualization platform to monitor the health and performance of the application. In another embodiment, the guest integration component may include a monitoring agent that accesses an event log and/or a performance monitor log to access the health and performance of the application. The health and performance of the application may then be analyzed by the virtualization platform to determine an appropriate remedial action.
    Type: Grant
    Filed: March 24, 2014
    Date of Patent: August 4, 2015
    Inventors: Christopher Eck, Lars Reuther, Rajesh Dave, Lokesh Srinivas Koppolu, Steven Ekren, David Dion, Sergey Meshcheryakov, Jonathan Fischer, Angshuman Bezbaruah
  • Patent number: 9026837
    Abstract: Placing an application on a node in a cluster. A method includes detecting an unexpected event indicating that an application should be placed on a node in the cluster. Real time information about resource utilization on one or more nodes in the cluster is received. Based on the real time information, a determination of a node to place the application is made. The application is placed on the determined node.
    Type: Grant
    Filed: September 9, 2011
    Date of Patent: May 5, 2015
    Assignee: Microsoft Technology Licensing, LLC
    Inventors: Amitabh Prakash Tamhane, Mykyta Synytskyy, Lokesh S Koppolu, David A. Dion, Andrea D'Amato
  • Patent number: 8875157
    Abstract: A method of managing a triggerable task in a cluster environment is described. The method includes accessing a definition of a task, wherein the definition includes a triggering event, and an action to be performed when the triggering event occurs. The method further includes, accessing a cluster policy defining how triggering events are interpreted on a node task basis for a plurality of nodes in a cluster. Based on the cluster policy, the method includes determining that the triggering event has occurred. As a result of the determination that the triggering event has occurred, the method further includes attempting to perform the action.
    Type: Grant
    Filed: September 9, 2011
    Date of Patent: October 28, 2014
    Assignee: Microsoft Corporation
    Inventors: David A. Dion, Lokesh S Koppolu, Symon Perriman, Zongwei Sun, Mykyta Synytskyy, Maksym Yanchenko