Platform forum

How to prevent crashing the OS?

mulfycrowh , 09-18-2019, 04:07 PM
Hi everyone!
My question is a little bit difficult.
I'm developing a COM Express carrier board.
Very often the OS crashes when switching off without waiting for the OS to do it normally.
When you switch on, you'll get a warning telling that it's no more possible to boot again.
The question is:
Is it possible to put additional HW to avoid this sutuation?
There is no battery on the system.
It's impossible to add a small battery because of the high discharge current needed (between 7 and 10A).
Maybe 2 SSDs ?
Thanks a lot for any idea
mulfycrowh , 09-19-2019, 01:34 AM
I forgot to say that the OS is Linux light version. The space needed ia about 2GB.
Maybe the idea would be to get 2 flash memories and 1 SSD. The SSD is used for software installation and user data.
When switching on for the first time, the system boots on the first flash.
The user switches off very abruptly.
The OS crashes.
The user switches on again.
The system detects that the first flash memory is unusable and boots on the second flash memory.
The system formats the first flash memory and makes a physical copy of the second flash memory onto the first one.
Now the system can boot on the first flash memory again.
I guess that it should run.
What type of flash memory should I have to implement to be able to boot onto?
Should I use a USB port to emulate USB flash drive?

mulfycrowh , 09-19-2019, 01:24 PM
My Software team is asking for a space of 32GB on each flash memory (that I find personally too much for Linux but that is not the issue here).
We cannot use SPI Flash memories because of the size.
We could use mSATA but it takes a lot of place on the motherboard.
Maybe an option would be a flash with a flash Controller (USB interface).

What do you think? Did you already install the OS on an USB drive? Is USB2.0 OK or do we need USB3.0?

robertferanec , 09-19-2019, 10:49 PM
"Very often the OS crashes when switching off without waiting for the OS to do it normally."
- do you mean situations like your board is running and suddenly someone disconnect power? If you are designing a board running OS, sudden power loss can be tricky. There may be some options how to handle it by software - but I do not know exactly. Did you have a look at RAM disk or some other techniques? Just an idea ...
mulfycrowh , 09-20-2019, 12:44 AM
Customers are generally very brutal. They'll have a power button to switch on and off. I guess they'll push on it for a Long time to switch off without waiting the OS.
The idea is to have 2 flash memories. The second one is a backup of the first one. Both are bootable.
What do you think?
robertferanec , 09-20-2019, 01:20 AM
Power button should do standard power off sequencing - same as standard PC.

What I think we had, we had a flash memory to store OS image and file system, however everything was loaded into RAM disks and everything was running from RAM disks - so in case of sudden power lose nothing really happend - we were able to boot up again with no problems. If some data had to be saved, these were saved to flash memory - however if power loss happen during storing the data, then data would be corrupted.

If you would need a very robust system, than you may need additional backup recovery memory.
Use our interactive Discord forum to reply or ask new questions.
Discord invite
Discord forum link (after invitation)

Didn't find what you were looking for?