- Community Home
- >
- Servers and Operating Systems
- >
- Operating Systems
- >
- Operating System - OpenVMS
- >
- f$getsyi("BOOTTIME") drift
Categories
Company
Local Language
Forums
Discussions
Forums
- Data Protection and Retention
- Entry Storage Systems
- Legacy
- Midrange and Enterprise Storage
- Storage Networking
- HPE Nimble Storage
Discussions
Discussions
Discussions
Forums
Forums
Discussions
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
- BladeSystem Infrastructure and Application Solutions
- Appliance Servers
- Alpha Servers
- BackOffice Products
- Internet Products
- HPE 9000 and HPE e3000 Servers
- Networking
- Netservers
- Secure OS Software for Linux
- Server Management (Insight Manager 7)
- Windows Server 2003
- Operating System - Tru64 Unix
- ProLiant Deployment and Provisioning
- Linux-Based Community / Regional
- Microsoft System Center Integration
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Community
Resources
Forums
Blogs
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО04-17-2007 11:07 AM
тАО04-17-2007 11:07 AM
Can someone with access to the VMS source listings tell me how this function gets the boot time? I run a program once a day which uses the output of this function for comparison purposes, and unless I'm going crazy, the value returned seems to change by a few seconds each day I run it - though it doesn't change if I run it multiple times immediately one after another! (My simplistic expectation was that the boot time was simply stored somewhere as a text string at boot time and would never change.)
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО04-17-2007 12:11 PM
тАО04-17-2007 12:11 PM
Re: f$getsyi("BOOTTIME") drift
Log the value retrieved at one hour or six hour intervals, and determine if the value really does drift. (Things that "seem" are a whole lot more difficult to diagnose.)
Some drift in the system time is entirely normal; the system clock just isn't a chronograph. The saved time (the VAX TOY and the Alpha BB_WATCH) for VAX and Alpha systems can drift by 65 or by 130 seconds a month, and be in spec. The running time can drift more, depending on what is going on.)
Drift in the system boot time isn't normal.
If this is a cluster, also make sure you are running your code on the node you think you are running it upon.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО04-17-2007 01:23 PM
тАО04-17-2007 01:23 PM
Re: f$getsyi("BOOTTIME") drift
I think the boot time is saved as literal string as we know the other time literals like LOGIN, TODAY, etc. whenever we want to use this, the system's parsing function fetches this values from the internal storage and uses system's convert funtions available in different levels.
As Holf explained clearly, there will be drift in the system running time, the time difference you see may be due to the drift in the runnning system-time you stored; on any version of VMS, the BOOT value never change.
Archunan
Archie
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО04-17-2007 02:26 PM
тАО04-17-2007 02:26 PM
Re: f$getsyi("BOOTTIME") drift
Fuzzy recollection...
There are some odd things that can happen with boot times and uptimes with calculations performed on different nodes in the cluster.
For a sanity check, see system cell EXE$GQ_BOOTTIME. This should be the quadword time and shouldn't change.
ANALYZE/SYSTEM
SDA> EXAMINE/TIME EXE$GQ_BOOTTIME
This should give the same results as F$GETSYI.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО04-17-2007 02:52 PM
тАО04-17-2007 02:52 PM
SolutionTry this:
$ANALYZE/SYS
SDA> eval EXE$GQ_BOOTTIME
Hex = FFFFFFFF.82D06460 Decimal = -2100272032 EXE$GQ_BOOTTIME
SDA> exam EXE$GQ_BOOTTIME
SDA> exam EXE$GQ_BOOTTIME/time
Now
$ write sys$output f$getsyi("BOOTTIME")
and
$ exam/hex %x82D06460
$ exam/hex %x82D06464
The text date├Ч should match
and the binary date&time will match.
Now add the the DCL examined to the daily script and see if those values move.
I have a hard time imagining an ntp/utc scenarios where a clock adjust would influence the displyed boot time.
Archunan>> "I think the boot time is saved as literal string"
Hmmm, that would be very un-VMS
All dates are stored as 8-byte = 64-bit binary timestamps.
Regards,
Hein.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО04-17-2007 04:16 PM
тАО04-17-2007 04:16 PM
Re: f$getsyi("BOOTTIME") drift
Here's some DCL that will check the SDA value against the SYI value. No output means they are identical (I'd be astonished if they were ever different).
$ EXE$GQ_BOOTTIME=%X95F88828 ! Version specific
$ t[32,32]=F$CVUI(32,32,F$FAO("!AD",8,EXE$GQ_BOOTTIME))
$ t[0,32]=F$CVUI(0,32,F$FAO("!AD",8,EXE$GQ_BOOTTIME))
$ SDA_boottime=F$FAO("!%D",F$CVUI(32,32,F$FAO("!AD",8,t)))
$ SYI_boottime=F$GETSYI("BOOTTIME")
$ IF SDA_boottime.NES.SYI_boottime THEN SHOW SYM *_boottime
Note, this uses the V7.3-2 value for EXE$GQ_BOOTTIME, find the appropriate value for your system from SDA:
$ ANALYZE/SYSTEM
SDA> EVAL EXE$GQ_BOOTTIME
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО07-22-2008 09:02 AM
тАО07-22-2008 09:02 AM
Re: f$getsyi("BOOTTIME") drift
Mr. Gillings seems to be correct about the boottime value being different when examined from different nodes in a cluster.
My simple test:
for each node in a cluster, enter:
$ WRITE SYS$OUTPUT -
F$GETSYI("BOOTTIME",nodename)
The values are different depending on the node where the cmd is issued.