When you consider that not only do these systems run a lot of batch processing daily, they also have user interfaces through things like CICS, which users are allowed to login and initiate jobs. Most of the time it has it's own form of concurrency in which it will lock certain datasets for processing and release them when it's done. Of course, it's still possible to get deadlocks and other issues because of this.