Hot answers tagged

67

Linux version in AOSP Android Version |API Level |Linux Version in AOSP |Header Version ---------------------------------------------------------------------------------------- 1.5 Cupcake |3 |(2.6.27) | 1.6 Donut |4 |(2.6.29) ...


17

The Linux user IDs that Android uses to isolate apps from each other are completely unrelated to user profiles on Android 4.2 tablets. In Android, each app gets its own directory for saving data. The Linux user ID system is used to make sure apps can't read each others' data. But all these data directories are inside one directory on the filesystem, /data/...


14

Root permissions and kernel mode are not the same thing. Programs with root access can access part of the kernel, but root is not the kernel itself. The Android (and Linux) user model has a set of users, each part of a set of groups. These groups are used to manage which users are allowed access to what. For example, in Linux you could set up all printer ...


8

The kernel on your device is tied heavily to the version of the Android operating system you're running. Sony releases your phone with the "stock ROM" (think a "stock" car in stock car racing; no customization, just as-is from the factory), including the stock kernel. Normally, your kernel would be updated when the operating system - your "ROM" - is updated. ...


8

The filesystem support is device-specific, and in fact many devices using Android 2.3 support ext3 in the kernel (or ext4, which can also mount ext3 and ext2 filesystems). Usually the difference in filesystem support is due to different hardware. Older devices often used raw NAND flash chips and MTD drivers in Linux, which did not support conventional ...


8

To answer my own question! Warning, in some very rare cases this doesn't work or could be dangerous. For example, Amazon Fire devices refuse to communicate with these tools despite being MediaTek. Tools like SPFT uses a DA (for Download Agent) to communicate with the MediaTek bootloader, but the MediaTek bootloader has some configurable settings so that it ...


7

On Nexus devices, at least: CF Auto-Root works by unlocking the device's boot loader via fastboot (if it isn't already unlocked), then sending the device a custom boot image (kernel and ramdisk) that it should run instead of booting from the built-in system or recovery partition. It's analogous to booting your PC from a CD or USB drive instead of from the ...


7

The differences change from version to version (both of Linux and of Android), and the exact kernel is different for each device. A kernel for Android is a mainstream Linux kernel, with additional drivers for the specific device, and other additional functionality, such as enhanced power management or faster graphics support. Many features in the Android ...


7

Boot into TWRP, select Install and follow the screenshots for the rest. (Click image to enlarge) It's not a problem for TWRP to which ROM your particular kernel belongs. The size should not be greater than the partition. That's all. If the kernel is not good for the ROM, your device would not boot into the ROM or would cause some other instability, so ...


7

Why didn't Google just take a Linux distribution ... and create a desktop environment for touchscreens? Because they didn't want to create a desktop environment for touchscreens: they wanted to create a new OS for smartphones. Smartphones (and earlier, PDAs) based on not only the Linux kernel but the GNU userspace, with the same programming environment as ...


7

It is possible to dump device partitions without root or custom recovery - if your device has "fastboot" mode and is boot unlocked. I'm not going to describe unlocking the boot loader, but with a fastboot device it is usually pretty easy - search the internet for instructions for your specific device. You will need a TWRP recovery image for your device, but ...


7

When you use fastboot boot FILE.img, the image is downloaded and written into the RAM and than the normal procedure to boot a boot.img is followed. No changes to any partition takes place. If the image is invalid or cannot be booted into, the boot process automatically falls back to the image in the boot partition. Once the temporary kernel is booted into, ...


6

I think this Android Source is a great documentation for understanding it. And here is a list of changes done from mainline kernel for android kernel 4.14. The largest features include: 19.8% Energy Aware Scheduling (kernel/sched) 13.8% Networking (net/netfilter) 13.5% Sdcardfs (fs/sdcardfs) 9.4% USB (drivers/usb) 7.2% SoC (arch/arm64, arch/x86) 6.2% f2fs ...


6

At a simple level, the effects would be catastrophic. The system wouldn't boot, and you would probably hard-brick OR super-brick. Kernels are the direct system for managing communication between software and hardware, among other things, and the kernel needs to be just right. If the device hard-bricks, a USB jig would need to be used to force the device into ...


6

If it was that easy then we'd have custom ROMs in no time for every phone on the planet. What's on our phone are compiled, it's basically impossible to decompile them (modern decompilers are not as powerful as you'd like to think), and sometimes illegal when dealing with proprietary components.


