原创 python BaseHTTPServer重啓失敗,提示端口被佔用
有一個BaseHTTPServer,名爲A,監聽端口12346;它有10個子進程,通過os.system("nohup xxxx &")啓動,也是BaseHTTPServer,名字分別爲B0~B9,分別監聽9000~9009。A將接收到的
原创 獲取urllib2.urlopen失敗時的錯誤頁面
錯誤方法: import urllib2 req = urllib2.Request('http://127.0.0.1/longerrorpage') try: response=urllib2.urlopen(req) exc
原创 qemu vl.c源碼學習
代碼版本qemu1.5,只看linux下使用kvm加速的,guest爲x86的。 vl.c:main atexit(qemu_run_exit_notifiers); vl.c,註冊atexit函數,遍歷exit_notifiers,執行
原创 如何查找android emulator內核的精確版本
android api22, arm images root@generic:/ # cat /proc/version Linux version 3.4.67-01422-gd3ffcc7-dirty ([email protected]
原创 shell腳本test命令沒用好,寫了好幾天的代碼全被刪了
在桌面上有一堆.cpp和elf文件以及shell腳本,我想寫一個腳本刪除所有的elf文件 #!/bin/bash for filename in `ls` do file $filename | grep ELF; if
原创 編譯開源軟件時,prefix, sysroot, DESTDIR怎麼整
開發環境ubuntu12.04,x86_64,gcc4.6 arm板子環境armeabi,32bit,gcc5.3 以shell裏面經常用到的file程序爲例子 從ftp://ftp.astron.com/pub/file/上面下載源代
原创 ELF entry point和裝載地址
爲了研究ELF文件裝載到內存的哪裏,以及從哪裏開始運行程序,環境:ubuntu12.04 64位,gcc4.6.3。 使用的源代碼是: #include <stdlib.h> void hello(void) { ex
原创 初始化python類的實例時,私有變量的值與上一個實例的相同,問題定位
#!/usr/bin/env python # -*- Coding=UTF-8 -*- class parser: def __init__(self, x=[]): print "early-init: id
原创 靜態庫改爲動態庫後,可以影響到程序的執行結果
源於systemd的例子 先看bus-error.h中的一個宏: #define BUS_ERROR_MAP_ELF_REGISTER \ __
原创 arm平臺函數傳遞參數,反彙編實例分析
測試前,需要了解下sysv的傳參方式: 1、輸入參數通過r0-r3傳遞,多餘的放入堆棧中;返回值放入r0,不夠的話放入{r0,r1}或者{r0,r1,r2,r3},比如: int foo(int a, int b, int c, int
原创 python os.path.isdir權限問題小坑一個
使用django搞一個東西玩,python manager.py runserver的時候,一切正常。將項目部署到apache之後,出現了問題。定位到問題所在: if not os.path.isdir(working_dir):
原创 libffi淺析
最近調試了weston的一個coredump,對libffi有了一些瞭解,在此記錄下,使用的是arm處理器,32位,soft float,libffi3.1,使用的abi是SYSV。 libffi簡介和使用示例:http://www.a
原创 爲什麼有時候讀取文件,atime不更新
在linux中,使用stat foo.txt 命令可以看到文件foo.txt的三個時間: atime:access time,訪問時間 mtime:modify time,修改時間,文件內容有修改 ctime:change time,cr
原创 shell重定向小記
對於int型的,使用open,write,read,close操作,對於FILE*型的使用fopen,fwrite,fread,fclose操作 標準輸入,int fd = 0,int fd = STDIN_FILENO,FILE *f
原创 android emulator虛擬設備分析第一篇之battery
一、概述 本文使用的android版本是5.1.0_r1,goldfish內核版本是3.4,android鏡像是x86架構的。本文以battery爲例,完整地介紹了虛擬設備的實現和使用。 爲什麼android emulator需要虛擬設