A Run-Time System is linked into a COBOL executable (created with cob -x) or a self-contained callable shared object (created with cob -y) when they are created and the type of Run-Time System is dependant on whether the cob -t flag is specified or not. The Run-Time System is loaded when a COBOL executable starts or a self-contained callable shared object is loaded into a running process. If the process already contains a Run-Time System, then they must match; that is, they are both threaded Run-Time Systems or both non-threaded Run-Time Systems.