Time of Update: 2018-12-06
卡檢測CD和防寫保護WPSD卡槽對於WP和CD和COMM沒有統一的物理規範.但對於引腳1~9有統一規範.引腳順序為
Time of Update: 2018-12-06
%.d: %.c $(CC) -M $(CPPFLAGS) $< > $@.$$$$; \ sed 's,\($*\)\.o[ :]*,\1.o $@ : ,g' < $@.$$$$ > $@; \ rm -f
Time of Update: 2018-12-06
ssh179 1 #! /usr/bin/expect 2 set timeout 60 3 set host 172.20.106.179 4 set name [lindex $argv 0] 5 set password abc123 6 spawn ssh $name@$host 7
Time of Update: 2018-12-06
依 CSDN劉偉技術部落格,C++命令模式樣本如下: 1 // include/Command.h 2 3 #ifndef __COMMAND__ 4 #define __COMMAND__ 5 6 #include <WindowHandler.h> 7 #include
Time of Update: 2018-12-06
lwl,lwr,swl,swr中的指令尾碼r(right),l(left)都是相對寄存器而言,load操作是把取到的部分資料,置入寄存器的left或者right,store操作時將寄存器中的資料的 left或者right部分寫入目標地址。無論時大端和小端寄存器的格式都是固定的,即
Time of Update: 2018-12-06
new(mCblk) audio_track_cblk_t(); placement new 1 #include <iostream> 2 #include <stdio.h> 3 #include <malloc.h> 4 5 class Student 6 { 7 private: 8 int age; 9 int grade;10 public:11 Student(void)12
Time of Update: 2018-12-06
寫了大概一下午,本以為很easy的,寫了才知道“邊界+細節”,尤其“(ones >> 2) >> ntz”,如果寫成了“ones>>(2+ntz)"就會報錯,邊界部分自己調了。關於bitcount部分,做了修改,基本只用一個大的常數,以及一些小的數字。 4 int bitcount(unsigned int n) 5 { 6 unsigned int tmp; 7 tmp = n & 0x33333
Time of Update: 2018-12-06
在中心又跑了下指令集測試,順便記錄下在cache miss時write allocate和read allocate的區別 代碼: 1 movl r0, #0x7000 2 movl r1, #0xaaaaaaaa 3 stw r1, [r0] 4 movl r1, #0xbbbbbbbb 5 stw r1, [r0] ldw r1, [r0] 6 movl r0, #0x94007000 7 stw r1, [r0] 8
Time of Update: 2018-12-06
.incbin "file"[,skip[,count]] The incbin directive includes file verbatim at the current location. You can control the search paths used with the ‘-I’ command-line option . Quotation marks are required around file. The skip argument skips a number
Time of Update: 2018-12-06
由於CPU的位元一般約定俗成是8的整數倍,8位、16位、32位等等,而ADC(模數轉換器)的位元一般不是8的整數倍,比如9位、10位、12位、14位等等;採樣產生的資料在儲存時,就有了“向靠左對齊,右邊填齊,左邊填0”兩種儲存方法,這就是Left-Justified和Right-Justified。無壓縮的WAV檔案,一般使用Left-Justified。比如一個採樣結果1010 0001 0111將被儲存為1010 0001,0111 0000。
Time of Update: 2018-12-06
1 #include <stdio.h> 2 3 void show(unsigned int value, unsigned int start, unsigned seq_end) 4 { 5 int i = 0; 6 printf("%d = %d + ",
Time of Update: 2018-12-06
引述自:http://blog.csdn.net/lizhibin1091666592/article/details/6976254 核心的一個基本原則就是:在中斷或者說原子上下文中,核心不能訪問使用者空間,而且核心是不能睡眠的。也就是說在這種情況下,核心是不能調用有可能引起睡眠的任何函數。一般來講原子上下文指的是在中斷或非強制中斷中,以及在持有自旋鎖的時候。核心提供了四個宏來判斷是否處於這幾種情況裡:#define in_irq() (hardirq_count())
Time of Update: 2018-12-06
cache alias問題的產生:L1cache:VIPT型; 32K,(S、E、B)=(256、4、32)way-size=8KB假定TLBSIZE為4KB,有如下兩個地址映射關係:VA0:0X0000_0020 -> PA 0X0000_0020VA1:0X0000_1020 -> PA 0X0000_0020得到VA0 的index為1,VA1的index為129,假定此時為cold
Time of Update: 2018-12-06
看I2C驅動的時候,感覺有點亂,伺服器掛了,沒法編譯,不好打樁;Makefile和Kconfig都看了下, 依據核心的標頭檔寫了個指令碼,方便查看函數執行流程。執行 postseq `pwd`輸出 執行階段的修飾符 函數名 檔案名稱+行號 1 #! /bin/bash
Time of Update: 2018-12-06
#在核心中將產生的目標檔案與源檔案放在一起,此處將產生的目標檔案放在一個目錄下,類似於 android的lk目錄下的組織。#當標頭檔更新時,更新cpp檔案的時間戳記,進而重建依賴檔案,並執行源檔案到目標檔案的編譯。#tools目錄下的depend.sh,可以直接寫在Makefile中,但是太長,所以單獨列出。#本檔案在運行時,顯示“has modification time 3.2e+05s in the
Time of Update: 2018-12-06
p_87Linux下的GCC編譯器中,預設情況下已經去掉了在C語言符號前加"_"的方式,但是Windows平台下的編譯器還保持著在符號前加"_"的習慣。函數簽名使得函數在目標檔案中的符號變成與其源檔案的函數名、函數參數、所在的類和名稱空間及其它資訊關聯了起來。函數簽名經名稱修飾變成修飾後名稱目標檔案中的符號名,變數亦如此。c++filt工具可以用來解析被修飾過的名稱,比如:c++filt
Time of Update: 2018-12-06
1 #include <iostream> 2 3 using namespace std; 4 5 struct node 6 { 7 int data; 8 node *next; 9 }; 10 11 12 node
Time of Update: 2018-12-06
1 #! /bin/bash 2 LIB_CUR_REL= 3 LIB_CUR_ABS= 4 5 get_binary_dependency() 6 { 7 readelf -d $1 | grep NEEDED | sed -n 's,.*\[\(.*\)\],\1,p' 8 }
Time of Update: 2018-12-06
關於.strtab,.symtab,.shstrtab.strtab是字串表(STRING TABLE).shstrtab是段表字串表(Section Header String Table),針對段表.symtab是符號表,一般是變數、函數shstrtab及symtab經常引用strtab中的字串。ld連結指令碼中將會定義很多特殊的符號,這些符號並沒有在你的程式中定義,但是你可以直接聲明並應用,我們稱之為特殊符號。查看ld的預設連結指令碼:ld
Time of Update: 2018-12-06
1 #! /bin/bash 2 3 name=liuchangcheng 4 5 loginme() 6 { 7 last | grep `w -u $1 | awk 'NR == 3{print $1}'` | grep 'still logged in' | awk