Question: In most versions of DOS, when they are started from a medium that lacks an `AUTOEXEC.BAT` file, the very first thing `COMMAND.COM` does is ask the user to confirm the current date and time:

```
Starting PC DOS...

Current date is Thu 10-01-2020
Enter new date (mm-dd-yy): 
Current time is  9:42:41.44a
Enter new time: 

PC DOS Version 7.10
             (C)Copyright International Business Machines Corp 1981-2002.

A:\>

```

This behaviour persisted until very late versions of DOS. Microsoft removed it only as late as in MS-DOS 7.0 (i.e. Windows 95), while IBM has never removed it from PC DOS (transcript above comes from PC DOS 7.10, [downloaded from IBM themselves](http://public.dhe.ibm.com/systems/support/system_x/31r1035.zip)); DR-DOS likewise kept it until its very last versions. MS-DOS 1.0 will even *require* the user to enter a date unless `AUTOEXEC.BAT` is present, and wouldn’t proceed to a command prompt otherwise; later versions relaxed this, allowing the user to press Enter to confirm the currently set date. Even FreeCOM replicates this behaviour (as of 0.84-pre2).

This behaviour doesn’t seem necessary. Standard PC hardware includes a real-time clock powered by a battery; this allows current date and time to be maintained across power cycles, when the rest of the hardware is otherwise not functioning. It should be safe for the OS to assume that the current date and time are already set correctly upon booting.

Why is this behaviour present, why was it tied to the presence of `AUTOEXEC.BAT` and why did it persist for so long?

Answer: 
It was necessary, because the early hardware did not contain a Real Time Clock (RTC) chip. The first IBM PC model to have an RTC chip as a standard feature and supported by BIOS was the IBM PC/AT, and earlier models could be retrofitted with an add-on RTC ISA card. So the models before AT cannot possibly know the current time automatically after powering the computer on or pushing the reset button, so it made sense to assume that by default, when there is no AUTOEXEC.BAT, the user wants to set the system time when DOS loads, and if there was an AUTOEXEC.BAT, it would prompt the user for date and time at a suitable point if necessary, or run an utility that reads the current time from the RTC addon card and sets the system time accordingly.
> 
> Standard PC hardware includes a real-time clock powered by a battery
> 
> 
> 

I guess this is a valid assumption since IBM PC AT.

Older PCs (PC, PCjr, XT) has no RTC by default (due to [Wikipedia](https://en.wikipedia.org/wiki/IBM_Personal_Computer#Technology)).