強烈推薦學習 Linux 源碼從 0.11 版開始入手,原因嘛,見下面推薦兩本 Linux 0.11 源碼分析書籍前言。《Linux 內核完全注釋》 http://www.linuxidc.com/Linux/2009-12/23225.
Stack smashing是堆棧緩沖區溢出(stack buffer overflow)的一個時髦稱謂。它表示利用代碼中存在的緩沖區溢出bug而發起的攻擊。在早期,這完全是程序員的責任,他們要確保代碼中不存在緩沖區溢出的問題。但是隨著時間推移,技術
在研究如何在嵌入式Linux上搭建Python運行環境,因為有了Python之後,很多工具例如GoAgent之類的東西就可以用上場了。昨天成功編譯了Python2.6,參考了網上很多方法,但最後無果而終,現在總結了一套自己的編譯方法,基本上可以秒殺所
這個題很坑,有幾種情況要測試1.如果有一個乘數為空,則返回-12,如果結果為0,返回的字符串不能為空,要為“0”;#include oj.h/******************************************
int *p() 定義一個函數,該函數返回一個指向整型元素的指針變量int (*p)() 指向函數的指針,該函數返回一個整型值 在C++ primer 238頁中出現的int(*ff(int))(int*,int) ,解釋為:ff(int)
一、概述MapReduce框架對處理結果的輸出會根據key值進行默認的排序,這個默認排序可以滿足一部分需求,但是也是十分有限的。在我們實際的需求當中,往往有要對reduce輸出結果進行二次排序的需求。對於二次排序的實現,網絡上已經有很多人分享過了,但
Java猶如宮澤賢治的《不畏風雨》中出現的、性格木讷的女孩子。從小就由於遲鈍和大食量等特征被別人當作笨蛋,從小學入學開始進入田徑部、堅持跑步,在中長跑中經常取得好成績,給人以活潑的印象。是十分努力的女孩子。她的家境並不算好。父親Sun是有才能的藝術家
前言:最近一直在分析Hadoop的RPC機制。在hadoop中,DataNode和NameNode之間的控制信息的交流是通過RPC機制完成的,采用的是動態代理和java NIO的方式。DataNode端是通過獲得NameNode的代理,通過該代理和N
最近一段時間在搞攝像頭的采集和傳輸。采集通過OpenCV自帶的函數庫,不用自己編寫V4L2,省去了很多事情。主要工作就是在視頻的傳輸了。主要思路是:將采集的一幀視頻圖像壓縮成jpg格式的圖片,這樣進行過壓縮的數據量大大減少。然後通過socket的UD
今天看STL源碼剖析,對於迭代器不同類型的重載函數的調用用到了函數占位符,之前沒注意過,以後函數重載設計時可以利用,特記錄下來。代碼只是簡單的測試,沒有特別意義:#include <iostream>using namespace std
我用的是合眾達的dm6446.一 首先安裝CMAKE下載cmake 然後解壓縮,進入解壓縮後的目錄,依次執行# ./bootstrap# make && make install安裝過程需要幾分鐘。二 構建交叉編譯的CMa
一般在調試打印Debug信息的時候, 需要可變參數的宏. 從C99開始可以使編譯器標准支持可變參數宏(variadic macros), 另外GCC也支持可變參數宏, 但是兩種在細節上可能存在區別.1. __VA_ARGS____VA_ARGS__
引言: 通過多線程的面試題目分析,來深入理解Java線程的狀態轉變過程。最近在學習Java多線程設計的時候,在網上看到一個面試題目的討論,雖然樓主所說有些道理,但感覺還是有些問題,故此在和同事討論以後還是有了若干收獲,在此略作總結。首先,來看看這個面
什麼是二叉搜索樹二叉搜索樹(Binary Search Tree),是最基礎,且相對簡單的一種數據結構,支持Insert,Delete,Search,Min,Max,Successor,Predecessor等操作。最大的特點是每一個節點有不超過兩個
對於程序員來說,最痛苦的就是內存的申請與釋放。內存洩露也是程序中經常遇到的問題。為了更好的定位內存洩露問題,我們有必要熟悉一些內存洩露的檢測工具。今天主要找到了以下四個內存檢測工具,使用起來都比較方便。valgrind安裝valgrind,執行下列程
1.python實現堆棧,可先將Stack類寫入文件stack.py,在其它程序文件中使用from stack import Stack,然後就可以使用堆棧了。stack.py的程序如下:class Stack(): def __init_
Java項目中字符串加密技術源碼:import java.security.MessageDigest;public class MD5 { private static final String[] hexDigits =