batch vs interactive systems
Operating systems differ in how a user (or another program) hands work to them and how quickly they expect an answer back, and the two classic styles are batch and interactive. In a batch system you prepare a whole job in advance, submit it, and walk away; the system runs it to completion and you collect the results later, with no back-and-forth in between. In an interactive system you sit at the machine and converse with it — type a command, see a response, type the next — expecting a reply within moments. Think of mailing a long order form and getting a package next week (batch) versus chatting with a shop assistant who answers each question on the spot (interactive).
Historically, batch came first because early computers were scarce and precious: jobs (often on punched cards) were collected into a batch and fed through one after another to keep the expensive machine fully loaded, with no human waiting at the controls. The design goal was throughput — finish as many jobs per hour as possible. Interactive (time-shared) systems came later and optimize for a different goal: response time, how quickly the system reacts to each small request, because now a human is waiting and idle waiting is wasted human time. The two goals genuinely pull in different directions: a scheduler tuned to cram in long batch jobs would feel sluggish to type at, while one tuned for snappy interaction may finish big jobs less efficiently.
Both styles still exist and matter. Interactive is what you experience daily on a phone or laptop. Batch is alive and well wherever large amounts of work are processed without a human in the loop: nightly payroll runs, scientific simulations, rendering a film frame by frame, and the giant data-processing jobs in cloud computing are all essentially batch. Many real systems blend the two — your laptop runs your interactive apps in the foreground while quietly batching backups and indexing in the background. The useful question is not which is better but which goal, throughput or responsiveness, dominates for a given workload.
A weather service submits a huge simulation as a batch job that runs for six hours unattended overnight; in the morning the forecast is ready. Meanwhile a meteorologist uses an interactive map app, expecting each zoom and click to respond instantly. Same data, two very different OS goals.
Batch optimizes throughput; interactive optimizes response time.
Batch is not obsolete — it powers payroll, rendering, and big cloud data jobs. The distinction is about the goal (throughput vs responsiveness) and whether a human waits, not about old vs new technology.