============================================================
-----Original Message-----
From: "Miklos Szigetvari" <[EMAIL PROTECTED]>
Sent: 6/29/2006 6:09 AM
To: "[email protected]" <[email protected]>
Subject: Using different storage key's

Hi

The short question:
What is the most effective (fast) way to move data between different 
storage keys ?

The longer story:
We have an FSS application ( running in  JESKEY) which starts different 
user programs, and exchange the data with the user programs
(via SVC screening  and access method routine changes )
For a long time, the user application was also run in JESKEY..
Since a year, the user applications started to use the shared memory 
(over Uss) and we found, it is necesary to run in key 8 to use shared memory
So now the user applications are running in key8 , and we are using PC 
routines to go into JESKEY, and MVCSK and MVCDK to move data.
It is working so, but the CPU consumption is much higher as it was before.

How can I solve this ?
Can I  use here  KEY=NINE  (Storage Protection Override) .
============================================================
Greetings,

The short answer: MVCSK, MVCDK.
The long answer: See the shorter answer.

Key 9 is only reasonable when working with problem state
problem key applications. Do not use key 9 (or any problem
key) for supervisor state or system key applications. As
Craddock mentioned elsewhere, DO NOT USE IVSK to determine
the target key. Virtual pages can be freed/reallocated
asynchronously; between the time you use IVSK and the time
you SPKA/MVC, the storage could belong to someone else in
a different key or the user could be trying to spoof your
authorized program into accessing protected storage that
the user should not access.

If you are seeing higher CPU consumption, then you need an
assembly language developer who has experience designing
and implementing high performance authorized routines (SRB
and cross memory mode). Such a person is hard to find these
days, but may be worth the money to track down your problem.

Without knowing anything about the implementation of your
change to using MVCSK & MVCDK, I would suspect that the problem
is elsewhere (high level language like C or C++?) or the
assembler routines using MVCSK & MVCDK are poorly written.

See the authorized programming reference manual, the chapter
on user SVC routines has some discussion on the importance
of touching user-specified storage only with the user key (the
remarks also apply to PC routines). The best way to do this is
with MVCSK, MVCDK.


Jeffrey D. Smith
Farsight Systems Corporation
24 BURLINGTON DR
LONGMONT, CO 80501
303-774-9381 direct
303-709-8153 cell
303-484-6170 fax

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Reply via email to