原创 IPQ4019MTD分區生成的過程

  簡介 本文介紹一個IPQ4019的MTD分區信息是如何從配置文件一步步傳遞到linux內核的。這個過程有幾個部分組成,分區信息在編譯過程中的傳遞;升級時寫入flash區;設備上電時linux如何得到分區信息。   上電後linux打印

原创 backports的層次

backports的層次   引言 Linux 無線驅動的開源項目backports的分析。   介紹 整個驅動代碼分成兩個結構。80211通用的功能提取出來做成通用層,這一部分叫做soft mac。而一些與芯片處理相關的部分代碼放在各

原创 openwrt 內核完成後的初始過程。

如上圖所示:linux內核啓動完成後,執行的第一個程序中/etc/preinit。由此此時環境變量PREINIT爲空,所以馬上執行/sin/init /sbin/init是由procd/init.c編譯而來。它先執行一些early

原创 linux與應用層通信方式 之nf_sock_opt

//內核部分代碼。大家可以COPY ipt_sockopts//#include <linux/config.h> #include <linux/module.h> #include <linux/moduleparam.h> #inc

原创 window禁用強制驅動簽名的方式

win7 64位進入命令提示符窗口後,在光標處,輸入bcdedit.exe -set loadoptions DDISABLE_INTEGRITY_CHECKS命令 https://jingyan.baidu.com/article/ac

原创 epoll的注意事項。

最近使用了epoll發現。在epoll_create 返回的fd,被配置FD_CLOEXEC,是不起作用的。子進程可以繼續使用它。並可以繼續使用epoll_ctl增加偵聽文件句柄。而父進程可以收到此句柄的讀寫事件。但是父進程由於沒有此句柄,

原创 centos7(redhat7) 中localtime_r有一個BUG

centos7(redhat7) 中localtime_r有一個BUG。具體過程如下: step1 後臺進程啓動。 step2 用戶修改時區。 step3 後進進程在使用localtime_r取時間時,不會更新時區。取得時間還是舊的時間。

原创 epoll的注意事項

最近使用了epoll發現。在epoll_create 返回的fd,被配置FD_CLOEXEC,是不起作用的。子進程可以繼續使用它。並可以繼續使用epoll_ctl增加偵聽文件句柄。而父進程可以收到此句柄的讀寫事件。但是父進程由於沒有此句柄

原创 嵌入式系統linux 記錄內存panic

簡介 在內存發生panic時,需要把panic的日誌保存下來。以方便日後進行分析。 目前有三種記錄的方式: kdump; mtdoops; crashlog(這是openwrt特別的功能,正式linux內核中沒有) 大家對kdump比較瞭

原创 ipq4019 識別板卡型號的過程

openwrt系統啓動後,會在/tmp/sysinfo/生成兩個文件。其中保存了板卡型號的信息。如下日誌。 [root@Abloomy:sysinfo]# pwd /tmp/sysinfo [root@Abloomy:sysinfo]#

原创 從設備樹的reg到/proc/iomem

在linux系統中,iomem_resource的信息被輸出到/proc/iomem中。 我們以高通IPQ4019芯片爲例進行一下示例說明 step1 在/proc/iomem中看一下iomem_resource的情況 [root@Abl

原创 在新linux中使用proc_create_data編寫proc

主要講使用proc_create_data如何傳遞私有數據。 其中可以參考/fs/proc/uptime.c 以下是我在工作中,針對一個phy驅動寫的一個proc const char *___dev_name(const str

原创 ssh反向連接 (SSH中繼)

A:是外網服務器 ,在本例中是192.168.100.138 B:是內網機器,是反向連接的發起人 192.168.200.198 C:是遠程主機。 第一步:A的sshd服務進程在偵聽的接口是22222 如下圖第二步:B啓動ssh進程

原创 查詢mac地址所屬廠家的網站

http://www.macvendorlookup.com/ http://standards.ieee.org/develop/regauth/oui/public.html 輸出廠家名,查取mac地址

原创 查看開源軟件的man文件。

嵌入式開發中,我常常要讀讀開源軟件的幫助文件,不過我不想安裝這個開源軟件。 在不安裝此開源軟件的情況下,直接進入相應的絕對目錄, 並使用less xxx.6就可以像man xxx一樣閱讀它的man文件了。 使用less pppd.