Posts

HOW TO RUN ANDROID EMULATOR WITH CUSTOMIZED KERNEL

 HOW TO RUN ANDROID EMULATOR WITH CUSTOMIZED KERNEL I. AOSP source code ( from AOSP 11 onward, google introduced GKI which separate android kernel and vendor kernel. kernel source is separated from AOSP )    1. clone aosp source from google    2. build emulator       cd <aosp>       source ./build/envsetup.sh       lunch sdk_car_x86_64-userdebug       make -j$(nproc)    3. test emulator       emulator -no-window -no-snapshot -writable-system -show-kernel II. Build custom android kernel    1. Find android kernel version compatible with current working emulator        at step I.3 , you will file in the log current kernel of emulator, sth like        " [    0.000000] Linux version 5.10.66-android12-9-00021-g2c152aa32942-ab8087165 (build-user@build-host) (Android (7284624, based on r416183b) clang version 12.0.5 " ...

The best books C++

Advanced C and C++ Compiling  An engineering guide to compiling, linking, and libraries using C and C++ Link :  https://archive.org/details/advanced-c-and-c-compiling-2014/page/n7/mode/2up

Static vs. Shared Libraries: Understanding C++ Dependencies

Introduction As your C++ projects grow, choosing how to manage external code dependencies becomes essential. The world of static and shared libraries offers powerful options, but also important trade-offs. Let's break down these concepts to empower you to make informed decisions for your projects. Static Libraries Definition: A static library is a collection of pre-compiled code that is directly copied into your executable during the compilation process. Advantages: Self-containment: Everything needed to run is within the executable, simplifying distribution. Potential speed boost: Code is already present, avoiding runtime linking overhead. Disadvantages: Larger executables: Each program gets its own copy of the library, increasing file size. Updates: Changes to the static library require recompiling all applications using it. Shared Libraries Definition: A shared library (also known as a dynamic library) is a standalone file that isn't embedded into your executable. Inst...