- 10.1. PikaScript kernel advanced
- 10.1.1. outline
- 10.1.2. Kernel development overview
- 10.1.2.1. Reasons to choose linux
- 10.1.2.1.1. Kernel requirements: cross-platform capability, stability
- 10.1.2.1.2. Development requirements: mainstream platform, convenient debugging, complete testing tools
- 10.1.2.1.3. Team requirements: Avoid relying on hardware, unified development environment
- 10.1.2.1.4. Project requirements: easy to deploy automation facilities, CI-CD, easy software distribution
- 10.1.2.2. Kernel development steps
- 10.1.2.1. Reasons to choose linux
- 10.1.3. Kernel environment construction
- 10.1.4. Test Driven Development
- 10.1.5. Kernel distribution and upstream and downstream
10.1. PikaScript kernel advanced
10.1.1. outline
- Overview of kernel development
Second, the construction of the kernel development environment
Test Driven Development
Kernel distribution and upstream and downstream
10.1.2. Kernel development overview
Kernel development environment: linux
Kernel deployment environment: mcu ( ARM, Risc-V, Others )
10.1.2.1. Reasons to choose linux
10.1.2.1.1. Kernel requirements: cross-platform capability, stability
Only cross-platform, cross-platform Only fully tested can it be stable
10.1.2.1.2. Development requirements: mainstream platform, convenient debugging, complete testing tools
Use mainstream platforms, mainstream technologies, and build only one wheel at a time
10.1.2.1.3. Team requirements: Avoid relying on hardware, unified development environment
Reduce the difficulty of joining new members and solve the obstacle of physical distance (the express fee is very expensive) Reduce the cost of trial and error (what should I do if the hardware test board is burned) Simplify the construction of the development environment (why can’t your software be used on my computer)
10.1.2.1.4. Project requirements: easy to deploy automation facilities, CI-CD, easy software distribution
Automate all steps that can be automated to reduce maintenance costs
10.1.2.2. Kernel development steps
95% of the workload before the real machine test
10.1.3. Kernel environment construction
10.1.4. Test Driven Development
Implement functionality -> write unit tests