Patent ID: 9575986
Date: 2017-02-21
CPC Classifications: G06F

Claim:
1. A computer implemented method for managing design files, the method comprising: storing a plurality of design files of an integrated circuit, shared by multiple processes of a plurality of computers, in a design library of a server accessible to each of the plurality of computers, wherein each of the plurality of design files represents a portion of a design of the integrated circuit; creating a lock table with one or more processors associated with one or more computers in the plurality of computers, wherein each entry of the lock table comprises information regarding which design file stored in the design library is locked by which process, wherein the lock table is created in a process memory of a first process in a first computer in the plurality of computers when the information indicates that the design files in the design library are accessed only by the first process in the first computer; moving, with the one or more processors associated with the one or more computers in the plurality of computers, the lock table from the process memory of the first process to a common memory in the first computer in response to (i) information indicating that one of the design files in the design library is to be locked by a second process of the first computer, the common memory accessible to both the first and second processes, and (ii) determining that the design files in the design library are being accessed by the first and second processes in the first computer; and moving, with the one or more processors associated with the one or more computers in the plurality of computers, the lock table from the process memory of the first process in the first computer to the design library in response to (i) information indicating that one of the design files in the design library is to be locked by a process in a second computer different than the first computer and (ii) determining that the design files in the design library are being accessed by the first process in the first computer and the process in the second computer.