原创 二叉樹的有關操作

struct BTreeNode { char data; BTreeNode *left; BTreeNode *right; }; //創建二叉樹 void createBTree(BTreeNode*

原创 malloc分配內存泄露檢測

mtrace用法: #include <unistd.h> #include <fcntl.h> #include <sys/uio.h> #include <mcheck.h> int main() { mtrace();//開

原创 linux內核內核和進程有關的數據結構

進程ID類型 PID:這是 Linux 中在其命名空間中唯一標識進程而分配給它的一個號碼,稱做進程ID號,簡稱PID。在使用 fork 或 clone 系統調用時產生的進程均會由內核分配一個新的唯一的PID值。 TGID:在一個

原创 JetBrains 系列IDE激活

1.修改hosts文件:  添加下面一行到hosts文件,目的是屏蔽掉Pycharm對激活碼的驗證 [html] view plain copy 0.0.0.0 account.jetbrains.com  

原创 安卓下反調試方案彙總

Android反調試 1.調試端口檢測 讀取/proc/net/tcp,查找IDA遠程調試所用的23946端口,若發現說明進程正在被IDA調試。 void CheckPort23946ByTcp() { FILE* pfi

原创 Operation not possible due to RF-kill

Ubuntu下在圖形界面沒有Enable Wi-Fi的時候在終端使用ifconfig wlan0 up的時候報錯SIOCSIFFLAGS: Operation not possible due to RF-kill使用rfkill lis

原创 python解析wireshak包報錯:Not a pcap capture file (bad magic)

代碼如下: from scapy.all import * def readPacap(path): pcaps=rdpcap(path) for p in pcaps: print p.show()

原创 unix網絡編程---服務器和客戶端上的異常處理

1.被中斷的系統調用: //服務端模型: socket(); bind(); listen(); for(;;) { accept();//服務端阻塞在這裏 if(fork()==0) {

原创 linux下增加一個新的系統調用實現pstree功能

這是我們linux課程的一個作業。 首先得到init進程的task_struct,根據list_for_each可以循環遍歷可以的到其所有的子進程的 list_head,根據list_head使用list_entry可以得到其t

原创 linux進程虛擬地址空間

內存管理模塊是操作系統的心臟;它對應用程序和系統管理非常重要。今後的幾篇文章中,我將着眼於實際的內存問題,但也不避諱其中的技術內幕。由於不少概念是通用的,所以文中大部分例子取自32位x86平臺的Linux和Windows系統。本系列第一篇

原创 ImportError: No module named mpl_toolkits解決方案

一杯茶,一包煙,一個bug調一天 解決方案: 找到mpl_toolkits文件夾,在下邊建一個文件: _init_.py try: import(‘pkg_resources’).declare_namespace(name) exc

原创 二戰圖靈破解恩格瑪機的原理

最近看了一部電影,叫《模仿遊戲》,主要講的就是二戰期間圖靈破解德軍通訊密碼的故事,最後的意義是導致二戰提前兩年結束,拯救了至少1400萬人的生命。電影主要以講故事爲主,後來研究了一下偉人的破解原理,用最簡單的語言科普一下,這裏不需要

原创 一篇文章看懂makefile編寫規則

該篇文章爲轉載,是對原作者系列文章的總彙加上標註。 支持原創,請移步陳浩大神博客:(最原始版本) http://blog.csdn.net/haoel/article/details/2886   我轉自一個博主  基於原博客的整理版本:

原创 設計模式的C++實現之---工廠模式

簡單工廠模式 class SingleCore { public: virtual void Show()=0; }; class SingleCoreA:public SingleCore { public: voi

原创 設計模式的C++實現之---單例模式

懶漢:(非到用的時候才構造出來一個對象) class Sigleton { private: Sigleton() { this->id=0; } static Sigleton *sig