CN102169436B - General control kernel system used for integrated circuit manufacturing equipment - Google Patents

General control kernel system used for integrated circuit manufacturing equipment Download PDF

Info

Publication number
CN102169436B
CN102169436B CN201110120570.0A CN201110120570A CN102169436B CN 102169436 B CN102169436 B CN 102169436B CN 201110120570 A CN201110120570 A CN 201110120570A CN 102169436 B CN102169436 B CN 102169436B
Authority
CN
China
Prior art keywords
lock
control module
service
request
layer control
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201110120570.0A
Other languages
Chinese (zh)
Other versions
CN102169436A (en
Inventor
徐华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tsinghua University
Original Assignee
Tsinghua University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tsinghua University filed Critical Tsinghua University
Priority to CN201110120570.0A priority Critical patent/CN102169436B/en
Publication of CN102169436A publication Critical patent/CN102169436A/en
Priority to PCT/CN2011/081932 priority patent/WO2012151885A1/en
Application granted granted Critical
Publication of CN102169436B publication Critical patent/CN102169436B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1433Saving, restoring, recovering or retrying at system level during software upgrading

Abstract

The invention discloses a general control kernel system used for integrated circuit manufacturing equipment. The system comprises a configuration module, a control module and a monitoring module, wherein the configuration module is used for instantiating objects and registering the instantiated objects into name space when an object system is started, establishing an initial name space structure, and initializing the objects in the initial name space tree structure; the control module is used for controlling a service that a high-level control unit calls and executes a low-level control unit according to the initial name space tree structure established by the configuration module, wherein the controlled objects comprise a physical layer, a functional layer and an operation layer according to the level from low to high and the controlled objects also comprise a maintenance layer which is at the same level as the operation layer; and the monitoring module is used for monitoring conditions of the kernel system and executes corresponding operations independently when the conditions are met. The invention provides a strong application programming interface supporting software interlock, data logging and communication function, and realizes component development and software reuse through a flexible configuration strategy.

Description

General controls kernel system for integrated circuit manufacturing equipment
Technical field
The present invention relates to Computer Applied Technology and integrated circuit equipment technology field, particularly a kind of general controls kernel system for integrated circuit manufacturing equipment.
Background technology
Develop rapidly along with microelectric technique, infotech, network technology etc., global information industry is rapidly grown up, network economy rapid rising, kownledge economy first meeting clue, sophisticated technology in modern national defense and future war constantly emerges, and the mankind have entered information and cybertimes.Due to the core status of microelectric technique, microelectronics all more demonstrates its important strategic position than ever, and microelectronic industry has become the powerful expulsive force of the mainstay of global economy and economy, social development.
Kernel system, as a part for IC (Integrated Circuit, integrated circuit) industry, for developing real-time device controlling application program, has very important effect.But the kernel system versatility of existing integrated circuit is poor, thereby make developer's the efficiency of development equipment controlling application program lower, and the application program capacity poor robustness after exploitation.
Summary of the invention
Object of the present invention is intended at least solve one of above-mentioned technological deficiency, proposes especially the general controls kernel system for integrated circuit manufacturing equipment of a kind of efficient general and flexible configuration.
For achieving the above object, embodiments of the invention propose a kind of general controls kernel system for integrated circuit manufacturing equipment, comprise: configuration module, described configuration module is for when described kernel system starts, by object-instantiated and by the object registration after instantiation in name space, create initial name space tree construction, the object in described initial name space tree construction is carried out to initialization, wherein, the behavior of hardware device described in described object map; Control module, described control module controls for the initial name space tree construction creating according to configuration module the service that high-rise control module called and carried out low layer control module, wherein control the grade of picture is followed successively by Physical layer, functional layer and operation layer from low to high, and described control object also comprises and described other maintenance level of operation layer ad eundem; And monitoring module, described monitoring module is for monitoring the condition of described kernel system and carry out independently corresponding action when condition meeting.
In one embodiment of the invention, described configuration module comprises: configuration file resolver, and described configuration file resolver analysis configuration file, according to object described in the information instances of described configuration file; Registering unit, described registering unit for by the object registration of instantiation to name space, create initial name space tree construction, the set that described initial name space tree construction is a plurality of titles; Initialization unit, described initialization unit is according to initial name space tree construction described in first search algorithm variable, and the object after to registration carries out initialization according to the information of described configuration file.
In one embodiment of the invention, described registering unit is also for Making Alias, the corresponding one or more another names of a wherein said object.
In one embodiment of the invention, by one of following two kinds of modes access object: 1) title in name space tree construction is accessed object corresponding to described title by reference; 2) described by reference another name is accessed the object that described another name is corresponding.
In one embodiment of the invention, described control module comprises: Physical layer control module, and described Physical layer control module reads the data item of the underlying device in described hardware device, and provides service to described underlying device; Functional layer control module, the service of described functional layer control module by calling described Physical layer control module is to provide the service of functional layer; Operation layer control module, the service of described operation layer control module by calling described functional layer control module is to provide the service of operation layer; With maintenance level control module, described maintenance level control module is carried out localization of fault and the repairing to described Physical layer control module and functional layer control module, wherein, described maintenance level control module calls the service of described Physical layer control module and functional layer control module.
In one embodiment of the invention, described Physical layer control module further comprises EPICS protocol communication parts, described EPICS protocol communication parts utilize EPICS agreement and hardware device to communicate with swap data item, comprise the state value that reads the underlying device in described hardware device, and send set-point to described hardware device.
In one embodiment of the invention, described data item is divided into discrete type, continuous type and character string type according to the type of carrying data; Described data item is divided into read-only and read/write according to read/write operation type.
In one embodiment of the invention, utilize interlocking to check the value of described data item, interlocking comprises: set-point interlocking, only allows to revise imposing a condition while meeting for the data item of the described hardware device controlling the data item of the described hardware device reading or write.
In one embodiment of the invention, the interlocking of described set-point comprises: the item that reads and writes data, described in the read and write data data item that hardware device reads described in Xiang Weicong or the data item writing from described hardware device; And check character, the modification of described check character for reading and writing data described in judging whether to allow; Report to the police, described warning is used for when the modification of the item that reads and writes data described in rejection, and the block type of dishing out is reported to the police.
In one embodiment of the invention, described warning provides three to recover action: abandon, retry and continuation carry out.
In one embodiment of the invention, set-point interlocking also comprises trigger, qualifier, and described trigger is for arranging the condition reading and writing data described in modification, and described qualifier is for judging whether to verify the condition of described check character.
In one embodiment of the invention, described monitoring module is monitored the safe condition of described kernel system by value interlocking, and when triggering, corrects the unsafe condition of described kernel system, wherein said value interlocking comprises: trigger, and described trigger arranges the unsafe condition of described kernel system; Behavior list, described behavior list is for triggering the action after described unsafe condition, and wherein, when described behavior list comprises a plurality of action, described a plurality of actions are carried out one by one.
In one embodiment of the invention, described value interlocking also comprises: report to the police, described warning is used for providing unblock formula to report to the police.
In one embodiment of the invention, the service that described high-rise control module called and carried out low layer control module comprises the steps: that described high-rise control module sends the request of server lock or service lock request to obtain server lock or service lock to described low layer control module, parameter to the service of request is carried out initialization, to described low layer control module, sends the request of operation lock to obtain operation lock; Described high-rise control module, after obtaining described operation lock, calls and carries out the service that corresponding low layer control module is locked in described operation, and after service completes, discharges described operation lock; Described high-rise control module discharges described server lock or service lock, wherein, the request of described server lock is used for asking to obtain described server lock, and described high-rise control module utilizes described server lock to call service to described low layer control module, and locks described low layer control module; Described service lock request is used for asking to obtain described service lock, and described high-rise control module utilizes described service lock to call specified services to described low layer control module, and locking calling described specified services; The request of described operation lock is used for asking to obtain described operation lock, and described high-rise control module utilizes described operation lock to carry out described specified services, and locks the execution of described specified services.
In one embodiment of the invention, described low layer control module is when receiving from the server lock request of described high-rise control module or service lock request, if when current not active described server lock or service lock or operation lock, described low layer control module is authorized described high-rise control module server lock; If current not active described server lock or service lock or operation lock, or the service that current service lock is carried out with the service lock of described service lock request is identical, and described low layer control module is authorized described high-rise control module service lock.
In one embodiment of the invention, the current execution of service of described high-rise control module request, and while meeting following any condition, described low layer control module is authorized described high-rise control module operation lock, 1) do not have active server lock, service lock or operation to lock; 2) only there is the active service lock of a service for current request; 3) the server lock that only has a described high-rise control module to have.
In one embodiment of the invention, described low layer control module is placed on according to the sequencing arriving the request of server lock, service lock request or the request of operation lock that are not awarded server lock, service lock or operation lock in lock request waiting list.
In one embodiment of the invention, described low layer control module discharges after described operation lock at described high-rise control module, check described lock request waiting list, if current high-rise control module keeps server lock, described low layer control module is carried out the service corresponding to next one operation lock request of current high-rise control module; If current, keeping service lock, described low layer control module is carried out the service corresponding to next one operation lock request of service corresponding to described service lock; If current, there is no active server lock, service lock or operation lock, and next request is the request of server lock, to this server lock request grant service device lock, and the operation lock of carrying out the high-rise control module that has this server lock is asked corresponding service; If current, there is no active server lock, service lock or operation lock, and next request as service lock request, to this service lock request grant service lock, and carry out all high-rise control modules for service corresponding to this operation lock request; If current, there is no active server lock, service lock or operation lock, and next request is the request of operation lock, described low layer control module is carried out service corresponding to described operation lock request.
In one embodiment of the invention, further comprise alarm module, abnormal for occurring in described kernel system, send warning.
In one embodiment of the invention, described alarm module sends block type warning and unblock formula is reported to the police, and institute's alarm module will block transmission object place thread until remove described block type warning after the described block type of dishing out is reported to the police; Described alarm module, after the described unblock formula of dishing out is reported to the police, sends object place thread and continues operation.
In one embodiment of the invention, further comprise log pattern, for record the information of described kernel system operational process with the form of daily record, wherein, described log pattern comprises: data logging unit, and described data logging unit is for recording data and the event of described kernel system with the first predetermined period; With system journal unit, described system journal unit is for recording recalls information and the trace information of described kernel system with the second predetermined period.
In one embodiment of the invention, the log recording form that described data logging unit adopts comprises: time-based log recording, and described time-based log recording triggers by one or more condition triggers; Cycle log recording, described cycle log recording triggers by a time interval trigger.
In one embodiment of the invention, described in described system journal unit record the modification of data item, the information that the information of described interlocking, described warning are sent and the information of removing described warning.
The general controls kernel system for integrated circuit manufacturing equipment that the embodiment of the present invention provides, based on Windows xp operating system, adopts JAVA to realize, and tool has the following advantages:
1) concurrency and the resource by management system interlocks, and provides unified interface to I/O dissimilar in application program, and one carried out wrong processing and the wrong framework that saves time recovering, and solves problem time-consuming in controlling application program exploitation, fallibility.
2) the provide support powerful applications DLL (dynamic link library) of software interlocking, data logging, communication function.Particularly, the safety of the interlocking API of the general controls kernel system of the embodiment of the present invention (Application Programming Interface, application programming interface) assurance personnel and equipment.Recipe API can store and retrieve parameters of technique process.Parameters of technique process information when data logging API can obtain operation fast.
3) by collocation strategy flexibly, realize Components Development and software repeated usage.The general controls kernel system configuration strategy of the embodiment of the present invention can facilitate the code reuse in same application and between different application.And general controls kernel CONFIG.SYS allows the attribute of software developer's configuration component, although above-mentioned attribute can be different in different application, do not need to recompilate.
4) provide necessary instrument to support fast Development and debugging utility.Two powers that the general controls kernel system general controls kernel system of the embodiment of the present invention provides application program debugging and performance to follow the tracks of, comprise system journal service and console interface, wherein system journal service comprises generation system operation note, and console interface comprises the general controls kernel system environments state when checking and revising application program operation.
The general controls kernel system of the embodiment of the present invention can make the controlling application program that developer can fast Development stalwartness, by collocation strategy flexibly, realize Components Development and software repeated usage, can also provide necessary instrument to support fast Development and debugging utility.
The aspect that the present invention is additional and advantage in the following description part provide, and part will become obviously from the following description, or recognize by practice of the present invention.
Accompanying drawing explanation
Above-mentioned and/or the additional aspect of the present invention and advantage will become from the following description of the accompanying drawings of embodiments and obviously and easily understand, wherein:
Fig. 1 is according to the structural representation of the general controls kernel system for integrated circuit manufacturing equipment of the embodiment of the present invention;
Fig. 2 is the structural representation of configuration module;
Fig. 3 is the schematic diagram of name space;
Fig. 4 is name space uml class figure;
Fig. 5 is the structural representation of control module;
Fig. 6 is the schematic diagram of data item (DataItem);
Fig. 7 is the schematic diagram of the service of calling of control module;
Fig. 8 is the schematic diagram of control module call chain;
Fig. 9 is the alarm procedure schematic diagram of alarm module; With
Figure 10 is the structural representation of log pattern.
Embodiment
Describe embodiments of the invention below in detail, the example of described embodiment is shown in the drawings, and wherein same or similar label represents same or similar element or has the element of identical or similar functions from start to finish.Below by the embodiment being described with reference to the drawings, be exemplary, only for explaining the present invention, and can not be interpreted as limitation of the present invention.
As shown in Figure 1, the general controls kernel system 1000 for integrated circuit manufacturing equipment that the embodiment of the present invention provides, comprises configuration module 100, control module 200 and monitoring module 300.Wherein, configuration module 100 is for when described kernel system starts, by object-instantiated and by the object registration after instantiation in name space, create initial name space tree construction, object in described initial name space tree construction is carried out to initialization, wherein, the behavior of hardware device described in described object map; Control module 200 controls for the initial name space tree construction creating according to configuration module the service that high-rise control module called and carried out low layer control module, wherein control the grade of picture is followed successively by Physical layer, functional layer and operation layer from low to high, and described control object also comprises and described other maintenance level of operation layer ad eundem; Monitoring module 300 is for monitoring the condition of described kernel system and carry out independently corresponding action when condition meeting.
As shown in Figure 2, configuration module 100 comprises configuration file resolver 110, registering unit 120 and initialization unit 130.Wherein, configuration file resolver 110 is for analysis configuration file, according to object described in the information instances of described configuration file; Registering unit 120 for by the object registration of instantiation to name space, create initial name space tree construction, the set that wherein initial name space tree construction is a plurality of titles; Initialization unit 130 is for according to initial name space tree construction described in first search algorithm variable, and the object after to registration carries out initialization according to the information of described configuration file.
The layoutprocedure of configuration module 100 occurs in the start-up course of application program, is responsible for instantiation and initialization object.Most of object in application program all should be in application program launching instantiation in period, rather than the run time of application program.The code of the structure of name space in profile information and configurable (realizing Configurable interface) object build () method determines.Name space structure is not necessarily wanted the functional relationship between reflection object, or the relation between Physical layer, functional layer and operation layer, also not necessarily reflects the holding relationship of two objects.
Can must realize Configurable interface by configuration module 100 instantiations and initialized object, its interface message is as follows:
public?abstract?void?build()
public?abstract?void?init()
public?abstract?void?verifyInit()
public?abstract?void?startRunTime()
Wherein, build () interface method is for other objects that need to create of instantiation; Init () interface method is for initialization object, and typical operation is create the linking relationship between object and change Obj State; VerifyInit () interface method is used for verifying that attribute all arranges correctly to guarantee all, thereby assurance object can be carried out operation safely, avoids run time error; When startRunTime () method is used for starting operation, comprise that object is set to run time behaviour, for example, allow some threads to bring into operation, or be connected to external unit.
The layoutprocedure of configuration module 100 comprises following double teacher:
First stage: configuration file resolver 110 analysis configuration files, registering unit 120 is according to profile information instance object, and by object registration in name space, create initial name space tree construction;
Subordinate phase: initialization unit 130 travels through according to Depth Priority Algorithm the initial name space tree construction that the first stage creates from top to bottom, from left to right, the configuration file initialization information of resolving according to the first stage carries out initialization to registry object, by calling the build () method of the configurable object of registration node association, has created whole name space tree construction;
Phase III: initialization unit 130 is according to Depth Priority Algorithm traversal name space tree construction, and the init () method of calling registry object in name space tree completes the initial work of object;
Fourth stage: initialization unit 130 is according to Depth Priority Algorithm traversal name space tree construction, and the verifyInit () method of calling registry object in name space tree completes the initialization checking work of object;
Five-stage: initialization unit 130 is according to Depth Priority Algorithm traversal name space tree construction, the startRunTime () method of calling registry object in name space tree is carried out the preliminary work before object operation or object is set is running status.
Wherein, the first stage of layoutprocedure is completed by configuration file resolver 110, and second is completed by ReferenceBroker to fourth stage, and registering unit 120 and initialization unit 130 adopt ReferenceBroker to complete.In other words, the layoutprocedure of configuration module 100 comprises that initialization Parse resolves the registry object of the initial name space tree construction generating, and build (), the init (), verifyInit () and the startRunTime () that call successively Configurable interface complete.General controls kernel system configuration function has facilitated the exploitation of the application program based on assembly.
ReferenceBroker is a single target, be responsible for object registration in name space, and service object is quoted and title between mapping.ReferenceBroker mainly provides three kinds of functions:
1) registry object: set up the mapping relations between object and title;
2) Make Alias: the mapping relations of setting up another name and name space tree node;
3) quote registry object.
Name space is the tree construction consisting of node, and the most of node in tree is all associated with object.Name space is the Yi Ge registration body of object, and each object connects each other by their title therein, thereby a public address space is provided.By creating name space with ReferenceBroker registry object, in name space registration named object, in kernel system 1000, any one object can carry out any one named object in reference name space by title.During registration, need the title of appointed object, and registry object is with respect to the position of other objects in tree.All objects in kernel system 1000 can be inquired about ReferenceBroker and obtain quoting of any one object of being registered in name space.
In one embodiment of the invention, by one of following two kinds of modes access object:
1) object corresponding to the access title of the title in name space tree construction by reference;
2) corresponding object is called in another name access by reference.
About object corresponding to title access title in name space tree construction by reference, the most nodes in initial name space tree are all associated with named object, and these objects can identify by two kinds of modes:
Fully-qualified name: from the root node of name space tree to current object.Each fully-qualified name in name space is unique.As shown in Figure 3, the fully-qualified name of objectG is "/objectA/objectF/objectG ".
Relative name: always have a starting point, this starting point is called references object.In other words, references object is when using a relative name object of registration or quoting an object, and a starting point must be provided clearly, and this starting point is a references object.From references object to current object.For example, if objectP is references object, the relative name of objectG is " ../../objectA/objectF/objectG ".
The name of the named object that node is quoted is called part name, as the part of objectG " objectG " by name.Part name is not unique.
About calling by reference object corresponding to access another name, first the concept of another name is described.Another name can create by registering unit 120, and another paths of a primary object (and other objects) in access name space is provided.An object can corresponding one or more another names.When setting up an alias, in name space, inserted one " another name node (alias node) ".As shown in Figure 3, aliasOfObjectF is an alias node, and it points to objectF node, thereby objectF object has two paths to access: article one path: "/objectA/objectF "; Second path: "/aliasOfObjectF ".ObjectJ also has two paths to access: article one path: "/objectA/objectF/objectJ "; Second path: "/aliasOfObjectF/objectJ ".
Below with reference to Fig. 4, all types of nodes of name space tree are described.
Name space is a kind of tree data structure, comprises the node of three types:
General node: general node and object are not set up incidence relation;
Register node: register node and object are set up incidence relation;
Another name node: another name node points to other nodes in tree, conveniently accesses by another name.
As shown in Figure 4, NamedObject is an important class in general controls kernel system library, and in system library, most of class all derives from from NamedObject.NamedObject inherits from OssObject class, has realized Configurable and MsgLogger interface.NamedObject is named object, and its key property is to be registered in name space, and can quote by title after name space has been set up, and its derived class has been inherited system journal writing function easily.
The realization of name space tree construction is comprised of UnNamedNode, AliasNode and ReferenceNode three major types type node.Wherein, UnNamedNode can be registered under the ReferenceNode node of association (quoting) named object NamedObject, and an associated configurable Configurable object.Wherein, NamedObject can realize Configurable interface.
AliasNode node and ReferenceNode node are NamespaceNode node.Wherein, AliasNode, as another name node, does not have child node.AliasNode points to a ReferenNode node in name space.
ReferenceNode node is main node in name space, and it can an associated named object NamedObject, also can not associated any object (being now equivalent to general node).ReferenceBroker is in charge of and safeguards whole name space tree construction, and according to title, returns to the associated object of respective nodes when operation.
Control module 200 and monitoring module 300 are main functional modules of generic core system 1000, inherit from publicly-owned class ControlObject and ControlMonitor.These classes have built-in function, make steering logic be more prone to realize and safeguard.Typical case's application of ControlObject means an equipment control field that definition is good.Each ControlObject provides a services set being associated to complete the control operation in corresponding field.For example, a control object that represents valve may have two services of opening and closing, two operations that this also has for actual valve door equipment.ControlObject has built-in characteristic to solve more difficult control problem, for example wrong recovery and multithreading.
Below in conjunction with specific embodiment, respectively control module and monitoring module are described.
Control module 200 adopts laminated tissue, is followed successively by Physical layer, functional layer, operation layer/maintenance level from low to high.Correspondingly, as shown in Figure 5, control module 200 comprises Physical layer control module 210, functional layer control module 220, operation layer control module 230 and maintenance level control module 240.Wherein, Physical layer control module 210 is for reading the data item of the underlying device of hardware device 2000, and provides service to underlying device; The service of functional layer control module 220 by calling Physical layer control module 210 is to provide the service of functional layer; The service of operation layer control module 230 by calling function layer control module 220 is to provide the service of operation layer; Localization of fault and repairing that maintenance level control module 240 is carried out Physical layer control module 210 and functional layer control module 220, wherein, maintenance level control module 240 can call the service of Physical layer control module 210 and functional layer control module 220.High-rise control module can call method and the service with layer or low layer control module, thereby sets up the call chain of control module 200.
Below in conjunction with specific embodiment, respectively the service invocation procedure in control module 200 is described.
As shown in Figure 5, Physical layer control module 210 is positioned at the bottom, the low layer equipment in mapping hardware device 2000, for example simple equipment in hardware device 2000.Physical layer control module 210 comprises EPICS protocol communication parts 211, be used for utilizing EPICS agreement and hardware device 2000 to communicate with swap data item (DataItem), comprise the state value that reads the underlying device in hardware device 2000, and send to hardware device 2000 set-point being associated.A valve control object class for example, it may quote the solenoidal read/write DataItem that an expression opens or closes valve, and a read-only DataItem who represents the feeler of valve open-close state.Because the operation of above-mentioned DataItems can not be simplified, so this valve object belongs to the bottom.
Data item (DataItem) provides a kind of mechanism of carrying out exchanges data between the modules between kernel system 1000 and external hardware device 2000 and in kernel system 1000.Wherein, by being provided to abstraction interface of I/O device driver with the exchanges data between realization and external hardware device 2000.By storage need to be in whole kernel system 1000 overall visible internal data to realize the exchanges data between the modules in kernel system 1000.The DataItems of physical equipment is associated by EPICS I/O and physical equipment.
In one embodiment of the invention, data item (DataItem) is according to the difference of carrying data type, can be divided into discrete type (int), continuous type (double), character string type (string), and general type (any java object).
DataItem, according to the difference of read/write (I/O) action type, can be divided into read-only type and read/write type.As shown in Figure 6, read-only DataItem is associated with a data source, only has this data source can upgrade its value, and this data source can be an I/O object, can be also a non-I/O object.Read-only data item (DataItem) is readable and can apply for.
Read-write DataItem is associated with a target, to the setting of read-write DataItem, will be delivered on corresponding physical equipment I/O point, and read-write DataItem also can be used for non-I/O object, only represents a read-write variable.Read-write DataItem is readable, can write, can apply for, can veto.
In one embodiment of the invention, the DataItem that has a data source comprises three key properties: access module, repeating query (Polling) and validity.
1) access module: read from DataItem or its data source
Local: from local DataItem value;
Long-range: by its data source, to read long-range physical equipment, then rreturn value.Because remote access is longer than the time of local IP access, when waiting facilities rreturn value, need to wait for;
Intelligence: if local IP access is used in repeating query (polling), otherwise use remote access.
2) whether repeating query (Polling): DataItem is by its data source continuous updating.In following situation, will automatically realize polling: have subscribers, have attachers or used, this DataSpec is just used the CollectionSpec of synchronous mode to use by one in a DataSpec.
3) between validity: DataItem and its data source, whether mate
Invalid: data were never read, and data source offline;
Not_init: data are not read, and data source online;
Stale: data are fresh not perhaps, but data source online;
Offline: data are fresh not perhaps, but data source offline;
Good: data fresh, one of them has internal data source or there is no the data value good always of the DataItem of data source.
The relevant interface of data item (DataItem) comprises: Subscriber interface, Vetoer interface TimeListener interface.
Subscriber interface: void updateFromItem (DataItem, NewValue, Valid).The method of Sub scriber interface is registered to DataItem above for calling DataItem.subscribe (Subscriber), the interface method updateFromItem of Automatically invoked Subscriber is carried out to corresponding action when DataItem value changes.
Vetoer interface: void checkVeto (DataItem, ProposedValue).The method of Vetoer interface is registered to DataItem above for calling DataItem.subscribeVetoer (Vetoer), the interface method checkVeto that calls Vetoer is verified to the value of proposal is received or is vetoed after the value of DataItem is set up.
TimeListener interface: updateFromTimer () method.The method of TimeListener interface is registered on Timer for calling Timer.subscribeTimerListener (TimeListener), and after being timed to, the interface method subscribeTimerListener that calls TimeListener carries out corresponding action.
Data item (DataItem) comprises must attribute and optional attribute.Wherein, essential attribute forms the state state of object.
Essential attribute: value, timestamp, validity;
Optional attribute: data source, target, typeInfo, peer, simulator.
In order providing, to cover the safe floor that DataItem value changes, when kernel system 1000, to carry out set-point interlocking.Set-point interlocking is based on DataItem, and application is upper to DataItems, and when DataItems value changes, carries out corresponding action.Set-point interlocking is preventative.Set-point interlocking only can check the value of DataItem, and can not check the state of an object.Particularly, set-point interlocking is controlled the data item of the hardware device 2000 reading or the data item of the hardware device 2000 that writes only allows to revise imposing a condition while meeting.
Set-point interlocking comprises read and write data (DataItem), one or more check character and a warning.In addition, set-point interlocking can further include a trigger and a qualifier.Wherein, trigger and qualifier are optional condition.The set-point available following formula of interlocking represents:
SetpointInterlock=R-W?DataItem+Trigger+Qualifier+{Checkers}+Blocking?Alarm。
When trigger conditions triggers as true, qualifier condition is true, and when at least one check character is false, set-point interlocking will be vetoed the modification that a DataItem is proposed, otherwise the modification of proposing will be allowed to.
A read-write DataItem: read and write data (DataItem) is for the data item reading from hardware device 2000 or the data item writing from hardware device 2000.The associated specific DataItem of set-point interlocking, described specific data item is specified or directly in the interlocking of set-point, is specified in trigger conditions;
Trigger: trigger is for arranging the condition of revising the item that reads and writes data.Trigger first condition for checking, this condition is a complex conditions, is generally to relate to DataItem is proposed to a condition of revising.If show to specify a read-write DataItem, to interlock associated DataItem be first read-write DataItem that in trigger complex conditions, rise on the left side in set-point.(rear root traversal)
Qualifier: qualifier is for judging whether to verify the condition of check character.The condition of checking check character is a complex conditions.While only having these specified conditions to meet, just need to check follow-up condition.The currency work of qualifier based on DataItem, even if comprise in qualifier and DataItem identical in trigger.Trigger checks the proposal value (currency is not revised) of DataItem, and qualifier checks the currency of identical DataItem.The purposes of qualifier is to simplify a complicated trigger conditions.
Check character: the modification of check character for judging whether to allow to read and write data.Check character determines the description whether settings of proposal are allowed to.Check character interface is current only has one to realize demand.Demand, based on condition, can be a simple condition or a complex conditions.Only have when corresponding conditions is true, the settings of proposal are just allowed to.If demand can not meet the demands, can carry out self-defined special examined demand by realizing check character interface.Check character also can be based on DataItem currency work.A set-point interlocking must at least comprise a check character.
Report to the police: report to the police in rejection, read and write data modification time, the block type of dishing out is reported to the police.If the settings of proposing are vetoed, the block type of will dishing out is reported to the police.A set-point interlocking must comprise one and block warning.If used, alarm method demonstration appointment warning, the warning that set-point interlocking will be set up it are set.Warning can provide three recovery actions to abandon (Abort), retry (Retry) and continue to carry out (Continue).If use alarm method to be set to have transmitted a null parameter, represent to be associated without any warning meeting and set-point interlocking, like this when proposal value is vetoed, will throw exception.
Below the concept of the condition relating in the present invention and event is described.
A condition is an object, relates to the comparison of DataItems and constant.The value of condition can be divided into true, false or unknown.Wherein, unknown is the value when the associated one or more DataItem offline of condition.In general controls kernel system 1000, create a conditional object, just can in kernel system 1000, by conditional name, visit this condition in optional position.In other words, while not needing to need, all rewrite logic does not judge statement at every turn, and a conditional object carrys out the same logic judgement of reuse by reference.
Condition can be simple condition or complex conditions.Simple condition is for example to compare two DataItem, or compares a DataItem and a constant.The necessary type compatibility of element of two comparisons, can compare.Complex conditions for example associates two conditions for according with (AND, OR) by dyadic logical operation, thus condition tree of so associated formation, and each node in condition tree can judge.
Each condition comprises left and/or right, operational symbol, and each condition comprises two or three elements.Table 1 shows the structure of condition.
Table 1
Figure BDA0000060331430000111
As can be seen from Table 1, conditional operator comprises:
1) comparison operator: " > ", " >=", " < ", " <=", "==", " unequal to ";
2) logical operator: " AND ", " OR ", " NOT ";
3) other operational symbols: " CHANGES ", " TIMER ", " FOR ".
Condition is mainly used in following three kinds of situations:
1) waitFor method, wherein waitFor method is a method in base control class;
2) event, carrys out establishment event by condition, is used for the condition of the event that creates to be called event source;
3) service condition provides decision information, the run time version type deciding according to its value.
Event creates from condition (event source), once just creating, event exists, but sluggish, until first condition in condition tree triggers as true.When last (outermost layer) condition triggers as true, namely, when complete condition tree of judgement, event occurs.After event occurs, using own as parameter, notify its registrant.
Table 2 shows condition and the corresponding table of event of the general controls kernel system 1000 of the embodiment of the present invention.
Table 2
As shown in table 2, if event OR based on a plurality of conditions connects, when occurring, event need to know that so it is true which condition has triggered whole condition.The information that condition list provides is the value state of each condition when event occurs.Condition list is a vector, and while having comprised event generation, different condition quotes and value.
The complex conditions being coupled together by dyadic logical operation symbol forms a condition and sets.Its conditional tree comprises leaf node and branch node.Each node in condition tree represents a condition, and described condition can be for judgement.The condition node that the various concrete subclass that condition tree is derived from by basic condition abstract class represents is formed.Wherein, leaf node represents simple condition, for a change the derived class (Equal, NotEqualCondition, Greater, GreaterEqual, Less, LessEqual) of condition (representing DataItem " CHANGES " condition) and abstract class leaf condition.
Branch node represents compound condition, comprises that Not, condition change the derived class of condition and the abstract class branch condition being connected by dyadic logical operation symbol.Wherein, Not represents the compound condition that monadic logic operational symbol NOT connects, and condition change condition represents condition " CHANGES " condition.The derived class of the abstract class branch condition being connected by dyadic logical operation symbol comprises And and Or.
Event creates from (event source) condition, corresponding condition tree, thus also created an event tree.Corresponding event tree also has leaf node and branch node.The event node that event tree is represented by the various concrete subclass of controlling the derivation of event abstract class is formed.Wherein, for a change event (corresponding with change condition) and leaf event (corresponding with leaf condition) of leaf node; Branch node can change event (to change condition corresponding with condition) for condition, without event (with unconditionally corresponding), time-event (expression condition " FOR " periodic condition, corresponding with a kind of time conditions) and logic event (corresponding with branch condition).
Condition tree is static concept, and event tree is dynamic concept.3 member variables in the definition of abstract class control event, have been comprised: Condition containerCondition, BaseCondition topOfConditionTree and EventSubscriber eventSubscriber.Wherein, Condition containerCondition represent with respective conditions tree in the condition encapsulation of pacing items node.BaseCondition topOfConditionTree represents the root node of condition tree.EventSubscriber eventSubscriber represents the event applicant to its registration, is actually the father node of this event node in event tree when realizing: in condition tree, each non-root node has and only have a father node; The object of registering to the root node of condition tree has been realized EventSubscriber interface, to can access timely notice when whole conditional value triggers as true.
The dynamic of event tree realizes by Subscriber pattern: in event tree, branch node is by realizing EventSubscriber interface (condition change event, without event, logic event) or TimerListener interface (time-event), to its child node registration, when its child node conditional value changes, be notified, carry out action accordingly.In event tree, leafy node is associated with DataItem, by realizing UntypedSubscriber interface (change event) or DiscreteSubscriber, ContinuousSubscriber and TextSubscriber (leaf event) interface, and to associated DataItem registration, when associated DataItem value changes, be notified, and carry out corresponding actions.
Thereby event tree is a kind of informing mechanism from the bottom to top: DataItem → leaf node → branch node (father node) → root node, thus complete the timely judgement of the conditional value of whole event tree.When the conditional value of event tree outermost layer root node triggers as true, event occurs, and by calling the updateFromEvent interface method of the EventSubscriber interface that its registrant realizes, carries out corresponding actions.
When the establishment of event tree, the judgement of event value and registrant's notice, use case lock.In event tree constructive process, whole event tree starts recurrence from root node and creates, and in event tree, all nodes are shared same event lock, effectively synchronous to guarantee that the renewal of different node event value obtains, controlled carrying out, and there will not be inconsistent situation.
Functional layer control module 220 is by calling the service of Physical layer, and called by operation layer control module 230.Functional layer control module 220 provides a complete service.For example, a functional layer vacuum evaporation object may call a Physical layer valve object and a Physical layer pump object, provides the operation of chamber vacuum pumping.Functional layer control module 220 is generally supvr.For example, functional layer isolation valve object can be controlled the action of a plurality of isolation valves in Physical layer.
Operation layer control module 230 is positioned at top.In the general controls kernel system 1000 of the embodiment of the present invention, operator can use any client of general controls kernel system 1000.Therefore the operator of a general controls kernel system 1000 can be operating personnel, also can for example,, for a cluster equipment supervision software (CTC), can also carry out mutual software entity with operation layer general controls kernel system application for any.Operation layer control module 230 can pass through the service of functional layer control module 220 calling function layers, and can not cross the service that functional layer control module 220 directly calls Physical layer control module 210.
Maintenance level control module 240 is positioned at top.Maintenance level is by a user interface and extraneous mutual another layer except operation layer.Maintenance level control module 240 offers view of service engineer (not operation person), for carrying out localization of fault and the repairing of bottom.Maintenance level control module 240 can directly call Physical layer control module 210 and functional layer control module 220.
The mode of the mutual employing client/server between each layer of control module, it is server that the control module of service is wherein provided, the control module that calls service is called client.In one embodiment of the invention, a control module can be server and client side simultaneously.For example: operation layer control module 230 had been both server, be again client.
Particularly, operation layer control module 230 can call the service of low layer control module, also can for example, by operator (CTC), be called its service simultaneously.Functional layer control module 220 had been both server conventionally, was again client.Functional layer control module 220 can call the service of low layer control module, also can be called its service by high-rise control module simultaneously.Physical layer control module 210 is only server conventionally, high-rise control module can call its service, but Physical layer control module 210 can oneself not call service, but the setValue () method of calling simply associated DataItems arranges the I/O point of physical equipment.When a control module (client) is asked the service of another control module (server), request will be queued up, until another control object is idle.Client will be blocked until the service of asking starts to carry out, and server will be locked until the service of asking completes execution.
All (comprising unlock) methods of locking are all parts for control object class, by client, on server, are called.The lock of a control object can comprise following several situation:
1) do not lock;
2) an operation lock;
3) a server lock;
4) service lock;
5) a server lock and an operation lock;
5) a plurality of service lock (for identical service) and an operation lock.
Wherein, the request of server lock is used for asking to obtain server lock, and high-rise control module utilizes described server lock to call service to low layer control module, and locks low layer control module.Service lock request is used for asking to obtain service lock, and high-rise control module utilizes described service lock to call specified services to low layer control module, and locking calling described specified services.The request of operation lock is used for asking obtaining operation lock, and high-rise control module utilizes described operation lock to carry out described specified services, and locks the execution of described specified services.
Create a control object, need to derive from the derived class from control object or existing control object.Create a service of control object, need be as publicly-owned (public) inner classes of control object, and derive from the business of automatic control uniform.
As shown in Figure 7, as publicly-owned (public) inner classes of control object, need to realize the abstract method of definition in the service of control: public void execute () throws BaseException customizes specific service logic.But the execute () method of a service can not be called other services of identical control object, like this deadlock will occur, because a control object once only allows a service execution.
The service that high-rise control module called and carried out low layer control module comprises the steps:
1) preparatory stage:
1.1) process lock request: when a service is carried out in high-rise control module request, conventionally first apply for a server lock or service lock.
Low layer control module is when receiving from the server lock request of high-rise control module or service lock request, and if while there is no active server lock or service lock or operation lock current, low layer control module authorizes institute high-rise control module server lock.
If current, there is no active server lock or service lock or operation lock, or the service that current service lock is carried out with the service lock of described service lock request is identical, low layer control module is authorized high-rise control module service lock.
If lock request is not authorized immediately, place it in the tail of the queue of lock request waiting list.Low layer control module is placed on according to the sequencing arriving the request of server lock, service lock request or the request of operation lock that are not awarded server lock, service lock or operation lock in lock request waiting list.All lock requests have identical priority in waiting list.If a plurality of clients attempt obtaining a lock simultaneously, only have a lock request to be awarded, other lock request will be waited in line to authorize.Use unlock method to remove all locks.If server or client are ended, all locks will discharge automatically.The request of lock and authorize and need to use certain data structure, and considers the consistance of data structure, realizes synchronous to same data structure access of a plurality of threads.
1.2) instantiation and calling: client instanceization and call service.A new control service inner classes example is created, and the required parameter of service of request is carried out to initialization.
1.3) check availability: the service of request is licensed (i.e. application is to operation lock) immediately, if the service of request is current not to be carried out (without any serving in current execution), and while meeting following any condition, described low layer control module is authorized described high-rise control module operation lock.
A) there is no active server lock, service lock or operation lock;
B) only there is the active service lock of a service for current request;
C) the server lock that only has a described high-rise control module to have, in other words, only has an active server lock, and is had by current this client.
If the request of operation lock is not authorized immediately, place it in the tail of the queue of lock request waiting list.
2) carry out service
2.1) call: when control module is prepared operation service, client has obtained the operation lock of server automatically.Carry out service, the execute () method of server calls institute request service.Perhaps, execute () method can be called other method or other service, thereby sets up a call chain.When another service is called, current service is considered to operate in " father's pattern ", so the still maintenance of (operation) lock of father's service, until all subordinate method and service complete.The service of calling does not pass control to the service that it calls, but oneself keeps this control, thereby operation lock will keep always, until service completes.
When a control service, at a control module, called a service, these two entities are considered to a part for same call chain.In a call chain, can link a plurality of control modules.High-rise control module in call chain generally will block, because they wait for that the low layer control module in call chain completes its service.Call chain is only just effective when object keeps the lock to another object, once service call completes, all locks are all released, server has not just suffered in call chain.
2.2) report to the police and end: in the process of implementation, service may run into a condition, this makes its warning of dishing out.Report to the police and recover to need service to re-execute.This is served with the abnormal form of RetryException and dishes out, and this is extremely controlled objective system and intercepts and captures, and system then continues to call the execute () method that this controls service, re-executes the code that causes warning to be dished out.Recovering option also may need service to end midway, and this mechanism is similar with retry, and an AbortException will be controlled objective system and intercept and capture, and cause object to end this service.
2.3) complete: service execution completes, discharge operation lock.
2.4) discharge server lock or service lock: high-rise control module will discharge server lock or service lock.
As shown in Figure 8, control object has formed one with method of calling or beginning mode to calling of other control objects and has controlled service service call chain.In Fig. 8, control object CO_A calls the control service of CO_B in call mode, and the control service of calling CO_C and CO_D in beginning mode is served in the control of CO_B, and the control service of CO_F is called in the control service of CO_C.Control object CO_E is also with the control service of method of calling request CO_B (can be with control object CO_A request identical, also may be different).Because the active operation of authorizing is locked to, only have one, control object once can only be carried out a services request more.Thereby CO_E the operation lock request of CO_B to be placed on to the waitingLockRequests queue of lockManager data member of CO_B medium to be granted.
If the requested termination or capture extremely when carrying out service of an object in call chain, this object will be ended all control objects of its association by server and client side's form.For example, any object in Fig. 8 (for example CO_D) is started and ended, will finally end control objects all in figure.Abort process comprises:
S1:CO_D removes its all lock requests of authorizing, and completes termination, and abort request is upwards delivered to its client CO_B along call chain;
S2:CO_B passes to abort request the server CO_F of server CO_C and CO_C downwards successively along Yi Tiao call chain branch;
S3:CO_F first completes termination, and CO_C then completes termination;
CO_B is got back in control, and CO_B completes termination, and along Liang Tiao call chain branch, abort request is delivered to its client, i.e. CO_A and CO_E, and correspondingly CO_A and CO_E also complete termination in succession;
S4: abort process finishes, but control object is not destroyed.
Whenever a service execution completes, low layer control module discharges after described operation lock at described high-rise control module, and low layer control module (server) will check lock request waiting list, decide next carry out which service.Check that lock request waiting list comprises each the lock request in traversal lock request waiting list.
1) current this client (high-rise control module) is still keeping server lock, and server (low layer control module) has execution the next services request (request of operation lock) of the client of server lock.
2) currently keeping a service lock, server (low layer control module) will be carried out the next services request of this service (request of operation lock).
3) current do not have an active lock, there is no active server lock or service lock, and operation is locked in before and after service execution application automatically and discharges, and next request is a server lock, so to this server lock request grant service device lock.Server (low layer control module) is then carried out the next services request (operation lock) of the client (high-rise control module) that has this server lock.
4) current do not have an active lock, and next request is a service lock, to this service lock request grant service lock.Server (low layer control module) is then carried out any client (high-rise control module) for the execution request (operation lock) of this service.
5) current do not have active server lock, service lock or operation lock, and the next one is that services request is the request of operation lock, and server (low layer control module) is carried out service corresponding to described operation lock request.
The form that the service that control module 200 provides is controlled service by inner classes realizes.High-rise control module receives order, then calls low layer control module fill order.The value that DataItems is set or reads at the Physical layer control module 210 of the bottom is carried out actuating equipment I/O.Control module 200 has following key property:
1) allow to carry out concomitantly without interfering with each other service between control module, and do not need to set up independently thread, do not carry out, this realizes by lock is set on control module;
2) comprise a powerful method-waitFor, waitFor is used for execution out of service until certain condition is met;
3) process abnormal healthy and strongly and end, because current control module can obtain the relation between himself and other control modules, client or server that described other control modules are current control module.
The service of controlling is an important built-in characteristic of control module, be suitable between two control modules (client-requested service, and server is carried out service) alternately, a built-in safe floor is provided, comprising:
1) race condition: once can only carry out a service on server.When a service operation, the server at service place is locked.When control object all services request of queuing up, determine, which kind of sequentially carry out the request of queuing with.
2) thread synchronization: service has realized multithreading, but do not use Java thread synchronization mechanism.Synchronization mechanism has been applied the thought of " critical section ", once can only in critical section, be carried out by a thread concept that service application is identical with synchronization mechanism in " critical section ".
3) abnormality processing: service is processed abnormal automatically, as ended and retry.
Monitoring module (ControlMonitor) 300 is for monitoring the condition of kernel system 1000 and carry out independently corresponding action when condition meeting.The concurrent executable operations of other modules of ControlMonitor object and kernel system 1000.Monitoring module 300 detects a set condition, and when specified conditions meet, carries out corresponding action.For example, monitoring module 300 is carried out the task of safeguarding a cavate pressure when a particular procedure is carried out, and this control object is only just moved when this particular procedure is carried out.A purposes of ControlMonitor is as backstage emulator, monitors that continuous data item is set to certain value in particular range, then allows sensing data item carry out the response of emulation expectation.
Monitoring module 300 comprises a running mark, and described sign automatically creates when instantiation monitoring module 300 object.Running mark is a DataItem, for representing the state of monitoring module 300, i.e. and current whether operation.
By calling startRunning () method, start a monitoring module 300.When having called this startRunning () method, kernel system 1000 arranges running mark for opening, and calls execute () method.Must carry out monitoring function by heavily loaded execute () method.Execute () comprises that specified conditions of a waitFor () method wait occur.When condition occurs, execute () carries out the action of appointment, then generally turns back to waitFor () method again, thereby forms a circulation.Therefore, the monitoring module 300 of operation can be carried out waitFor () or specifically action.
By calling stopRunning () method, stop a monitoring module 300, kernel system 1000 arranges running mark for closing.If monitoring module 300 is in wait, waitFor () method exits, and starts to carry out execute ().If monitoring module 300 is performing an action, action will continue.Running mark is set and for closing, can automatically stop monitoring module 300, need to add in cycling condition the judgement to running mark.
Monitoring module 300 can be the client of a control module in control module 200, represents the service that its execute () method can be called a control module.But monitoring module 300 self does not provide service, can not become server.Therefore, monitoring module 300 is always on the top of call chain.
Monitoring module 300 can be by calling startAbort () or haltMonitor () method is ended.When monitoring module 300 is required to end, it guarantees that in call chain, all control objects of under it carrying out service all complete termination, then controls the abort code that forwards application program definition to.Then monitoring module 300 stops carrying out, unless it is customized to, continues to carry out after an abort.HaltMonitor () ends monitoring module 300 and carries out, and blocks caller until end to be successfully completed.
Monitoring module 300 is more flexible than Interlock, and Interlock can only arrange a DataItem, and monitoring module 300 can be realized various motion by heavily loaded execute () method.
When meeting the following conditions, the service of control module is long-range available:
1) general controls kernel system 1000 and ClusterLink CTC or GFX are integrated;
2) Java or C++ client and the general controls kernel system 1000 of writing oneself communicate, and described client can be CTC, data gathering system etc. in maintenance or operation-interface, factory.
The remote interface of general controls kernel system 1000 allows control object service by a program far call independently.When a service is called by this way, be called as far call.Teleprogram can operate on same computer with general controls kernel system 1000, also may operate on the different computing machines in consolidated network.Now need to follow predetermined rule so that the service remote accessible of a control object.
In one embodiment of the invention, monitoring module 300 can be monitored by value interlocking the safe condition of kernel system 1000, and corrects when the unsafe condition of kernel system 1000 triggers.Value interlocking is chastening.Value interlocking detects DataItem and whether reaches a particular value, and automatically performs a series of relevant operations.For example, value interlocking can be for detection of a unsafe condition in equipment, and when unsafe condition occurs, carries out a series of actions, and equipment is returned to a safe condition.
Value interlocking comprises a trigger and a behavior list, and in addition, value interlocking can also comprise a unblock formula warning.Wherein, unblock formula is reported to the police as optional condition.Value interlocking can be formulated as: ValueInterlock=Trigger+{Action}+Unblocking Alarm.
Trigger: trigger arranges the unsafe condition of kernel system 1000, for describing unsafe condition.When trigger conditions that value interlocking is absorbed in, represent that kernel system 1000 is in unsafe condition.Trigger conditions can be a simple condition, or a complex conditions.
Behavior list: behavior list is for triggering the action after unsafe condition, and wherein, when described behavior list comprises a plurality of action, a plurality of actions can be carried out one by one.Particularly, behavior list is an object with execute method.When trigger conditions triggers as true time, value interlocking is by the execute interface method of Automatically invoked behavior.Current behavior interface has three to realize class, and Assignment, Addition and Ensure, modify to a read-write DataItem.If above-mentioned three behaviors realize class and cannot satisfy the demands, can be by realizing the self-defined special action demand of behavior interface.The DataItem revising in behavior can be a DataItem in trigger conditions, can be also a diverse DataItem.If value interlocking has a plurality of behaviors, all behaviors will be carried out one by one.
Report to the police: report to the police as unblock warning.If exist described unblock to report to the police, it is dished out in Ensure action.
General controls kernel system 1000 further comprises alarm module 400, for occurring in kernel system 1000, sends warning when abnormal.Alarm module 400 can notification operator or the abnormal generation of other entities (as distance host), provides alternative recovery action, for removing warning simultaneously.
The type of alarm that alarm module 400 sends comprises that block type is reported to the police and unblock formula is reported to the police.Wherein, alarm module 400 will block transmission object place thread until remove block type warning after the block type of dishing out is reported to the police.Removing block type reports to the police as a part for the recovery action of reporting to the police.Alarm module 400 is after the unblock formula of dishing out is reported to the police, and transmission object place thread needn't block but continue operation.Unblock formula is reported to the police for possible mistake of alarm operation person, or reminds action of operator to carry out.
As shown in Figure 9, alarm module 400 comprises following attribute: integer report to the police sign, a message (message), descriptions (description), a menace level (severity), an optional automatic recovery option (autorecovery) and one or more recovery option (recovery).Wherein, message (message) is the concise and to the point description to alarm module 400, the detailed description to alarm module 400 while describing (description).Each automatically recovers option or recovers option to comprise four attributes: a message recovery (recovery message), an access group (access group), one recover type (recovery type), and one is optionally recovered action (recoveryaction).
Report to the police and identify: represent warning ID, warning is mapped to a Digital ID, may be required for remote interface.
Message (message): for log recording or be shown to operator, be divided into two types: Static and dynamic.
1) static state: warning message can not change;
2) dynamic: warning message comprises the information that depends on runtime environment, by insert mark (Marker: " <MarkerName> ") in warning message word string, realizes.When sending warning, in warning message, " <MarkerName> " will replace with mark value at that time.Can realize mapping by two kinds of modes: <MarkerName, ObjectName, AttrName> and <MarkerName, MarkerValue>.
Menace level (severity): each warning is endowed the severity level of an integer, can be used for reporting to the police client to the filtration of reporting to the police, or on GUI (Graphical User Interface, graphic user interface) the warning page, with different colours, show the warning of different menace levels.
Automatically recover (autorecovery): automatically recovering is an optional attribute, for automatic recovery.If automatically reply attribute non-NULL, when alarm module 400 is dished out warning, will automatically perform to recover to move and remove warning.After a warning is eliminated, by the action that person of redoing is not selected.When setting up system recovery with automatic recovery option, pay particular attention to the situation that comprises automatic recovery option and a series of recovery options of selecting for operator.Automatically recover option and there are following two advantages: first, warning does not need user intervention after dishing out: for example report to the police and only have a system to recover option, or only have a user to define while recovering option; Secondly, when further carrying out other actions, need to make system in a safe condition: conventionally automatically recovering option is that user defines while recovering option.
Recover (recovery): a group alarm recovers option, is the list of one or more recovery objects.One is recovered object and comprises four attributes: message recovery (recovery message), access group (access group), recovery type (recovery type) and recovery action (recovery action).
Message recovery (recovery message): the recovery option message that is shown to operator;
Access group (access group): access group may be held for CTC: different operators is assigned with different access group, can only operate the warning recovery option with this access group attribute;
Recover type (recovery type): the recovery type of reporting to the police comprises system type and user-defined type.Wherein system type comprises and abandons ABORT, retry RETRY, continues CONTINUE and remove CLEAR.User-defined type is SER_ONLY.In each system, recover type, include system built-in function and carry out the corresponding recovery action that recovers type;
Recover action (recovery action): accept an object of realizing interface RecoveryAction interface as recovering action.
For system, recover type, it is optional recovering action.Recovering action and system recovery type combination uses and can before carrying out the built-in recovery action of kernel system 1000, make kernel system 1000 in a safe condition.
For user, recover type, it is essential recovering action.Need to define complete warning restore funcitons, by system, recover option (only limiting to ABORT, RETRY, CONTINUE) and remove warning.
Alarm module 400 has the following advantages:
1) when kernel system 1000 can not solve an error situation, alarm module 400 is for notification operator, and allows operator determine how to process;
2) when certain state occurs, do not need to stop the execution of current service, but need operator to have gained some understanding to this state.
Alarm module 400 comprises transmitting element, utilizes transmitting element to send and report to the police when particular case occurs.Alarm module 400 further comprises monitor unit, when state of the state of reporting to the police or its certain recovery action changes, and notice monitor unit.For example: when alarm module 400 sends or remove a warning, when beginning or one of end execution recover action, notify monitor unit.
When alarm module 400 has sent a warning, send object and will get clogged (if this warning is one, blocking warning), system call is registered to the client's of this warning updateAlarmState () call back function.A typical customers of alarm module 400 is monitoring module 300, and when alarm module 400 sends the warning of some or sends the warning of certain type, monitoring module 300 will be carried out specific action.Report to the police and recover the executor of action, alarm module can be both also local client for Terminal Server Client.
The general controls kernel system 1000 that the embodiment of the present invention provides further comprises log pattern, records the information of described general controls kernel system 1000 operational processs for the form with daily record.Log pattern has defined the information that journal file comprises, for filtering system log information.Log pattern be can when operation, revise, thereby quantity and the grade of the log information that will record changed.
As shown in figure 10, log pattern 500 comprises data logging unit 510 and system journal unit 520.
Data logging unit 510, for recording data and the event of kernel system 1000 with the first predetermined period.Data logging is a kind of mechanism of general controls kernel system 1000, allows data and event to form daily record and also records into file, thereby provide the debugging of use and performance trace information to Application developer.Data logging unit 510, every the schedule time or when certain event occurs, enters journal file by data recording.The data of record comprise time and/or event, and the value of specific data item now.Partial data log sessions can concurrently be carried out, and according to different standards, collects different data.
Data logging unit 510 is collected data and is write journal file.The data content of collecting and the information such as time of collection are included in a session.Each session comprises collecting to be described, and wherein collects to describe to comprise that data description, data description comprise quoting DataItems.Can open a plurality of sessions simultaneously and carry out log recording.
Below the term relating in data log unit 510 is made an explanation.
The list of DataSpec:DataItems, represents the data of record together, specifies what to log.For example, the value that DataSpec can the following DataItems of designated recorder: pressure, wafer sensor, temperature, open sensor and valve 1.
The list of CollectionSpec:DataSpecs, represents that the trigger based on identical is recorded in file together by the list of DataSpecs, specifies when to log.The trigger of these definition trigger data records is the time interval (at special time record data, being called time triggering) and condition (record data when condition meets, are called Event triggered).For example, a CollectionSpec appointment is recorded the DataItems of appointment in DataSpecA with the time interval of 10s.
Session: one group of CollectionSpec, represent one group of CollectionSpec to record simultaneously and be recorded to identical destination, be for example a file).In normal running, a plurality of Sessions can open simultaneously, record data in different files.Session allows application personnel according to different object record data.For example, a session, for application development, reaches debugging purpose.Another session, at application deployment process record data, reaches tracking data object.These two sessions can be used the CollectionSpecs that part is identical, and other CollectionSpecs are peculiar for different objects.Application personnel can create a session and collect draw data, and archive data is collected in another session, and tune-up data is collected in the 3rd session.
DataLogDestination: represent destination information, this destination information is managed by StorageManager.Current only DataLogDestination and StorageManager class are DataLogFile and TextStorageManager class.
DataLogFile: the subclass of abstract class DataLogDestination.A DataLogFile object receives data, and data are write to a permanent text.
TextStorageManager: the subclass of abstract class StorageManager.Abstract class StorageManager, for text based storage administration, has defined the bibliographic structure of all journal files.
Data logging unit 510, for record data daily record, must define Session, and is linked to a destination.A data log files (text) for example, and call Session.open method and open (activation) Session.When Session opens, do not have content record to enter destination, until a trigger in a CollectionSpec occurs.A trigger can be a condition, or a time interval.When trigger occurs, about the information of all DataItems of trigger and this CollectionSpec association, be all recorded to destination.
The data log record rule of data logging unit 510 is:
DataItems a: DataItem can be used in a plurality of DataSpec, and no matter whether DataSpec locks.
DataSpecs a: DataSpec can be used in a plurality of CollectionSpec, and no matter whether CollectionSpec is activated.In other words, a DataSpec can be locked by a plurality of Session simultaneously.
CollectionSpecs a: CollectionSpec can not be used in a plurality of Session.In other words, CollectionSpec can not be simultaneously in a plurality of Session in state of activation.
DataLogFiles: a general unique attribute that DataLogFile is a Session.DataLogFiles is not used in and asks shared at a plurality of Sessions.A DataLogFile can not be connected to a plurality of Session that open.
Data logging unit 510 can adopt following two kinds of log recording forms: time-based log recording and cycle log recording.Wherein, the log recording based on event (Event-based logging) is by specifying one or more condition triggers to trigger.Cycle log recording (Periodic logging) need to specify a time interval trigger to trigger.
(1) create DataSpec: use DataSpec.addToData () method to add DataItems.
(2) create CollectionSpec: there is following attribute:
(2.1) one or more DataSpec objects: use CollectionSpec.addToDataSpecs () method to add DataSpec object.
(2.2) one or more triggers: the condition of trigger is for being used addToTriggers () method to add.Time interval trigger uses setInterval () method.
(2.3) data acquisition modes:
Synchronous mode: CollectionSpec comprises its attach DataItem to it is upper, to guarantee that its data that gathered are good.Reading of DataItem numerical value is always placed in the thread of trigger place.Synchronous mode is recommended to be used for using to have a short period interlude interval trigger, or the frequent condition trigger occurring.
Asynchronous mode: CollectionSpec is used intelligent mode image data, take and guarantees that collected data are always good.Reading of DataItem numerical value is always placed in an independent thread, to avoid blocking trigger place thread.Asynchronous mode is recommended the time interval trigger frequently not occurring for.
Default mode: determine to use which kind of pattern by kernel system 1000.When the time interval is less than or equal to 10 seconds, use synchronous mode, when interval greater than 10 seconds or not free interval trigger, use asynchronous mode.In kernel system 1000, data logging unit 510 recommend adoption default mode.
(3) set up DataLogFile: the title of data file, automatically by DataLogFile Object Creation, need to be used the name template of DataLogFile object.The name template that has two kinds of forms:
(3.1) the built-in template of system: root/<mmmdd>/<na me><number>.LEs sT.LTssT.LTextension>
As dlog/May21/dlog2.txt.When opening a Session, one is used the new data file of current date and Next Sequence to be created.If first data file on the same day, number is 1.
Root: specified by TextStorageManager.setRootDlogDirectory ().
Mmmdd: represent the moon and day, provided by system, the moon represents with English name.
Name: specified by DataLogFile.setNameTemplate ().
Number: the sequence number being provided by system.
Extension: optional, if specified an extension name while using setNameTemplate () method.
(3.2) User-defined template: if the masterplate that kernel system 1000 provides is not suitable for, can self-defined masterplate.Self-defined masterplate need to create the LogFile in core bag and respective attributes is set, and as constructed fuction parameter, transmits when a DataLogFile object of instantiation.
(4) create a session:
(4.1) one or more CollectionSpecs: use addToSpecs () method to add.
(4.2) DataLogDestination objects, and to the quoting of StorageManager object, with filename and the path of specified data journal file.If the data logging catalogue of StorageManager is not set, default directory is " current directory/dlog/ "
(5) open data log record function: in kernel system 1000, can have a plurality of Session in open mode simultaneously.
Use Session.open method to open a session, must meet the following conditions:
(5.1) CollectionSpecs that Session comprises can not, in active state, can not be used;
(5.2) associated DataLogDestination can not be used, and can not have other opened Session to be connected to this destination;
When a Session opens, (" locked ") that (" open ") that Session is considered to open, (" active ") that the CollectionSpecs that Session comprises is considered to enliven, the DataSpecs that CollectionSpecs comprises are considered to lock
When a condition trigger occurs, following data are written in data log files: the time that the record of the condition of triggering and condition trigger; The numerical value of all DataItems in all DataSpecs that corresponding CollectionSpec comprises, the DataItems relating in trigger condition is not recorded, unless it is included in a DataSpec.
When the time interval then while triggering (time interval trigger), following data are written in data log files: the numerical value of all DataItems in all DataSpecs that the time that data are collected and corresponding CollectionSpec comprise.
(6) close data log record function: use Session.close method to close a session.
(7) Update Table daily record arranges:
(7.1), if a DataSpec has locked, can not add or remove DataItems from this DataSpec to this DataSpec.
(7.2), if a CollectionSpec enlivens, can not add or remove DataSpecs from this CollectionSpec to this CollectionSpec.But, can modification time interval and data acquisition scheme, and add or delete trigger.
(7.3) if a Session opens, can not add or delete CollectionSpecs, or change destination.
System journal unit 520 is for recording recalls information and the trace information of kernel system 1000 with the second predetermined period.System journal is a kind of mechanism of general controls kernel system 1000, and the useful log information that allows debugging in certain particular range and performance to follow the tracks of produces automatically.These information spinners will comprise the information of ControlObject service call and performance, and the value of data item while changing, interlocking while being absorbed in, report to the police and send or remove the relevant information while reporting to the police.Developer also can insert self-defining log information in system journal unit 520, thereby records into journal file when operation.
System journal unit 520 allows user to obtain the trace information being based upon in general controls kernel system 1000, also can additionally comprise and be captured in the tracking message in general controls kernel system 1000.When system journal unit 520 is carried out, the message capturing is written to a destination (journal file or general controls kernel system console).System journal unit 520 can provide the record that opens or closes particular type log information based on daily record setting.These settings are applied to each daily record destination, can when configuration, arrange, and also can when operation, revise.
System journal unit 520 can be for development phase and rear exploitation (use or the produce) stage of particular demands controlling application program.In the development phase, system journal is a useful application program debugging acid.In (application deployment process finish after) stage when rear operation, syslog message is generally written to file, and non-console, and the data that these journal files are collected will be for diagnosis, debugging, and the location of problem and solution.The verbosity of different themes (for default set) need to be appropriately set, to be unlikely, have a strong impact on system performance, can consider three phases: development phase when general development phase, configuration go wrong (because configuration is a critical function of application program), and production phase.
When kernel system 1000 starts, the institute arranging in general controls kernel CONFIG.SYS on purpose by automatic activation for system journal record.Meanwhile, two default files and an optional default journal file are created and activate, and control desk is also set to an active destination.
Below the term relating in system journal unit 520 is described.
Filing agreement: journal file naming rule comprises attribute appendToExisting, template, sizeLimit and history, and defaultWildCard.The filename that journal file naming rule regulation opens file, and after closing a file, how to open next file.
Asterisk wildcard (wild cards): for directory name and filename, except ' %s ' or ' %S ', can only be for template filename part.
If current file log, existing file log2, log3, close current file and open after a new file, and new file is log, and alternative document renames log2, log3 and log4 successively as.If now history is set to 4, the oldest journal file log4 will be deleted.If system journal unit 520 templates are " logging/%y/%m/%d ", and today be 2005-5-5, first file of opening is " logging/05/05/05 ".
Automatically write dish attribute autoFlush: automatically write dish attribute autoFlush and filing protocol-independent, but it represents whether log information writes destination, and nonvolatile is left in core buffer in.If this setup of attribute is true, trace information will be write in file destination once producing, rather than writes in core buffer.
Message screening mechanism: each message has a Topic, Verbosity and an associated Object.Message screening mechanism is used Topic, and the concept of Verbosity and Group is filtered trace information.Strobe utility can be gone and represent Topic by a matrix representation, and row represent Group, and matrix element represents Verbosity.When producing a tracking message, first navigate to row, navigating to row (Topic), finally navigate to corresponding matrix element.If within requiring the severity level of record, tracking message is carried out to record, otherwise gives up.
The general controls kernel system for integrated circuit manufacturing equipment that the embodiment of the present invention provides, based on Windows xp operating system, adopts JAVA to realize, and tool has the following advantages:
1) concurrency and the resource by management system interlocks, and provides unified interface to I/O dissimilar in application program, and one carried out wrong processing and the wrong framework that saves time recovering, and solves problem time-consuming in controlling application program exploitation, fallibility.
2) the provide support powerful applications DLL (dynamic link library) of software interlocking, data logging, communication function.Particularly, the safety of the interlocking API of the general controls kernel system of the embodiment of the present invention (Application Programming Interface, application programming interface) assurance personnel and equipment.Recipe API can store and retrieve parameters of technique process.Parameters of technique process information when data logging API can obtain operation fast.
3) by collocation strategy flexibly, realize Components Development and software repeated usage.The general controls kernel system configuration strategy of the embodiment of the present invention can facilitate the code reuse in same application and between different application.And general controls kernel CONFIG.SYS allows the attribute of software developer's configuration component, although above-mentioned attribute can be different in different application, do not need to recompilate.
4) provide necessary instrument to support fast Development and debugging utility.Two powers that the general controls kernel system general controls kernel system of the embodiment of the present invention provides application program debugging and performance to follow the tracks of, comprise system journal service and console interface, wherein system journal service comprises generation system operation note, and console interface comprises the general controls kernel system environments state when checking and revising application program operation.
The general controls kernel system of the embodiment of the present invention can make the controlling application program that developer can fast Development stalwartness, by collocation strategy flexibly, realize Components Development and software repeated usage, can also provide necessary instrument to support fast Development and debugging utility.
In the description of this instructions, the description of reference term " embodiment ", " some embodiment ", " example ", " concrete example " or " some examples " etc. means to be contained at least one embodiment of the present invention or example in conjunction with specific features, structure, material or the feature of this embodiment or example description.In this manual, the schematic statement of above-mentioned term is not necessarily referred to identical embodiment or example.And the specific features of description, structure, material or feature can be with suitable mode combinations in any one or more embodiment or example.
Although illustrated and described embodiments of the invention, for the ordinary skill in the art, be appreciated that without departing from the principles and spirit of the present invention and can carry out multiple variation, modification, replacement and modification to these embodiment, scope of the present invention is by claims and be equal to and limit.

