# K1371–K1374 shared page lifetime contract Two backing frames remain allocated while any handle or mapping is live. Closing a handle prevents new mappings through that handle but does not revoke an existing mapping. The mapped process can still read the prepared byte and can unmap it after closing its handle. A request to free backing while any mapping or handle is live returns `Busy` without changing frame ownership, mapping state, bytes, or the release counter. The final unmap or handle close releases both backing frames exactly once. Subsequent release, close, map, or unmap attempts return `Stale` and cannot increment the release counter. Invalid pages and unauthorized process IDs are rejected before mutation. The guest adapter must bind operations to actual process identities and physical frame pins, and must not free a frame while a PTE still maps it. Local model tests are development evidence only.