Initialization. During initialization, port drivers register each communication port as well as all supported interfaces. User code creates an asynUser, which is a "handle" for accessing asynDriver facilities, by calling pasynManager->createAsynUser(processCallback,timeoutCallback); An asynUser has the following features: • An asynUser is the means by which asynManager manages multiple requests for accessing a port. • processCallback,which is used by queueRequest described below, is the addresss of a user supplied callback routine. • timeoutCallback is the address of caller supplied callback that will be called if a queueRequest remains on the queue too long. • Device support code should create an asynUser for each "atomic" access to low level drivers, i.e. a set of calls that must not be interlaced with other calls to the low level drivers. For example device support for EPICS record support should create an asynUser for each record instance. • Device support code should NOT try to share an asynUser between multiple sources of requests for access to a port. If this is done then device support must itself handle contention issues that are already handled by asynManager. User code connects to a low level driver via a call to status = pasynManager->connectDevice(pasynUser,portName,addr); pasynInterface = pasynManager->findInterface(pasynUser,asynOctetType,1);
Initialization. Set (i) t = 0; (ii) WeakEpochs, WeakUsers = ∅; and (iii) G[∗], Rand[∗], ST[∗] ← ⊥, K[∗] ← ⊥. • Gen() executes (ST, PK) ←$ Gen(), sets ST[PK] ← ST, and returns PK. • Add(PK, PK∗) first aborts if (i) PK = PK∗; (ii) t ƒ= 0 and PK ∈/ G[t]; or (iii) PK∗ ∈ G[t]. Otherwise it: ← ←
Initialization. For every (l, m) such that Hml = 1, let q0 = 1 — p′(t—1) and
Initialization. User id 1 runs (id 0.xx, W ) ← baCGKA.Init(G, (pkid1 , . . . , pkidn ), sskid1 ) to initialize a session. Here G = (id 1, . . . , idn) specifies the group, pkidi is the initialization encryption public-key of user idi, and sskid1 the initialization authentication secret key of the party setting up the group. The output consists of user id 1’s initial state and a welcome message W . ←
Initialization. To initialize a group for users (id 1, . . . , idn), user id 1 first generates the $ dummy key-pair (pk , sk ) ← skuPKE.Gen(1λ). They then set up a left-balanced binary ratchet tree T = (V, E), where the ith leaf corresponds to user idi. T is completely blanked except for the leaves, that are set to have the corresponding user’s initialization public key as associated key and further contain their signature verification key. Further, vid1 .stsec contains id 1’s secret decryption and signing key. id 1 incorporates (pkc, skc), T , a copy Tnext of T , and an empty list Onext in their state and then computes ((∆i, δi, Ci)i, κ) ← gen-path-upd(id 0.xx ). ((∆i, δi)i, κ) is added to id 1’s state together with epoch counter ectr = 1 and Knext is set to the zero string. The resulting welcome message is W = (T.stpub, (∆i, Ci)i, (pkc, skc), σ, id 1), where σ is a signature of (T.stpub, (∆i, Ci)i, (pkc, skc)) under sskid1 .
Initialization. The initialization procedure TK-init∗ and TK-init-sig expect as input an ID ID and initialize several state variables: Variable ME remembers the ID of the party running the protocol and τ will keep track of the RT used. The other variables are used to keep track of all the operations (creates, adds, removes, and updates) initiated with ME. Specifically, each time a party per- forms a new operation, it increases ctr and stores the potential next state in τ′[ctr]. Moreover, conf[ctr] will store the control message as confirmation that the operation was accepted. These variables are reset each time proc processes a control message (which can either be one of the messages in conf or a message sent by another party). Finally, in the case of TK-init-sig of TreeKEMΣ, the key pair (sksig, pksig) of signature scheme Σ is additionally generated by KGenΣ. | | ∈ Group creation. Given lists of users G = (ID1, . . . , IDn), The group creation procedure TK-create∗ and TK-create-sig generate a new UPKE key pair (pk0, sk0) and (pki, ski) corresponding to the IDs in G by calling GMget-pk( G .i) for i [n]. Then they initialize a new ratchet tree by calling INIT with G′ = (ID0, G) and pk′ = (pk0, pk) as well as 0 and sk0. The welcome message W simply consists of G′ and pk′. Finally, in the case of TK-create-sig of TreeKEMΣ, the ratcheting signature σ is additionally output with W . ⊥
Initialization. Name Purpose AlazarBoardsFound Get the number of boards detected in all board systems. AlazarBoardsInSystemByHandle Get the number of boards in the board system specified by the handle to its master board. AlazarBoardsInSystemBySystemID Get the number of boards in the board system specified by its system identifier. AlazarClose Close a board handle. AlazarGetBoardBySystemHandle Get a handle to a board specified by its board identifier and handle to the master board in its board system. AlazarGetBoardBySystemID Get a handle to a board specified by its system identifier and board identifier. AlazarGetSystemHandle Get a handle to the master board in a board system specified by its system identifier. AlazarNumOfSystems Get the number of board systems in a PC. AlazarOEMDownLoadFPGA Download an FPGA image file to a board. AlazarOpen Open a board handle. AlazarParseFPGAName Extract the attributes from an FPGA file name.
Initialization. The NETN Initialization module provides a standard way of documenting and providing key data related to the initial states and relationships among units represented in a scenario. Preparation of a distributed CAX environment includes the distribution and initialization of common data including but not limited to Order of Battle (ORBAT), environment datasets and other initial scenario settings. The Military Scenario Definition Language (MSDL) [9] is the core standard used by NETN to represent ORBAT and initial scenario data. NETN also defines the following MSDL extensions: • Initial allocation of modelling responsibilities as additional deployment information • Extended unit and equipment type identification based on SISO-REF-010 enumerations • Representation of a unit's holdings of platform, equipment, human and other resources • Extended description of humans to capture rank and category codes • Embarkment added as new type status for a unit's support role to indicate that a unit or equipment is embarked on another unit. The representation of Aggregate Units and Physical Object in NETN is based on the RPR-FOM representation with extensions to better reference data captured in MSDL. In particular, a Universally Unique IDentifier (UUID) is added to all Aggregate and Physical Entities in the federation. The UUID use the same format as in MSDL and is used to provide a unique identifier of simulated objects to its corresponding scenario description in MSDL format. The RPR-FOM has been extended with subclasses for all platforms and the AggregateEntity object class to add the UUID attribute and additional information. The MSDL standard is currently undergoing revision and new versions of this standard will impact how initialization data is represented in future versions of NETN FAFD. Representation of task organization, internal organizational relationships and relationships between different organizations may in some situations need to change dynamically during execution of a federation. Future versions of the NETN Initialization module will provide standards for both initialization and dynamic update of this type of information.
Initialization. Execute init and set sec[·] ← s. If z = 0, define H := H , otherwise, H := H .
Initialization. Execute the Minit procedure by querying (M, MK) ← eram-init() and compute Uinit for