Claims (19)

1. for a general controls kernel system for integrated circuit manufacturing equipment, comprising:
Configuration module, described configuration module is for when described kernel system starts, by object-instantiated and by the object registration after instantiation in name space, create initial name space tree construction, object in described initial name space tree construction is carried out to initialization, wherein, the behavior of described object map hardware device, wherein, described configuration module comprises: configuration file parsing module, registering unit and initialization unit, wherein, described configuration file parsing module analysis configuration file, according to object described in the information instances of described configuration file; Described registering unit for by the object registration of instantiation to name space, create initial name space tree construction, the set that described initial name space tree construction is a plurality of titles; Described initialization unit travels through described initial name space tree construction according to first search algorithm, and according to the information of described configuration file, the object after registering is carried out to initialization;
Control module, described control module controls for the initial name space tree construction creating according to configuration module the service that high-rise control module called and carried out low layer control module, wherein the grade of control object is followed successively by Physical layer from low to high, functional layer and operation layer, and described control object also comprises and described other maintenance level of operation layer ad eundem, wherein, described control module comprises: Physical layer control module, functional layer control module, operation layer control module and maintenance level control module, wherein, described Physical layer control module reads the data item of the underlying device in hardware device, and provide service to described underlying device, the service of described functional layer control module by calling described Physical layer control module is to provide the service of functional layer, the service of described operation layer control module by calling described functional layer control module is to provide the service of operation layer, carry out localization of fault and the repairing to described Physical layer control module and functional layer control module with described maintenance level control module, wherein, described maintenance level control module calls the service of described Physical layer control module and functional layer control module, with
Monitoring module, described monitoring module is for monitoring the condition of described kernel system and carry out independently corresponding action when condition meeting;
Alarm module, abnormal for occurring in described kernel system, send warning;
Log pattern, for record the information of described kernel system operational process with the form of daily record, wherein, described log pattern comprises: data logging unit and system journal unit, wherein, described data logging unit is for recording data and the event of described kernel system with the first predetermined period; With described system journal unit for record recalls information and the trace information of described kernel system with the second predetermined period.
2. general controls kernel system as claimed in claim 1, wherein, described registering unit is also for Making Alias, the corresponding one or more another names of a wherein said object.
3. general controls kernel system as claimed in claim 2, wherein, by one of following two kinds of modes access object:
1) title in name space tree construction is accessed object corresponding to described title by reference;
2) described by reference another name is accessed the object that described another name is corresponding.
4. general controls kernel system as claimed in claim 1, wherein, described Physical layer control module further comprises EPICS protocol communication parts, described EPICS protocol communication parts utilize EPICS agreement and hardware device to communicate with swap data item, comprise the state value that reads the underlying device in described hardware device, and send set-point to described hardware device.
5. general controls kernel system as claimed in claim 4, wherein, described data item is divided into discrete type, continuous type and character string type according to the type of carrying data;
Described data item is divided into read-only and read/write according to read/write operation type.
6. general controls kernel system as claimed in claim 5, wherein, utilize interlocking to check the value of described data item, interlocking comprises: set-point interlocking, only allows to revise imposing a condition while meeting for the data item of the described hardware device controlling the data item of the described hardware device reading or write.
7. general controls kernel system as claimed in claim 6, wherein, the interlocking of described set-point comprises:
The item that reads and writes data, described in the read and write data data item that hardware device reads described in Xiang Weicong or the data item writing from described hardware device; With
Check character, the modification of described check character for reading and writing data described in judging whether to allow;
Report to the police, described warning is used for when the modification of the item that reads and writes data described in rejection, and the block type of dishing out is reported to the police.
8. general controls kernel system as claimed in claim 7, wherein, described warning provides three to recover action: abandon, retry and continuation carry out.
9. general controls kernel system as claimed in claim 7, wherein, set-point interlocking also comprises and trigger is set and qualifier is set,
Described trigger is for arranging the condition reading and writing data described in modification, and described qualifier is for judging whether to verify the condition of described check character.
10. general controls kernel system as claimed in claim 1, wherein, described monitoring module is monitored the safe condition of described kernel system by value interlocking, and corrects when the unsafe condition of described kernel system triggers, and wherein said value interlocking comprises:
Trigger module, described trigger module arranges the unsafe condition of described kernel system;
Behavior list, described behavior list is for triggering the action after described unsafe condition, and wherein, when described behavior list comprises a plurality of action, described a plurality of actions are carried out one by one.
11. general controls kernel systems as claimed in claim 10, wherein, described value interlocking also comprises:
Report to the police, described warning is used for providing unblock formula to report to the police.
12. general controls kernel systems as claimed in claim 4, wherein, the service that described high-rise control module called and carried out low layer control module comprises the steps:
Described high-rise control module is locked or service lock to obtain server to the lock request of described low layer control module transmission server or service lock request, parameter to the service of request is carried out initialization, to described low layer control module, sends the request of operation lock to obtain operation lock;
Described high-rise control module, after obtaining described operation lock, calls and carries out the service that corresponding low layer control module is locked in described operation, and after service completes, discharges described operation lock;
Described high-rise control module discharges described server lock or service lock,
Wherein, the request of described server lock is used for asking to obtain described server lock, and described high-rise control module utilizes described server lock to call service to described low layer control module, and locks described low layer control module;
Described service lock request is used for asking to obtain described service lock, and described high-rise control module utilizes described service lock to call specified services to described low layer control module, and locking calling described specified services;
The request of described operation lock is used for asking to obtain described operation lock, and described high-rise control module utilizes described operation lock to carry out described specified services, and locks the execution of described specified services.
13. general controls kernel systems as claimed in claim 12, wherein, described low layer control module when receiving from the server lock request of described high-rise control module or service lock request,
If when current not active described server lock or service lock or operation lock, described low layer control module is authorized described high-rise control module server lock;
If current not active described server lock or service lock or operation lock, or the service that current service lock is carried out with the service lock of described service lock request is identical, and described low layer control module is authorized described high-rise control module service lock.
14. general controls kernel systems as claimed in claim 12, wherein, the service of described high-rise control module request is current not to be carried out, and while meeting following any condition, described low layer control module is authorized described high-rise control module operation lock,
1) there is no active server lock, service lock or operation lock;
2) only there is the active service lock of a service for current request;
3) the server lock that only has a described high-rise control module to have.
15. general controls kernel systems as claimed in claim 12, wherein, described low layer control module is placed on according to the sequencing arriving the request of server lock, service lock request or the request of operation lock that are not awarded server lock, service lock or operation lock in lock request waiting list.
16. general controls kernel systems as claimed in claim 15, wherein, described low layer control module discharges after described operation lock at described high-rise control module, checks described lock request waiting list,
If current high-rise control module keeps server lock, described low layer control module is carried out the service corresponding to next one operation lock request of current high-rise control module;
If current, keeping service lock, described low layer control module is carried out the service corresponding to next one operation lock request of service corresponding to described service lock;
If current, there is no active server lock, service lock or operation lock, and next request is the request of server lock, to this server lock request grant service device lock, and the operation lock of carrying out the high-rise control module that has this server lock is asked corresponding service;
If current, there is no active server lock, service lock or operation lock, and next request as service lock request, to this service lock request grant service lock, and carry out all high-rise control modules for service corresponding to this operation lock request;
If current, there is no active server lock, service lock or operation lock, and next request is the request of operation lock, described low layer control module is carried out service corresponding to described operation lock request.
17. general controls kernel systems as claimed in claim 1, wherein, described alarm module sends block type warning and unblock formula is reported to the police,
Described alarm module, after the described block type of dishing out is reported to the police, will block and send object place thread until remove described block type warning;
Described alarm module, after the described unblock formula of dishing out is reported to the police, sends object place thread and continues operation.
18. general controls kernel systems as claimed in claim 1, wherein, the log recording form that described data logging unit adopts comprises:
Time-based log recording, described time-based log recording triggers by one or more condition triggers;
Cycle log recording, described cycle log recording triggers by a time interval trigger.
19. general controls kernel systems as claimed in claim 1, wherein, the modification of data item described in described system journal unit record is, the information that the information of interlocking, described warning are sent and the information of removing described warning.
CN201110120570.0A 2011-05-10 2011-05-10 General control kernel system used for integrated circuit manufacturing equipment Active CN102169436B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201110120570.0A CN102169436B (en) 2011-05-10 2011-05-10 General control kernel system used for integrated circuit manufacturing equipment
PCT/CN2011/081932 WO2012151885A1 (en) 2011-05-10 2011-11-08 Universal control kernel system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110120570.0A CN102169436B (en) 2011-05-10 2011-05-10 General control kernel system used for integrated circuit manufacturing equipment

