@raffzahn describes object files, which are not executable. They need to be read into the linkage editor, which produces a load module. That is what CSV (the newer name of the component that loads modules and relocates addresses) loads, and then the operating system eventually branches to the entry point (not always the first byte).
What you are looking for is covered in MVS Program Management: User Guide and Reference (see chapter 2) and MVS Program Management: Advanced Facilities (see appendix B).
Even though these links are for z/OS 2.3, the information still applies for the most part. (I can't think of anything other than AMODE/RMODE that would not apply to OS/360 up to MVS/SP.)
Load modules are stored in a PDS, and the PDS directory contains information regarding length, options such as whether scatter and overlay are active, etc. The load module text contains items such as the overlay order, how to scatter, etc.
Going to the other operating system, DOS, there were significant changes when libraries were introduced with DOS/VS. Before that, phases (executable programs) were stored in the "core image library" by the linkage editor (LNKEDT) or placed in storage and then freed after a single execution. After libraries were introduced, you could link edit into library/sublibrary, giving the logical equivalent of STEPLIBs. VSE/AF Supervisor DRM is basically unchanged since those days; deep within Chapter 2, Program Retrieval, you'll find some limited information on the format. DOS/VS Supervisor Logic has older information.
There's also VM/370 and earlier; a search of Bitsavers should prove fruitful.