Your processor is affected by the c-state bug
This causes total freezes when the CPU tries to enter an unsupported sleep state. It's a problem for many Bay Trail devices especially with newer (4.*) kernels.
Affected processors AFAIK:
Atom Z3735F (Asus X205TA, Acer Aspire Switch 10, Lenovo MIIX 3 1030)
Atom Z3735G
Celeron J1900 (Asus ET2325IUK, shuttle XS35V4)
Celeron N2940 (Acer Aspire ES1-711, Chromebook)
Celeron N2840 (Acer Aspire ES1-311)
Celeron N2930 (Jetway JBC311U93, Zotac Nano CI320)
Pentium N3520
Pentium N3530 (Acer V3-111P)
Pentium N3540 (Dell Inspiron 15 3000, Lenovo G50, ASUS X550MJ)
(please (suggest an) edit to add your own device if affected)
Complete list of Bay Trail processors may be found here
There is a simple workaround for this until it gets properly fixed upstream.
You just need to pass a kernel boot parameter and the random freezing stops completely. The parameter may increase battery consumption slightly, but it will give you a usable system.
You do this by editing the configuration file for GRUB:
Boot Ubuntu and open a terminal by pressing Ctrl+Alt+T then type
sudo nano /etc/default/grub
Find the line that starts GRUB_CMDLINE_LINUX_DEFAULT=
This needs to be changed to include intel_idle.max_cstate=1
So after your edit it reads something like
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash intel_idle.max_cstate=1"
quiet
and splash
are default parameters for Ubuntu Desktop - no need to change them, or any other pre-existing parameters
Now save the file by pressing ctrl+o then enter and exit by pressing ctrl+x
Now run
sudo update-grub
Then reboot.
What to do if you don't have enough time to do this before the system hangs
No problem. As explained on the help page I linked to earlier, you can add the parameter to GRUB before booting. Note that this only passes the parameter for the current boot, so you still have to edit /etc/default/grub
once you have booted to make the change permanent.
You need to get to the GRUB menu. If you are dual booting this will appear anyway, if not you have to press and hold (or tap) shift after pressing the power button to turn on.
When you get to this screen select Advanced Options for Ubuntu. You can move the cursor to a different kernel, or leave it in place to edit options for the default. Instead of pressing enter, press e and you will go into edit mode, looking vaguely like this.
Move the cursor down to where it says quiet splash
, put a space after splash and carefully type intel_idle.max_cstate=1
making sure there is a space after it as well.
Now press F10 or Ctrl+x to boot.