Publications (2)

Publication Number Publication Date
CN102169436A CN102169436A (en) 2011-08-31
CN102169436B true CN102169436B (en) 2014-04-09

Family

ID=44490603

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110120570.0A Active CN102169436B (en) 2011-05-10 2011-05-10 General control kernel system used for integrated circuit manufacturing equipment

Country Status (2)

Country Link
CN (1) CN102169436B (en)
WO (1) WO2012151885A1 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102169436B (en) * 2011-05-10 2014-04-09 清华大学 General control kernel system used for integrated circuit manufacturing equipment
CN103632331B (en) * 2013-11-26 2016-06-29 福建四创软件有限公司 A kind of data service method of configurable plug-in type
CN104948465A (en) * 2014-03-26 2015-09-30 北京北方微电子基地设备工艺研究中心有限责任公司 Dry pump sharing treatment method and system
CN106919341B (en) * 2015-12-28 2020-04-21 成都华为技术有限公司 Method and device for issuing I/O (input/output)
CN114485874A (en) * 2021-12-22 2022-05-13 航天信息股份有限公司 Automatic weighing method based on grain depot license plate recognition

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1588323A (en) * 2004-09-23 2005-03-02 上海交通大学 Parallel program visuable debugging method
CN101299758A (en) * 2008-05-21 2008-11-05 网御神州科技(北京)有限公司 Well-regulated group system for cosmically processing event as well as processing method

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004512610A (en) * 2000-10-16 2004-04-22 ゴー アヘッド ソフトウェア インコーポレイテッド Techniques for maintaining high availability of networked systems
CN101311902A (en) * 2007-05-22 2008-11-26 上海宇梦通信科技有限公司 State machine system associating with multi-instance and its realization method
CN101437071B (en) * 2007-11-15 2011-09-28 华为技术有限公司 Method and equipment for management object instantiation of terminal equipment management tree
CN101776996A (en) * 2010-01-26 2010-07-14 上海市共进通信技术有限公司 Construction implementation method of object-based configuration management system in communication system
CN102169436B (en) * 2011-05-10 2014-04-09 清华大学 General control kernel system used for integrated circuit manufacturing equipment

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1588323A (en) * 2004-09-23 2005-03-02 上海交通大学 Parallel program visuable debugging method
CN101299758A (en) * 2008-05-21 2008-11-05 网御神州科技(北京)有限公司 Well-regulated group system for cosmically processing event as well as processing method

