How to make your own Operating System
Don’t build your own Operating System
I didn't really build an entire operating system
- WE built an operating system
- multi-discipline team
- Hardware
- Software
- Business
Ninja Sphere
- Variscite SOM
- AM35xx SOC
- WiLink8
- 256/512MB RAM & 128MB flash
Custom Base board
- Zigbee Mesh
- GestIC
- 16 x 16 RGB led matrix
- ATmega328
OS Components
- Bootloader
- Kernel
- Userland
u-boot
Linux Kernel
Userland
- Yocto Project 2014..
- Ubuntu 14.04
Recovery
Yocto
- Small footprint, ~60MB
- Solid Distribution
- Like "gentoo" stage1 install
- Not very developer friendly
- Security updates are your problem
Ubuntu
- Everyone is familiar with apt
- Massive number of packages
- Security Updates, even for ARM!
- Tons of resources
- Upstart, Systemd (coming soon)
Pipelines
- Automation using buildkite
- 1000s of deb packages
DRY Packaging
- built a wrapper for FPM
- convention over configuration
- bash
- s3cmd
- aptly
Developers
Lessons Learnt
- apt-get update.....
- snappy?
- SD cards are the devil
- Wireless is hell
- Bluetooth > hell