iT邦幫忙

2022 iThome 鐵人賽

DAY 12
1
  • BSP
    • Board support package
    • BSP可以想成它就是一包source code
    • 這包source code透過linux所建構出來的firmware
    • 可以在Android裝置上開機
    • 為什麼需要BSP
      • 所有有裝載CPU的那種裝置
      • CPU來源都是CPU晶片大廠,像是Qualcomm、Nvidia、TI、MTK等
      • 大廠會提供他們自己的Pure BSP,讓各晶片廠自己的「公版」能夠開機
      • 那OEM系統廠(ASUS、HTC、Samsung...etc)會用公版去開發自己的產品
      • 首先,在硬體上,OEM產品就會跟某晶片廠的公版有差異
        • 差異可能包含:Camera、RAM、Display Panel、Touch Panel、Audio、Sensor...etc
      • BSP team
        • 晶片大廠: 將自家晶片能夠run起來(?
        • OEM: 主要的工作,就是將這些差異,基於Pure BSP,作所謂Porting(移植)的動作。
        • 常做的工作:
          • Image版本更新 == 將image燒到機台裡面

          • Image是什麼?

            • 就是BSP程式碼透過linux所建構(build)出來的韌體
          • 更新方式

            • fastboot
            • SD update (SD card, secure digital)
            • OTA(Over the air)
    ASUS Android BSP team工作滿三年心得
    A good choice - Android BSP team

 
 

  • .so file
    • 是linux 系統的文件
    • 類似於Windows中的DLL
    • 類似於MacOS的DYLIB
    • 是動態鏈接庫,也有人譯作共享庫
    • so (shared object)
    • Android也是linux一種,android也會用.so file
    • 是由C++編譯而成的
    • 多個程序可以使用同一個動態鏈接庫
      • 能節約可執行文件的大小
      • 減少運行時的內存佔用
    • 絕大多數.so文件都存放在/lib、/usr/lib/
    • C++
      • 先用compiler編譯成.o檔,是為object file
      • 再用compiler再次編譯成.so檔,是為shared object file
      • 為了串接運行,再用linker將.so串接起來(?
    動態庫(.so)
    Using Libraries in C++ (Static Linking)
    Using Dynamic Libraries in C++

.SO file: Everything you need to know
Should you learn SDL, SFML, or GLFW? (or GLUT)


上一篇
ISP的module
下一篇
Make & Makefiles
系列文
AOSP(Android Open Soure Project)學習30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言