

16:11, EEST

January 12, 2018

Hi,
For a university exam I am analyzing which non-deterministic mechanisms may be influencing my OPC-UA server application implemented with SDK java.
Some sources are certainly: input (client requests, sensor readings), network and Java.
I wonder if there can be some instructions at the SDK level that recall hardware or special mechanisms such as random number generation or timers.
I believe that if so their use could lead to an execution not deterministic (if not properly used naturally)
regards
Mike
10:30, EEST

April 17, 2013

Generally speaking this is a very broad question. However, I’ll try to answer on a high-level.
First thing to consider is that the Prosys OPC UA Java SDK is not designed to be deterministic in its execution. It’s expected that program execution cannot be guaranteed when using non-realtime operating systems and JREs.
Also, it’s good to consider that the normal Client-Server communication model of OPC UA does not make any requirements about deterministic behaviour. As an example, there’s no requirements that subscriptions should provide the exactly same notification message stream from the same measurements (for example sensor reading). As a second example, the OPC UA specification doesn’t mandate that write requests or read requests coming to the server even need to be handled in the order that they came in.
All this being said, if there would be only one client application which connects to a server and doesn’t use subscriptions, then the program execution should be deterministic in behaviour.
Most Users Ever Online: 1919
Currently Online: Guido Niewerth
45 Guest(s)
Currently Browsing this Page:
1 Guest(s)
Top Posters:
Heikki Tahvanainen: 402
hbrackel: 144
rocket science: 88
pramanj: 86
Francesco Zambon: 83
Ibrahim: 78
Sabari: 62
kapsl: 57
gjevremovic: 49
Xavier: 43
Member Stats:
Guest Posters: 0
Members: 803
Moderators: 7
Admins: 1
Forum Stats:
Groups: 3
Forums: 15
Topics: 1538
Posts: 6493
Newest Members:
rebekahfortner3, Stevennox, qfpalfie08, brittny89u, LinwoodBup, isabellabeeton2, ladonnacdv, DarwinVew, betseymitford95, HowardtitModerators: Jouni Aro: 1027, Pyry: 1, Petri: 0, Bjarne Boström: 1037, Jimmy Ni: 26, Matti Siponen: 353, Lusetti: 0
Administrators: admin: 1