https://blog.csdn.net/HZHejo/article/details/124682490
星期一, 1月 06, 2025
Check libraries dependence
Ref: https://albert-oma.blogspot.com/
check libraries dependence:
$ arm-linux-gnueabihf-readelf -d ./gst-launch-1.0
星期三, 12月 11, 2024
Virtual memory related
Linux内存管理之vmap与vmalloc 圖文並茂 , 針對vmap_area
mmap system call 後, 進kernel 的流程 gitmind 自畫
https://elixir.free-electrons.com/linux/v5.10.230/source/mm/util.c 方便追code, 含各版本
星期一, 12月 09, 2024
星期一, 11月 25, 2024
TFAT
- https://elinux.org/images/5/54/Elc2011_munegowda.pdf
- https://bitsavers.computerhistory.org/components/samsung/flash/TFS4_v1.5.0_Porting_Guide_20060502.pdf
- https://events.static.linuxfound.org/images/stories/pdf/lceu11_munegowda_s.pdf
- https://www.renesas.com/en/document/apn/rx-family-open-source-fat-file-system-m3s-tfat-tiny-module-using-firmware-integration-technology?language=en&srsltid=AfmBOootRvzRHDCmHPSjqznUcYY8yXmaEfAfhSOP7xiem1jOCZ-Jukhm
- https://www.renesas.com/en/software-tool/fat-file-system-m3s-tfat-tiny-rx-family#overview
星期二, 10月 08, 2024
github Permission denied (publickey)的简单解决方法
https://blog.csdn.net/m0_65465945/article/details/134202945
1.执行 ssh-keygen -t rsa -C "你的git注册邮箱",在 .ssh 目录下会生成以下3个文件:
(1)id_rsa, (2)id_rsa.pub, (3)known_hosts
2.在浏览器登录github,在Settings界面点击左边的 SSH and GPG keys,然后复制 id_rsa.pub 文件的内容到SSH keys,点击Add SSH key即可。
3. 执行 ssh -T git@github.com,就能看到成功了。
星期三, 9月 25, 2024
[English Skills] 進階英文 - 天啊!符號們怎麼唸啊?(下)
https://chipersonalbranding.blogspot.com/2017/09/english-skills.html
https://chipersonalbranding.blogspot.com/2018/04/english-skills.html
pthread, sem_wait, mutex, atmoic, concurrent-programs, sysprog21
https://www.cnblogs.com/WindSun/p/11441234.html
https://hackmd.io/@sysprog/concurrency-atomics#wait-free-amp-lock-free
星期一, 9月 16, 2024
星期五, 9月 06, 2024
指定時間的類型
clock_getres
的第一個參數是指定時間的類型,常見的類型有:
https://blog.gtwang.org/programming/measure-the-execution-time-in-c-language/2/#google_vignette
CLOCK_REALTIME
:系統的實際時間(wall-clock time)。CLOCK_REALTIME_COARSE
:系統的實際時間(wall-clock time),取得速度快,但精確度校低。CLOCK_MONOTONIC
:單調遞增時間(monotonic time),這個時間會非常穩定的持續遞增,不會因為系統時間改變而有變動,適合用於測量程式執行效能。CLOCK_MONOTONIC_COARSE
:與CLOCK_MONOTONIC
類似,取得速度快,但精確度校低。CLOCK_MONOTONIC_RAW
:與CLOCK_MONOTONIC
類似,但是它是從硬體時鐘所讀取出來的值。CLOCK_PROCESS_CPUTIME_ID
:程式行程的 CPU time,這個時間包含所有的執行序所花費的時間。CLOCK_THREAD_CPUTIME_ID
:程式單一執行序所耗費的時間。
https://www.cnblogs.com/memo-store/p/5658277.html
CLOCK_REALTIME,可以理解为wall time,即是实际的时间。用户可以使用命令(date)或是系统调用去修改。如果使用了NTP, 也会被NTP修改。当系统休眠(suspend)时,仍然会运行的(系统恢复时,kernel去作补偿)。
CLOCK_MONTONIC,是单调时间,即从某个时间点开始到现在过去的时间。用户不能修改这个时间,但是当系统进入休眠(suspend)时,CLOCK_MONOTONIC是不会增加的。
CLOCK_MONOTONIC_RAW,和CLOCK_MONOTONIC类似,但不同之处是MONOTONIC_RAW不会受到NTP的影响。CLOCK_MONOTONIC会受到NTP的影响并不是说NTP会去修改CLOCK_MONOTONIC,使其不连续,而是说当NTP server 和本地的时钟硬件之间有问题,NTP会影响到CLOCK_MONOTONIC的频率,但是MONOTONIC_RAW则不会受其影响。 其区别可以参考 Difference between MONOTONIC and MONOTONIC_RAW
CLOCK_BOOTTIME,与CLOCK_MONOTONIC类似,但是当suspend时,会依然增加。可以参考LWN的这篇文章 introduce CLOCK_BOOTTIME