// All shut down and restart actions are assumed to be relatively fast with // the same speed. rc1 = 100; rc2 = 100; rc3 = 100; rc4 = 100; rp1 = 100; rp2 = 100; rp3 = 100; rp4 = 100; rr1 = 100; rr2 = 100; rr3 = 100; rr4 = 100; rd1 = 100; rd2 = 100; rd3 = 100; rd4 = 100; ro1 = 100; ro2 = 100; CPU_running = (stop_cpu,rc1).CPU_stopped + (power_down_cpu, rc2).CPU_powered_down; CPU_stopped = (start_cpu, rc3).CPU_running; CPU_powered_down = (power_up_cpu, rc4).CPU_running; PowerSupply_on = (low_power_mode, rp1).PowerSupply_low + (lower_power_mode, rp2).PowerSupply_lower; PowerSupply_low = (full_power_mode, rp3).PowerSupply_on; PowerSupply_lower = (full_power_mode, rp4).PowerSupply_on; RAM_on = (slow_refresh_ram, rr1).RAM_slow + (power_down_ram, rr2).RAM_off; RAM_slow = (fast_refresh_ram, rr3).RAM_on; RAM_off = (power_up_ram, rr4).RAM_on; Disk_on = (save_to_disk, rd1).Disk_on + (restore_from_disk, rd2).Disk_on + (power_down_disk, rd3).Disk_off; Disk_off = (power_up_disk, rd4).Disk_on; OS_on = (shut_down_os, ro1).OS_off; OS_off = (reboot, ro2).OS_on;