Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Memory management
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
== Memory management in OS/360 and successors == IBM [[System/360]] does not support virtual memory.{{NoteTag|Except on the Model 67}} Memory isolation of [[Job (computing)|jobs]] is optionally accomplished using [[Memory protection#Protection keys|protection keys]], assigning storage for each job a different key, 0 for the supervisor or 1β15. Memory management in [[OS/360 and successors|OS/360]] is a [[Supervisory program|supervisor]] function. Storage is requested using the <code>GETMAIN</code> macro and freed using the <code>FREEMAIN</code> macro, which result in a call to the supervisor ([[Supervisor Call instruction|SVC]]) to perform the operation. In OS/360 the details vary depending on how the system is [[System generation|generated]], e.g., for [[OS/360 and successors#PCP|PCP]], [[OS/360 and successors#MFT|MFT]], [[OS/360 and successors#MVT|MVT]]. In OS/360 MVT, suballocation within a job's ''region'' or the shared ''System Queue Area'' (SQA) is based on ''subpools'', areas a multiple of 2 KB in sizeβthe size of an area protected by a protection key. Subpools are numbered 0β255.{{sfn|OS360Sup|loc=|pages=[http://bitsavers.org/pdf/ibm/360/os/R21.7_Apr73/GC28-6646-7_Supervisor_Services_and_Macro_Instructions_Rel_21.7_Sep74.pdf#page=100 82]-85}} Within a region subpools are assigned either the job's storage protection or the supervisor's key, key 0. Subpools 0β127 receive the job's key. Initially only subpool zero is created, and all user storage requests are satisfied from subpool 0, unless another is specified in the memory request. Subpools 250β255 are created by memory requests by the supervisor on behalf of the job. Most of these are assigned key 0, although a few get the key of the job. Subpool numbers are also relevant in MFT, although the details are much simpler.{{sfn|OS360Sup|loc=|pages=[http://bitsavers.org/pdf/ibm/360/os/R21.7_Apr73/GC28-6646-7_Supervisor_Services_and_Macro_Instructions_Rel_21.7_Sep74.pdf#page=100 82]}} MFT uses fixed ''partitions'' redefinable by the operator instead of dynamic regions and PCP has only a single partition. Each subpool is mapped by a list of control blocks identifying allocated and free memory blocks within the subpool. Memory is allocated by finding a free area of sufficient size, or by allocating additional blocks in the subpool, up to the region size of the job. It is possible to free all or part of an allocated memory area.<ref name="SupvrLogic">{{cite book |publisher=IBM Corporation |title=Program Logic: IBM System/360 Operating System MVT Supervisor |date=May 1973 |pages=107β137 |url=http://bitsavers.org/pdf/ibm/360/os/R21.7_Apr73/plm/GY28-6659-7_MVT_Supervisor_PLM_Rel_21.7_May73.pdf |access-date=Apr 3, 2019}}</ref> The details for [[OS/VS1]] are similar{{sfn|OSVS1Dig||loc=[https://bitsavers.org/pdf/ibm/370/OS_VS1/GC24-5091-5_OS_VS1_Release_6_Programmers_Reference_Digest_197609.pdf#page=114 p. 2.37-2.39]}} to those for MFT and for MVT; the details for [[OS/VS2]] are similar to those for MVT, except that the page size is 4 KiB. For both OS/VS1 and OS/VS2 the shared ''System Queue Area'' (SQA) is nonpageable. In [[MVS]] the address space<ref>{{cite book | title = Introduction to OS/VS2 Release 2 | id = GC28-0661-1 | date = March 1973 | edition = first | section = Virtual Storage Layout | section-url = http://bitsavers.org/pdf/ibm/370/OS_VS2/Release_2_1973/GC28-0661-1_Introduction_to_OS_VS2_Release_2_Mar73.pdf#page=37 | page = 37 | publisher = [[IBM]] | series = Systems | url = http://bitsavers.org/pdf/ibm/370/OS_VS2/Release_2_1973/GC28-0661-1_Introduction_to_OS_VS2_Release_2_Mar73.pdf | access-date = July 15, 2024 }} </ref> includes an additional pageable shared area, the ''Common Storage Area'' (CSA), and two additional private areas, the nonpageable ''local system queue area'' (LSQA) and the pageable ''System Work area'' (SWA). Also, the storage keys 0β7 are all reserved for use by privileged code.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)