4. Uses
● Linux Distribution
● Android
● Ubuntu
● Fedora
● Linux Mint
● Deepin
Super Computers
Various embedded devices
5. Size
● 16 million LOC
● 3,509 codes per day
● 4 main versions
● 1,000 developers per release
● More than 37,000 files in kernel
6. Software
Methodology
● Varies from contributors to
contributors
● No particular methodology
● Waterfall Model
● Iterative Model
● Spiral Model
● Agile Model
The Linux kernel is a large,powerful Unix-like computer operating system kernel. The Linux operating system, is based on this kernel and deployed on both traditional computer systems such as personal computers and servers, usually in the form of Linux distributions,[9]
Monolithic: This types of kernel allows all services like system, device drivers in a group sharing in a same space.
Preemptive: It can stall the task which is already running in a processor to start another task.
Dynamic loading: While a program is in run time, dynamic loading allows another library to load.
Symmetric multiprocessing support: Linux support CPUS/GPUS with Symmetric multiprocessor. * process and thread works equally.
It is hard to run an open-source project following a more traditional software development method like the waterfall model, because in these traditional methods it is not allowed to go back to a previous phase. Fuggetta[6] argues that “rapid prototyping, incremental and evolutionary development, spiral lifecycle, rapid application development, and, recently, extreme programming and the agile software process can be equally applied to proprietary and open source software”. He also pinpoints Extreme Programming as an extremely useful method for open source software development. More generally, all Agile programming methods are applicable to open-source software development, because of their iterative and incremental character.
Build Management :Managing the process of converting raw source code into a distributable package
https://www.linux.com/blog/10-years-git-interview-git-creator-linus-torvalds