- Community Home
- >
- Servers and Operating Systems
- >
- Operating Systems
- >
- Operating System - OpenVMS
- >
- Re: DST Time Drift
Operating System - OpenVMS
1753809
Members
7702
Online
108805
Solutions
Forums
Categories
Company
Local Language
юдл
back
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
юдл
back
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
Blogs
Information
Community
Resources
Community Language
Language
Forums
Blogs
Go to solution
Topic Options
- 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
тАО03-19-2008 01:06 PM
тАО03-19-2008 01:06 PM
Re: DST Time Drift
>I thought the CPU dependent value
>was EXE$GL_TICKLENGTH
See section 12.6 of the IDSM "INTERVAL TIMER INTERRUPT SERVICE ROUTINE".
EXE$GL_SYSTICK should be constant, dependent on the hardware (I thought all Alphas were supposed to be the same, but obviously not since Gregg is seeing a different value).
EXE$GL_TICKLENGTH is initially set from EXE$GL_SYSTICK, but may be varied dynamically in order to drift the clock back or forwards to synch with external time standards.
>was EXE$GL_TICKLENGTH
See section 12.6 of the IDSM "INTERVAL TIMER INTERRUPT SERVICE ROUTINE".
EXE$GL_SYSTICK should be constant, dependent on the hardware (I thought all Alphas were supposed to be the same, but obviously not since Gregg is seeing a different value).
EXE$GL_TICKLENGTH is initially set from EXE$GL_SYSTICK, but may be varied dynamically in order to drift the clock back or forwards to synch with external time standards.
A crucible of informative mistakes
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО03-20-2008 09:57 AM
тАО03-20-2008 09:57 AM
Re: DST Time Drift
Peter,
If you are going to run this on more than a single model of the Alpha, you can't safely use a single value, as we are now aware of at least 3 different frequencies. 1024, 1200, and 974.
I would suggest you get the TBO V2.0 kit from VMS freeware 6. On Alpha AXP it computes the values based on SYSTICK and the frequency from the hwrpb. Here are some of the comments from the top of the included TBO.MAR source file.
It won't work as is on an IA64, but it could probably be retrofitted easier than starting from scratch.
; VAX has a 10millisecond clock (a tick). ALPHA has an interval timer that
; is determined by the value in the hardware restart parameter block (HWRPB)
; at offset HWRPB$IQ_CLOCK_INT_FREQ. This value will minimally be 1000 and
; and initially all ALPHA systems will generate 1024 interupts (ticks) per
; second.
;
; Note that we'll use the following:
; VAX & ALPHA:
; EXE$GL_SYSTICK - standard clock tick length
; EXE$GL_TICKLENGTH - increment added to clock at each hardware clock interrupt
; EXE$GL_TIMEADJUST - number of ticks to apply EXE$GL_TICKLENGTH
; ALPHA:
; EXE$GPL_HWRPB_L - hardware restart parameter block
; HWRPB$IL_CLOCK_FREQ_L - offset to clock interrupt frequency
NOTE: the comments have a typo, where is says HWRPB$IL_CLOCK_FREQ_L it should be HWRPB$IL_CLOCK_INT_FREQ_L
Just a note: The ES47 doesn't follow the Alpha architectural spec with respect to the minimum hwclock interrupt frequency. The manual states "minimum of 1000 times per second", the ES47 (at least ours) is 974 Hz.
$ write sys$output f$getsyi("HW_NAME")
hp AlphaServer ES47 7/1150
$
$ analyze/sys
OpenVMS (TM) system analyzer
SDA> read sys$loadable_images:sysdef
%SDA-I-READSYM, 10724 symbols read from SYS$COMMON:[SYS$LDR]SYSDEF.STB;1
SDA> eval @(@EXE$GPL_HWRPB_L+HWRPB$IL_CLOCK_INT_FREQ_L)/1000 ! scaled by 4096 decimal
Hex = 00000000.000003CE Decimal = 974 UCB$L_PI_TGT_SCRIPT+00002
SDA> Exit
$
And for comparison, on an ES40
OT$ write sys$output f$getsyi("HW_NAME")
AlphaServer ES40
OT$ analyze/system
OpenVMS (TM) system analyzer
SDA> read sys$loadable_images:sysdef
%SDA-I-READSYM, 10724 symbols read from SYS$COMMON:[SYS$LDR]SYSDEF.STB;1
SDA> eval @(@EXE$GPL_HWRPB_L+HWRPB$IL_CLOCK_INT_FREQ_L)/1000 ! scaled by 4096 decimal
Hex = 00000000.00000400 Decimal = 1024 ACB$M_NODUP
BUG$_UNEXPIOINT
CHPCTL$M_INTERNAL
CPU$C_MAX_CBB_CPUS
CPU$M_VIRTCONS
|
(remaining symbols suppressed by default)
SDA> Exit
OT$
Jon
If you are going to run this on more than a single model of the Alpha, you can't safely use a single value, as we are now aware of at least 3 different frequencies. 1024, 1200, and 974.
I would suggest you get the TBO V2.0 kit from VMS freeware 6. On Alpha AXP it computes the values based on SYSTICK and the frequency from the hwrpb. Here are some of the comments from the top of the included TBO.MAR source file.
It won't work as is on an IA64, but it could probably be retrofitted easier than starting from scratch.
; VAX has a 10millisecond clock (a tick). ALPHA has an interval timer that
; is determined by the value in the hardware restart parameter block (HWRPB)
; at offset HWRPB$IQ_CLOCK_INT_FREQ. This value will minimally be 1000 and
; and initially all ALPHA systems will generate 1024 interupts (ticks) per
; second.
;
; Note that we'll use the following:
; VAX & ALPHA:
; EXE$GL_SYSTICK - standard clock tick length
; EXE$GL_TICKLENGTH - increment added to clock at each hardware clock interrupt
; EXE$GL_TIMEADJUST - number of ticks to apply EXE$GL_TICKLENGTH
; ALPHA:
; EXE$GPL_HWRPB_L - hardware restart parameter block
; HWRPB$IL_CLOCK_FREQ_L - offset to clock interrupt frequency
NOTE: the comments have a typo, where is says HWRPB$IL_CLOCK_FREQ_L it should be HWRPB$IL_CLOCK_INT_FREQ_L
Just a note: The ES47 doesn't follow the Alpha architectural spec with respect to the minimum hwclock interrupt frequency. The manual states "minimum of 1000 times per second", the ES47 (at least ours) is 974 Hz.
$ write sys$output f$getsyi("HW_NAME")
hp AlphaServer ES47 7/1150
$
$ analyze/sys
OpenVMS (TM) system analyzer
SDA> read sys$loadable_images:sysdef
%SDA-I-READSYM, 10724 symbols read from SYS$COMMON:[SYS$LDR]SYSDEF.STB;1
SDA> eval @(@EXE$GPL_HWRPB_L+HWRPB$IL_CLOCK_INT_FREQ_L)/1000 ! scaled by 4096 decimal
Hex = 00000000.000003CE Decimal = 974 UCB$L_PI_TGT_SCRIPT+00002
SDA> Exit
$
And for comparison, on an ES40
OT$ write sys$output f$getsyi("HW_NAME")
AlphaServer ES40
OT$ analyze/system
OpenVMS (TM) system analyzer
SDA> read sys$loadable_images:sysdef
%SDA-I-READSYM, 10724 symbols read from SYS$COMMON:[SYS$LDR]SYSDEF.STB;1
SDA> eval @(@EXE$GPL_HWRPB_L+HWRPB$IL_CLOCK_INT_FREQ_L)/1000 ! scaled by 4096 decimal
Hex = 00000000.00000400 Decimal = 1024 ACB$M_NODUP
BUG$_UNEXPIOINT
CHPCTL$M_INTERNAL
CPU$C_MAX_CBB_CPUS
CPU$M_VIRTCONS
|
(remaining symbols suppressed by default)
SDA> Exit
OT$
Jon
it depends
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО04-07-2008 07:56 AM
тАО04-07-2008 07:56 AM
Re: DST Time Drift
Keeping this thread as a reference until I get approval/authorization to get this drift working on Itanium too.
- « Previous
-
- 1
- 2
- Next »
The opinions expressed above are the personal opinions of the authors, not of Hewlett Packard Enterprise. By using this site, you accept the Terms of Use and Rules of Participation.
News and Events
Support
© Copyright 2024 Hewlett Packard Enterprise Development LP