zoukankan      html  css  js  c++  java
  • kernel cmdline

    從 lk 傳送到 kerel 的 cmdline 會放在開機後的
    adb
    /proc/cmdline

    開到 android 後,又會被讀出來

    /system/core/init/util.cpp

    275void import_kernel_cmdline(bool in_qemu,
    276                           const std::function<void(const std::string&, const std::string&, bool)>& fn) {
    277    std::string cmdline;
    278    android::base::ReadFileToString("/proc/cmdline", &cmdline);
    279
    280    for (const auto& entry : android::base::Split(android::base::Trim(cmdline), " ")) {
    281        std::vector<std::string> pieces = android::base::Split(entry, "=");
    282        if (pieces.size() == 2) {
    283            fn(pieces[0], pieces[1], in_qemu);
    284        }
    285    }
    286}
    

    /system/core/init/init.cpp

    391static void import_kernel_nv(const std::string& key, const std::string& value, bool for_emulator) {
    392    if (key.empty()) return;
    393
    394    if (for_emulator) {
    395        // In the emulator, export any kernel option with the "ro.kernel." prefix.
    396        property_set(android::base::StringPrintf("ro.kernel.%s", key.c_str()).c_str(), value.c_str());
    397        return;
    398    }
    399
    400    if (key == "qemu") {
    401        strlcpy(qemu, value.c_str(), sizeof(qemu));
    402    } else if (android::base::StartsWith(key, "androidboot.")) {
    403        property_set(android::base::StringPrintf("ro.boot.%s", key.c_str() + 12).c_str(),
    404                     value.c_str());
    405    }
    406}
    
  • 相关阅读:
    在浏览器应用中使用 gRPC
    gRPC 客户端工厂集成
    gRPCurl 测试 gRPC 服务
    links
    Flex布局
    使用 IHttpClientFactory 实现复原 HTTP 请求
    Dex Common
    Dex MVVM
    日志
    配置
  • 原文地址:https://www.cnblogs.com/youchihwang/p/7603218.html
Copyright © 2011-2022 走看看