Emergency Management Services

Emergency Management Services (EMS) provides an RS-232 accessible serial console interface to the bootloader menu on modern versions of Microsoft Windows.

During system installation of Windows Server 2003, EMS is enabled per default in case BIOS serial console redirection is supported and enabled beforehand. Otherwise, and in Windows XP, it is enabled with a command such as the following:

bootcfg /ems on /port com1 /baud 9600 /id 1

On Windows Vista it is enabled by typing the following command where {default} is the OS entry in BCDedit:

BCDedit /bootems {default} ON

In Windows Vista the serial port settings, Baud rate and Port ID, are accessed and modified using the following command:

BCDedit /emssettings EMSPORT:(port) EMSBAUDRATE:(rate)

SAC

On Windows Server 2003 and later, this also starts a system console named Special Administration Console (SAC) during operating system run time providing headless server operation. Although EMS and SAC are separate and distinct concepts, EMS itself is also sometimes referred to as SAC, due to the prompt presented (SAC>) to the user once the OS is booted.

The SAC interface allows interaction with the Windows operating system via the serial (COM) port even when the system might normally be unresponsive, or if the system is embedded or headless (i.e. no keyboard/display present). An administrator can use SAC to access a command prompt, shutdown or reboot the machine, collect a crash dump, or view system information such as the hostname, OS version, running processes, or an IP address or addresses.

SAC provides a form of multitasking via channels. Channels can be opened by software running on the system. To list all the channels that SAC has open from the top-level prompt, the user needs to enter the ch command. All the available channels will be shown as well as their status and type.

SAC will emit in-band XML over the serial port in certain situations. This makes it easy for a program that is watching SAC output to detect when certain events occur. This XML is not always seen by users, since the screen may be cleared after transmitting it (e.g. in the case of a channel switch).

Example events that generate in-band XML:

  • When SAC is started, the machine information is emitted in a <machine-info> element.
  • When a channel switch occurs, a <channel-switch> element is emitted.
  • When the system encounters a bugcheck, it emits a <INSTANCE CLASSNAME="BLUESCREEN"> element.
gollark: There are *two* newish ones in use now.
gollark: There has literally never been a vaccine side effect show up later than 6 weeks after vaccination.
gollark: If a vaccine caused 0.1% of people who took it to die or something, this would have shown up in the clinical trials.
gollark: Is there though? These ones have also somehow become a political issue.
gollark: With how many people are slightly irritated frequently by colds, a vaccine for them would be very good if it did exist.

See also

References

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.