![]() |
![]() HP OpenVMS Systemsask the wizard |
![]() |
The Question is: I am trying to write a program to read the BITMAP.SYS file on an ODS-2 disk. I have come to realise that it is returning incomplete information. I suspect that this is due to some of the live data being in a cache rather than in the file. How do I get the cache flushed back to the file? Or is there a system service I should be using to access the BITMAP? Can you give me an example, please? I am writing the program in COBOL but an example in (almost) any language would do since, I suspect, it's going to require mainly calls to System Services. Thanks The Answer is : Please acquire the available VMS File System Internals book for details on the internals and on-disk structures of the ODS-2 file system. Please be aware that ODS-2 and ODS-5 disks were changed in OpenVMS V7.2 to optionally permit larger bitmaps. This change permits correspondingly smaller disk cluster factors as disk volume sizes increase; disk cluster factors rather smaller than were permitted on earlier OpenVMS releases. Available tools such as ANALYZE and DFU can be used to access the storage bitmap -- the bitmap itself is simply a section of disk blocks, and it is directly accessable via sys$qio[w] logical block access. While there are caches used for the storage bitmap, the disk quota file, and various other constructs, OpenVMS does strive to keep the contents of these various disk caches consistent with the contents of the disk itself. Without specific details on the "incomplete information" being reported, a more direct or specific answer is difficult.
|