6

Back in 2012, /proc/last_kmsg (1) used to be a dump of kernel console messages, exported after reboots by Android's ram_console functionality (CONFIG_ANDROID_RAM_CONSOLE), which used persistent_ram (CONFIG_ANDROID_PERSISTENT_RAM) to handle a block of RAM that wasn't erased across reboots (2). persistent_ram was based on Linux upstream RAMOOPS code which ...


5

Beside the device specific differences and wake lock that Dan Hulme and Lie Ryan mentions, Android removed System V IPC features (message queues, shared memory segments, semaphores) that could lead to resource leaks (http://www.kandroid.org/ndk/docs/system/libc/SYSV-IPC.html). This probably is just a matter of configuring the kernel build. Also the Android ...


5

It stands for git, the name of the version control system used for the Linux kernel. Git itself isn't an abbreviation, it's just the name of the system. The git describe command is what's used to generate these version identifiers, and its manpage describes the format: The hash suffix is "-g" + 7-char abbreviation for the tip commit of parent ... ...


5

1) Building in Android could mean: - building a deliverable in the android build tree - building a deliverable on an android platform having build tools installed - building the AOSP (Android OpenSource Project) A little bit more context may help. According to the following question 'the build system is different from other Linux systems' it could be the ...


5

Is there any way of activating all cores? You can't. The hardware is not designed to have all 8 cores active. The reason for this is that this Octacore CPU is actually based on big.LITTLE technology, where there are two sets of four cores: a powerful big cores used for heavy processing (e.g. gaming) and energy efficient LITTLE cores used for low load ...


4

TL;DR version: Unlocking the bootloader The initial program when you boot is the bootloader. If "locked" it may: 1) block attempts at flashing 2) refuse to boot the phone if something unauthorized was flashed. Unlocking it means changing a setting that affects this behaviour. Rooting see what does rooting a phone mean Jailbreaking iphone word for ...


4

This question is already well answered, but one thing I find most non-tech people getting confused about is the difference between rooting/jailbreaking and SIM Unlocking. This is the simple explanation I use for non-tech people. A smartphone is essentially 2 things A phone Unlocking is relevant to the phone part of the smartphone. In some countries ...


4

Go to Settings -> About phone menu and scroll all the way to the bottom: Tap the "SELinux status" menu 3 times in a row in a quick succession. This will bring up a prompt asking you to confirm enabling the other modes: Be aware that currently this feature is still under heavy development, and isn't supported on all devices yet.


4

No. Built-in drivers aren't modules, they are built-in (hence the name). If it's not showing in lsmod, you can't get rid of it short of building a new kernel.


4

Visit the wiki pages of Kernel and Android for information. In simple terms, the kernel is a key component of operating systems, which mediates between software and the hardware. When an application needs the hardware to do something (this is known as a system call), it sends a request to the kernel, which in turn interprets the command for the hardware. ...


4

Every single application that is installed on your phone, gets a UID. It is a number that Android uses to identify the apps so it can check from what app commands are executed and check the permissions of the app to see if that app is allowed to execute the command. Privileges of applications are pretty restricted in Android. They can't see data folders of ...


4

IMEI is an baseband identifier so it's stored on non-writable memory. There are two IMEIs actually - display and hardware. It's possible to change the display IMEI on rooted devices, but no way to write it down to hardware. Call your carrier for resetting your SIM card and also try to flash stock firmware using factory tools (Qualcomm QFIL in your case)


4

There is a long list of Ethernet related questions but none has a comprehensive answer covering all aspects. I'm generalizing your question in order to share my knowledge on this. This is what you need to do in order to make Ethernet work on Android: Make sure OTG support is available Kernel must be built with Ethernet (and USB Ethernet) support Handle USB ...


3

This link contains the parts where you can intervene / add your own functionality The rough flow is Power On > Bootloader > Kernel > Init Process > System Server > Boot Complete At the bootloader stage, the following is run: A. The first boot loader stage will detect and set up external RAM. B. Once external RAM is available and the system is ready the ...


3

Looking at the repository for that device, I can see that the specified kernel is built from source using the source found here and the cyanogenmod_i9305_defconfig configuration file. You can tell that the kernel is not the stock one by going to the terminal app (or from adb shell) and typing uname -a, which will tell you the build date of the kernel. If ...


Only top voted, non community-wiki answers of a minimum length are eligible