+/**\r
+ The EFI_ACPI_S3_SAVE_PROTOCOL is responsible for preparing all the information that the\r
+ Framework needs to restore the platform's preboot state during an S3 resume boot. This\r
+ information can include the following:\r
+ - The Framework boot script table, containing all necessary operations to initialize the platform.\r
+ - ACPI table information, such as RSDT, through which the OS waking vector can be located.\r
+ - The range of reserved memory that can be used on the S3 resume boot path.\r
+ This protocol can be used after the Framework makes sure that the boot process is complete and\r
+ that no hardware has been left unconfigured. Where to call this protocol to save information is implementation-specific. \r
+ In the case of an EFI-aware OS, ExitBootServices() can be a choice to provide this hook.\r
+ The currently executing EFI OS loader image calls ExitBootServices()to terminate all boot\r
+ services. After ExitBootServices() successfully completes, the loader becomes responsible\r
+ for the continued operation of the system.\r
+ On a normal boot, ExitBootServices() checks if the platform supports S3 by looking for\r
+ EFI_ACPI_S3_SAVE_PROTOCOL. If the protocol exists, ExitBootServices()will assume\r
+ that the target platform supports an S3 resume and then call EFI_ACPI_S3_SAVE_PROTOCOL\r
+ to save the S3 resume information. The entire Framework boot script table will then be generated,\r
+ assuming the platform currently is in the preboot state.\r
+**/\r