Also Published As

Publication number Publication date
WO2012151885A1 (en) 2012-11-15
CN102169436A (en) 2011-08-31

Similar Documents

Publication Publication Date Title
CN105074698B (en) It is performed in parallel continuous events processing (CEP) inquiry
CN105706469B (en) Managing machine-to-machine devices
Lapouchnian et al. Requirements-driven design of autonomic application software
US7228453B2 (en) Techniques for maintaining high availability of networked systems
CN102169436B (en) General control kernel system used for integrated circuit manufacturing equipment
CN111930355B (en) Web back-end development framework and construction method thereof
CN104272247B (en) Metadata-driven undo method and system
CN101901150B (en) Universal distributed airborne equipment health management simulation platform and implementation method thereof
US20070112574A1 (en) System and method for use of mobile policy agents and local services, within a geographically distributed service grid, to provide greater security via local intelligence and life-cycle management for RFlD tagged items
US20070156916A1 (en) Method of correlating events in data packet streams
US20120311290A1 (en) Systems and methods for executing device control
US20070255715A1 (en) Collaborative hub system for accessing and managing shared business content
CN101208649A (en) Recording and tracing non-trending production data and events in an industrial process control environment
CN105204936A (en) Universal resident process management platform and method
US9507587B2 (en) Application-centric resources and connectivity configuration
CN105721562B (en) A kind of Heterogeneous service call method based on agency with cooperate with calling system
CN103049264A (en) Method for controlling business system by dynamic modeling of state machine
CN105930947B (en) Method and system for controlling manufacturing processes in discrete production lines
Cisco Cisco Provisioning Center FTI Concepts
CN107066366B (en) Complex event processing engine state monitoring and disaster recovery method for Internet of things
Sekharaiah et al. Object schizophrenia problem in modeling is-role-of inheritance
Dai et al. Data mining used in rule design for active database systems
Fossa Interactive configuration management for distributed systems
Putman General framework for fault tolerance from ISO/ITU Reference Model for Open Distributed Processing (RM-ODP)
Maurel et al. Creating complex, adaptable management strategies via the opportunistic integration of decentralised management resources

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant