原创 utumno - 0
因爲utumno0不可讀, 開始以爲用strace可以獲取一些信息 最後只是調用write,並沒什麼用(從這裏可以知道庫函數puts最後是調用write來實現的)最後利用xocopy把可執行代碼dump出
原创 utumno - 1
/* utumno1.c */ #include <stdio.h> #include <stdlib.h> /** stack environment of main * env * argv * argc * eip *
原创 utumno - 3
┌──────────────────────────────────────────────────────────┐esp+0x38 chr │0x80483fd <main> push %ebp
原创 x86 Registers
x86 Registers The main tools to write programs in x86 assembly are the processor registers. The registers are like va
原创 struct 互轉 xml
/** struct2xml.c */ #include <stdio.h> #include <unistd.h> #include "soapStub.h" #include "soapH.h" #include "nsmap.h
原创 Intel and AT&T Syntax
Intel and AT&T Syntax. Intel and AT&T syntax Assembly language are very different from eachother in appearance, and thi
原创 應用程序運行時的虛擬內存佈局 - 進程 - 線程
每一個進程都是類似上圖的內存分佈 當進程fork一個子進程的時候, 子進程拷貝父進程當前的內存空間, 包括環境變量, 棧空間, 堆空間, 代碼段, 數據段等等 所以在子進程調用exec類函數之前, 所有都是和父進程一樣的 所有線程共享所屬
原创 My Biggest Regret As A Programmer
A little over 20 years ago I was at a crossroads. My second company was petering out when our 5 years of building Delta
原创 生產者-消費者-信號量-共享內存-循環隊列
代碼轉自別處,稍有修改,主要是宏定義,我覺得不夠直觀的地方給改了,邏輯沒變 用信號量來控制隊列 #include <stdio.h> #include <time.h> #include <unistd
原创 behemoth - 07
#include <stdio.h> #include <ctype.h> #include <string.h> #include <stdlib.h> extern char **environ; int main(int arg