[MinnowBoard] about system update

Дмитрий Оботуров oboturoff at gmail.com
Wed Apr 1 06:13:32 UTC 2015


In our project based on MinnowBoard Max we are planning to use two SATA
disks for storage of two OS images. It is required for failure tolerance
during updating the system and for failure of SATA disks.

Operating procedure looks like the following:
- During updating the system is rewriting on the disk which is not booting
at the moment.
- There is the efi variable named "os_changed". os_changed=1 in the system
in the case of OS updatig and if the change of the boot disk is required.
- There is the efi variable named "first_boot_done", which is used for
algorithm correctness verifying of a new OS version.
- After recording of a new OS version on the disk the system is rebooting.
The variable "os_changed" is beeing analysed during rebooting. If
os_changed=1 then:
 1. the booting disk is changed
 2. first_boot_done=0
- By successful booting the OS and successful starting up the software
first_boot_done=1, if something is wrong then the value of
"first_boot_done" is equal to zero, os_changed=0 and the system are
- After rebooting the state of the variable "os_changed" and
"first_boot_done" is analysing. If both of the variables are equal to 0,
then the updated OS was not booted correctly and it is required to place
back the previous boot disk.

So we are planning to work out a problem of software fault tolerance  and
power supply of the updating system. We tested this procedure in our
embedded systems where we use the ARM processors and UBOOT loader.

For the first time we deal with X86 and EFI and we have the following
question how to realyse this procedure in EFI enviroment in the best way.

We consider the followng variant at the moment:
1. To embed the analysis codes "os_changed" and "first_boot_done" into the
code EFI.

Perhaps there are any other ways of working out this problem. Because of
the fact that we are newcomers in EFI we kindly ask the commnity to give us
the professional advise for working out this problem in the best way in the
point of safety and easy-to-use.

Thank you.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.elinux.org/pipermail/elinux-minnowboard/attachments/20150401/7039a9eb/attachment.html>

More information about the elinux-MinnowBoard mailing list