Operating System - OpenVMS
1748163 Members
3738 Online
108758 Solutions
New Discussion юеВ

Global Sections: How to find out processes that are attached

 
SOLVED
Go to solution
Bernado Pehar_1
Advisor

Global Sections: How to find out processes that are attached

Hi all,

we have had some problems recently because we couldn't recreate some global sections since there were still some processes around that had them mapped. We couldn't find a way how to find out which processes were still attached. With show dev /file we could only see the 000000 PID, and with analyze/system I just couldn't find the information needed to track the processes down.
Does anybody of you know a good method of achieving this ?
19 REPLIES 19
Kumar_Sanjay
Regular Advisor

Re: Global Sections: How to find out processes that are attached

What Global section you are creating.
would please put some more details?
How you are creating the global section and what error you are getting?

Cheers.
Bernado Pehar_1
Advisor

Re: Global Sections: How to find out processes that are attached

Hi,

we are creating a temporary global section. What exactly would you like to know ?

Regards,

Bernado
Kumar_Sanjay
Regular Advisor

Re: Global Sections: How to find out processes that are attached

Would you please post the error message?
Bernado Pehar_1
Advisor

Re: Global Sections: How to find out processes that are attached

Hi,

the error message is following:

%RMS-E-FLK, file currently locked by another user

We want to delete the section file and recreate it with another size. Problem is there are still processes having the old one mapped, and the question is how to find out who is mapping a global section.

Regards,

Bernado
Kumar_Sanjay
Regular Advisor

Re: Global Sections: How to find out processes that are attached

You can't delete a global section with DCL or INSTALL. You need to find the appropriate DECedi shutdown program to clean up and issue a $DGBLSC system service, to mark that global section for deletion. When the last process, which has mapped that section, exits, then the global section will be deleted.

A reboot will always help ;-)

Otherwise have a look with INSTALL LIST/GLOBAL/FULL and see, if you can find that global section. It may already be on the 'Delete Pending Global Sections' list.

If it's still installed and not on the delete pending list and you can't find the DECedi program to shut down this section, you may be able to write a little program using $DGBLSC to delete the section.

If it's on the delete pending list, you'll need to find, which processes are still mapped to that section:

$ ANAL/SYS
SDA> SHOW GSD/DELETE

SDA> SHOW GST/SECTION_INDEX=xx ! xx= GSTX

Then you'll find the WCB (Window Control Block) address in the 'Window' column.

SDA> SET OUT/NOINDEX x.x
SDA> SHOW PROC/CHAN ALL
SDA> EXIT
Bernado Pehar_1
Advisor

Re: Global Sections: How to find out processes that are attached

Hi,

since it is a not a permanent global section, it should be unmapped when all processes have disconnected it. We now found out there was a user executing an interactive program that maps this section in question who exited the application by issuing Ctrl/Y without typing stop or exit at dcl prompt afterwards. So he still had the sections mapped since the image was only interrupted, but not run down.

I found that last part of your reply in another thread on this forum already

http://forums11.itrc.hp.com/service/forums/questionanswer.do?threadId=1204412

and have tried it out, but it didn't yield success, so I thought this might be due to the fact the user interrupted the executable.
I'll try to see if I can get more Information from analyze/system...

Regards,

Bernado
Willem Grooters
Honored Contributor

Re: Global Sections: How to find out processes that are attached

The last freeware CD (FREEWAREV80) contains SDA extension GBLSEC$SDA for getting this information.

Willem Grooters
OpenVMS Developer & System Manager
Wim Van den Wyngaert
Honored Contributor

Re: Global Sections: How to find out processes that are attached

Can you try @ of the enclosure with P1=part of the section file ?

It will scan all process channels.

fwiw

Wim
Wim
Wim Van den Wyngaert
Honored Contributor

Re: Global Sections: How to find out processes that are attached

Before @ do
$ D == "write sys$output"
(is in my login)

Wim
Wim