Time of Update: 2018-07-26
rc是runlevel control directory的縮寫。 大多數的Linux 發行版本中,啟動指令碼都被放在/etc/rc.d/init.d。這些指令碼被ln 命令來串連到 /etc/rc.d/rcn.d 目錄。(這裡的n 就是運行級0-6) init.d/ :各種伺服器和程式的二進位檔案存放目錄。 rcx.d/: 各個啟動層級的執行程式串連目錄。裡頭的東西都是指向init.d/的一些軟串連。 還有三個指令碼:rc.sysinit, rc,
Time of Update: 2018-07-26
***基本原理***: 通常情況下,程式只能訪問自身的資料,和其它進程沒有溝通,每個進程都是一個單獨存在的個體,進程之間不需要協作就可以完成自身的任務了。但隨著需要解決問題複雜性的增加,一個進程不可能完成所有的工作,必須由多個進程之間互相配合才能更快、更好、更強的解決問題,如同人與人之間的協作可以做出更大的事情一樣。 但是,處於安全性的考慮,OS會限制進程只能訪問自身的資料,不能把“手”伸到其它進程的內部,這怎麼辦呢。進程間的溝通問題怎麼解決呢。
Time of Update: 2018-07-26
dts的概念,在這裡就不多說了, 我這裡的例子是 openwrt 的dts; cpu是7620的; 這裡的power_led的gpio 44 先看右圖: 有一個叫gpio2 的結構體, gpio-base: gpio個數的頭, 基地址 num-gpios: gpio個數的尾 整個意思是 gpio40 ----- gpio72是屬於gpio2這個域裡面的; <=gpio39, >=gpio73都不是這裡的;
Time of Update: 2018-07-26
流程圖: 用gcc編譯通過(gcc -pthread filename.c)。。。 #include<stdio.h> #include<memory.h> #include<pthread.h> int buf[1000000]; int w=0,r=0; //r是讀指標,w是寫指標 int size=10; //緩衝區大小 pthread_mutex_t lock; //鎖 pthread_cond_t is_empty;
Time of Update: 2018-07-26
用linux也有兩年了,但是仍然有很多命令記不住。在這篇部落格裡記錄一些不好記的linux命令,方便查閱,本文會長期更新 xdg-open 和在檔案管理工具裡雙擊一樣的作用,非常方便的命令,記住這一個命令,可以少記無數命令。 nautilus 檔案管理工具 scp 和遠程主機間傳輸檔案 scp root@10.6.159.147:/opt/soft/demo.tar /opt/soft/ 下載 scp /opt/soft/demo.tar
Time of Update: 2018-07-26
linux下的靜態庫依賴 背景 linux的靜態庫.a和動態庫.so的區別很大,靜態庫基本上只是一系列.o檔案的集合加上符號表,沒有連結過程,不能依賴連結其他的靜態庫或者動態庫。如果靜態庫中用到了其他的庫,需要這個靜態庫的使用者在最終的連結階段清楚所有使用到的庫,然後一一連結。 如果靜態庫依賴的庫很多的話,而且依賴的關係很複雜,那麼對於最終的使用者來說絕對是一場噩夢。 方案
Time of Update: 2018-07-26
當Linux靜態庫含有依賴關係時,事情就變得有些棘手了。 下面是舉例,假設使用者目錄下的工程目錄如下: ~├─p1│ p1.c│ p1.h│├─p2│ p2.c│ p2.h│└─ptest test.c 三個目錄p1、p2、ptest,分別有源檔案p1.c、p2.c、test.c 分別代表著三個工程。其中,ptest調用p2中的函數,p2又調用p1中的函數。 下面貼出源檔案的內容: p1: //
Time of Update: 2018-07-26
目錄結構: CommomLib--|inc --|src
Time of Update: 2018-07-26
pkg 是Debian Package的簡寫,是為Debian 專門開發的套件管理系統,方便軟體的安裝、更新及移除。所有源自Debian的Linux發行版都使用dpkg,例如Ubuntu、Knoppix 等。在安裝許多deb檔案時,我們都需要使用該命令。 常用的dpkg命令: 1、sudo dpkg -i <package.deb> 安裝一個 Debian 軟體包,如你手動下載的檔案。 2、sudo dpkg -c <package.deb>
Time of Update: 2018-07-26
linux下釋放cache記憶體細心的朋友會注意到,當你在linux下頻繁存取檔案後,實體記憶體會很快被用光,當程式結束後,記憶體不會被正常釋放,而是一直作為caching.這個問題,貌似有不少人在問,不過都沒有看到有什麼很好解決的辦法.那麼我來談談這個問題. 先來說說free命令 [root@server ~]# free -m total
Time of Update: 2018-07-26
編譯器的基本知識 GCC編譯器對程式的編譯如圖所示,分為四個階段:先行編譯,編譯和最佳化,彙編和連結。 源檔案:存放可編輯代碼的檔案,如存放C,C++和組合語言的檔案。 目標檔案:經過編譯器編譯產生的CPU可識別的二進位代碼,但是目標檔案一般不能執行,因為其中有一些函數過程沒有相關的指示和說明。 可執行檔:目標檔案與相關的庫連結後的檔案它是可以執行的。 先行編譯過程將程式引用的標頭檔包含進原始碼中,並對一些宏進行替換。
Time of Update: 2018-07-26
轉載至:http://www.cnblogs.com/justinzhang/archive/2011/07/18/2109970.html 另外一些參考的repo: git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git
Time of Update: 2018-07-26
本文簡單介紹下Linux訊號處理機制,為介紹二進位翻譯下訊號處理機製做一個鋪墊。 本文主要參考書目《Linux核心原始碼情景分析》《獨闢蹊徑品核心:Linux核心原始碼導讀》首先,先說一下什麼是訊號。訊號本質上是在軟體層次上對中斷機制的一種類比,其主要有以下幾種來源: 程式錯誤:除零,非法記憶體訪問… 外部訊號:終端Ctrl-C產生SGINT訊號,定時器到期產生SIGALRM… 顯式請求:kill函數允許進程發送任何訊號給其他進程或進程組。
Time of Update: 2018-07-26
核心中這個非常重要的組件的最新版本改進了延展性 M. Tim Jones M. Jones 2006 年 9 月 07 日發布 https://www.ibm.com/developerworks/cn/linux/l-scheduler/ 本文將回顧一下 Linux 2.6 的任務調度器及其最重要的一些屬性。在深入介紹調度器的詳細資料之前,讓我們先來理解一下調度器的基本目標。 什麼是調度器。
Time of Update: 2018-07-26
0.前言 從學習C語言開始就慢慢開始接觸makefile,查閱了很多的makefile的資料但總感覺沒有真正掌握makefile,如果自己動手寫一個makefile總覺得非常吃力。所以特意藉助部落格總結makefile的相關知識,通過例子說明makefile的具體用法。 例說makefile分為以下幾個部分,更多內容請參考【
Time of Update: 2018-07-26
每次 Linus Torvalds 發布 一個新 Linux 核心的主線版本,幾乎都會引起這種困惑,那就是到底哪個核心版本才是最新的“穩定版”。是新的那個 X.Y,還是前面的那個 X.Y-1.Z 。最新的核心版本是不是太“新”了。你是不是應該堅持使用以前的版本。-- Konstantin Ryabitsev 本文導航◈ 候選版版(RC) 28%◈ Bug 修複 37%◈ 最新的穩定核心 51%
Time of Update: 2018-07-26
網路攝影機預覽正常,在點擊“退出按鈕”,或者關閉運行表單後,下面的編譯器輸出欄彈出一堆警告,如下: *** glibc detected *** /home/yan/qt/Camera_Read_OpenCv_V1-build-desktop-Desktop_Qt_4_8_0_for_GCC__Qt_SDK____/Camera_Read_OpenCv_V1: free(): invalid pointer: 0xafeff000 *** ======= Backtrace: =======
Time of Update: 2018-07-26
2011-02-26 23:02 4422人閱讀 評論(2) 收藏 舉報 最近在學處理序間通訊,但是我一直沒找到一個linux 內建的可以根據進程名來擷取進程ID的函數,於是就自己寫了一個。可以擷取到正確的結果,但是是通過system函數,然後 讀取檔案獲得的,效率不高。如果高人看見來,有什麼好的建議請提醒我,謝謝。 ////////////////////////////////
Time of Update: 2018-07-26
轉自 https://linux.cn/article-7982-1.html aria2 是一個自由、開源、輕量級多協議和多源的命令列下載工具。它支援 HTTP/HTTPS、FTP、SFTP、 BitTorrent 和 Metalink 協議。aria2 可以通過內建的 JSON-RPC 和 XML-RPC 介面來操縱。aria2
Time of Update: 2018-07-26
Linux下的段錯誤(Segmentation fault)產生的原因及調試方法(經典) 簡而言之,產生段錯誤就是訪問了錯誤的記憶體段,一般是你沒有許可權,或者根本就不存在對應的實體記憶體,尤其常見的是訪問0地址.