When you interact with the mainframe via a terminal, you are generally using TSO. IKJEFT01, IKJEFT1A, IKJEFT1B are different ways to invoke TSO in batch. 1A and 1B are alternates (aliases) to 01. The basic difference is that IKJEFT01 pretty much ends with return code of 0, no matter what the commands returned. IKJEFT1A and IKJEFT1B will generally stop processing when a command gives a non-zero return code and return a non-zero return code. They are called terminal monitor programs because they are the TSO terminal interaction, moved to a batch job. You access DB2 through them because that is the way DB2 works.
Address spaces are a very different thing. An address space is created for each batch job, TSO session, or started task that is running on a z/OS system. Every program, batch or online, executes in an address space. The system keeps the separate address spaces from overlaying memory, assigns priority for processing, manages I/O, and so forth. The address space contains the application program, some operating system code, and all memory used by the program -- buffers, program memory, and so forth.