The difference between android and linux
There are three differences:
1. Android There is no native window system, and Linux has the X Window System.
2. Android does not have glibc support, but Linux does.
3. Android has its own proprietary driver.
Although Android is based on the Linux kernel, there are still big differences between it and Linux.
Extended information
Android proprietary driver
1. Android Binder is based on OpenBinder A driver of the framework used to provide the inter-process communication (InterProcess Communication, IPC) function of the Android platform. The source code is located in drivers/staging/android/binder.c.
2. Android Power Management (PM) A lightweight Android power management driver based on the standard Linux power management system, which has been optimized for embedded devices. The source code is located at:
kernel/power/earlysuspend.c kernel/power/consoleearlysuspend.c kernel/power/fbearlysuspend.c kernel/power/wakelock.c kernel/power/userwakelock.c
3. Low Memory Killer (Low Memory Killer) is more flexible than Linux's standard OOM (Out Of Memory) mechanism. It can kill processes as needed to release the required memory. The source code is located in drivers/staging/android/lowmemorykiller.c.
4. Anonymous shared memory (Ashmem) provides large blocks of shared memory between processes and provides the kernel with a mechanism to recycle and manage this memory. The source code is located in mm/ashmem.c.
5. Android PMEM (Physical) PMEM is used to provide a continuous physical memory area to user space. DSP and some devices can only work on continuous physical memory. The source code is located in drivers/misc/pmem.c.
6. Android Logger is a lightweight log device used to capture various logs of the Android system. The source code is located in drivers/staging/android/logger.c.
7. Android Alarm provides a timer for waking the device from sleep, and it also provides a clock base that will run even when the device is sleeping. The source code is located in drivers/rtc/alarm.c.
8. USB Gadget driver A device driver based on the standard Linux USB gadget driver framework. Android's USB driver is based on the gaeget framework. The source code is located in drivers/usb/gadget/.
9. Android Ram Console In order to provide debugging functions, Android allows debugging log information to be written to a device called RAM Console, which is a RAM-based Buffer. The source code is located in drivers/staging/android/ram_console.c.
10. Android timed device provides the function of timing control of the device. It currently supports vibrator and LED devices. The source code is located in drivers/staging/android/timed_output.c(timed_gpio.c).
Recommended Linux video tutorial, learning address: //m.sbmmt.com/course/list/33.html
The above is the detailed content of The difference between android and linux. For more information, please follow other related articles on the PHP Chinese website!