Diperkenalkannya transistor pada pertengahan 1950-an untuk menggantikan fungsi tabung vakum segera membawa perubahan besar dalam pengembangan sistem komputer. Transistor berukuran lebih kecil dan lebih awet dibandingkan tabung vakum. Ini memungkinkan pembuatan komputer yang berukuran lebih kecil dan untuk tujuan komersil.

Komputer yang pertama dikembangkan untuk tujuan komersial disebut dengan mainframe. Umumnya hanya perusahaan besar, departemen pemerintahan, serta universitas yang mampu mengembangkan atau membelinya mengingat biaya cukup mahal, yaitu mencapai jutaan dollar US. Selain itu, untuk mengoperasikannya diperlukan staff ahli. Komputer ini kebanyakan digunakan untuk keperluan kalkulasi perekayasaan dan keilmuan, seperti menyelesaikan persamaan diferensial parsial. Program ditulis bersarakan bahasa FORTRAN ataupaun bahasa rakitan (assembly).

Mainframe pada masa itu umumnya menggunakan sistem operasi FMS (Fortran Monitor System) dan IBSYS, sistem operasi IBM untuk mesin komputer 7094. Tetapi pada masa itu, orang tidak menyebutnya sebagai sistem operasi, tetapi resident monitor yang bertugas menyalin program ke memori, menyerahkan kendali eksekusi ke program, mengambil kembali kendali atas komputer setelah program selesai, dan menyalin program berikutnya ke memori. Disebut resident karena instruksi-instruksi “sistem operasi” ini tetap berada di memori komputer selama program aplikasi sedang berjalan.

Langkah pengoperasian mainframe adalah sebagai berikut. Untuk setiap job, program menuliskan program untuk sekumpulan program pada kertas dalam bahasa pemrograman FORTRAN ataupun bahasa mesin (assembly). Kemudian dibuatkan punch card berdasarkan program yang ditulis. Kumpulan kartu untuk satu job diletakkan sesuai urutannya dalam satu tempat yang disebut card deck.

Struktur Program FMS
Struktur Program FMS

Rangkaian kartu terdiri atas kartu $JOB yang mengidentifikasikan nama pemrogram, nomor account, serta waktu maksimum eksekusi yang dialokasikan untuk job tersebut. Berikutnya , kartu $FORTRAN akan memerintahkan komputer untuk menyalian program kompilator FORTRAN dari tape sistem (pada gambar dibawah). Kompilator FORTRAN ini selanjutnya akan melakukan kompilasi terhadap isi kartu-kartu berikutnya yang berisi program FORTRAN. Hasil kompilasi ini akan menghasilkan suatu program dalam bahasa mesin yang siap dieksekusi.

Selanjutnya, kartu $LOAD akan memerintahkan komputer untuk memuat hasil kompilasi program ke memori komputer dan kartu $RUN akan memerintahkan komputer untuk menjalankan program tersebut. Data-data yang diperlukan selama eksekusi disediakan pada runtunan kartu berikutnya. Pembacaan kartu data ini akan ditentukan oleh program yang sedang dieksekusi. Kartu terakhir adalah kartu $END yang menandakan berakhirnya job tersebut. Keluaran atau output dari program akan dicetak langsung pada suatu printer.

Kelemahan sistem mainframe adalah prosesor harus menunggu secara pasif (idle) ketika mengalihkan eksekusi ke job baru berikutnya. Pemrosesan job yang baru dimulai dengan pembacaan kartu dari tumpukan kartu berikutnya yang melibatkan campur tangan operator dan proses pembacaan akan memakan waktu berjam-jam. Sementara itu, komputer harus idle dapat melakukan aktivitas lain.

Untuk mengatasi masalah ini, dikembangkan sistem batch pada mainframe sehingga peralihan dari satu job ke job berikutnya dalam dilakukan secara otomatis tanpa campur tangan pengguna. Pada sistem batch, job-job dibaca  dan ditampung  terlebih dahulu pada suatu tape magnetis dengan menggunakan suatu komputer yang lebih murah, misalkan IBM 1401, yang kurang powerful dalam kalkulasi numeris namun handal dalam menangani pembacaan dari card reader, penyalinan ke tape magnetis serta pencetakan ke printer. Tape yang sudah penuh dan berisi kumpulan job (batch) dipindahkan dan dijadikan sebagai tape input ke komputer utama, mainframe IBM 7094, seperti gambar dibawa.

Operasi Pada Sistem Batch
Operasi Pada Sistem Batch

Pada komputer IBM 7094, terdapat tape sistem yang berisi kompilator FORTRAN, yang akan dimuat ke memori komputer pada saat mengkompilasi program FORTRAN. Hasil kompilasi berupa program jadi yang kemudian dieksekusi oleh komputer mainframe. Hasil output dari eksekusi program akan disimpan ke suatu tape output. Jika tape output sudah penuh, tape dipindahkan ke komputer lain, IBM 1401, untuk selanjutnya dicetak ke printer.

Perhatikan, karena komputernya terpisah, operasi pembacaan dari kartu plong ke tape, eksekusi program, serta operasi pencetakan dapat dilakukan secara simultan. Umumnya komputer IBM 401 yang digunakan untuk pembacaan kartu maupun pencetakan ke printer diletakkan pada ruang yang terpisah dari komputer mainframe IBM7094. Dengan sistem batch yang demikian, tingkat penggunaan mainframe IBM 7094 menjadi lebih optimal, karen tingkat penggunaan mainframe IBM 7094 menjadi lebih optimal, karena tidak perlu idle selama pergantian job yang satu ke job yang lain.