原创 tcp/ip協議入門

TCP/IP詳解學習筆記(1)-基本概念   爲什麼會有TCP/IP協議 在世界上各地,各種各樣的電腦運行着各自不同的操作系統爲大家服務,這些電腦在表達同一種信息的時候所使用的方法是千差萬別。就好像聖經中上帝打亂了各地人的口

原创 安全通信系統--OpenSSL的安裝編譯、證書生成

1.下載編譯並且安裝配置 從OpenSSLd的官網上(www.openssl.org)下載最新版本或者穩定版本的OpenSSL(本次實驗的版本是openssl-1.0.1c),然後解壓壓縮包。加壓之後,由於環境是windows平臺的,

原创 程序員練級之路

建議: 不要亂買書,不要亂追新技術新名詞,基礎的東西經過很長時間積累而且還會在未來至少10年通用。回顧一下歷史,看看歷史上時間線上技術的發展,你才能明白明天會是什麼樣。一定要動手,例子不管多麼簡單,建議至少自己手敲一遍看看是否理解了裏頭

原创 Windows(MFC)消息映射

消息映射是MFC應用程序的運行核心,Windows系統以消息的形式把輸入傳遞給應用程序的窗口過程,窗口通過窗口過程來接收和處理消息,並把控制返回Windows系統。   1. 消息結構    消息是一個將事件和數據結合起來的集

原创 Windows消息機制概述

消息是指什麼?      消息系統對於一個win32程序來說十分重要,它是一個程序運行的動力源泉。一個消息,是系統定義的一個32位的值,他唯一的定義了一個事件,向 Windows發出一個通知,告訴應用程序某個事情發生了。例如,單擊鼠標

原创 CSMA/CD和CSMD/CA

即載波監聽多路訪問/衝突檢測方法     在以太網中,所有的節點共享傳輸介質。如何保證傳輸介質有序、高效地爲許多節點提供傳輸服務,就是以太網的介質訪問控制協議要解決的問題。     一、基礎篇:     是一種爭用型的介質訪問控制協議。

原创 C++輸入數據流用回車符判斷終止

實際問題:很多讀入數據都希望用回車來結束,比如輸入一串double(輸入時用空格隔開),存入到一個vector或數組中,最後用回車結束(關鍵是個數不限,所以不能用固定循環次數來限定它。           咋一看很簡單,要編程突然還沒頭

原创 static_cast, dynamic_cast, reinterpret_cast, const_cast區別比較

static_cast, dynamic_cast, reinterpret_cast, const_cast區別比較 (使用vs2010所帶的編譯器) 轉自 http://www.cnblogs.com/jerry19880126

原创 protocol buffer學習導讀

  Protocol Buffer技術詳解(語言規範)      一、爲什麼使用Protocol Buffer?      在回答這個問題之前,我們還是先給出一個在實際開發中經常會遇到的系統場景。比如:我們的客戶端程序是使用Jav

原创 對快速排序的簡單分析

開篇 在實際的過程中,總需要對一些數據進行排序,在衆多的排序算法中,快速排序是較爲常用的排序算法之一。而網上對於快速排序的中文資料還不是很全。寫這篇博文主要記錄一些自己對於快速排序的瞭解,以及對快速排序的性能的分析。我將在這

原创 線程中CreateEvent和SetEvent及WaitForSingleObject的用法

首先介紹CreateEvent是創建windows事件的意思,作用主要用在判斷線程退出,程鎖定方面. CreateEvent 函功能描述:創建或打開一個命名的或無名的事件對象. EVENT有兩種狀態:發信號,不發信號。  SetEv

原创 PKI體系及常見證書

1.PKI體系 1.1 PKI(Public Key Infrastructure,公鑰基礎架構) PKI是一套以公鑰技術爲基礎、提供安全服務的架構, 由認證機構(CA), 數字證書庫, 密鑰備份和恢復, 證書作廢系統, 應用接口等組

原创 AfxBeginThread和CreateThread具體區別

具體說來,CreateThread這個 函數是windows提供給用戶的 API函數,是SDK的標準形式,在使用的過程中要考慮到進程的同步與互斥的關係,進程間的同步互斥等一系列會導致操作系統死鎖的因素,用起來比較繁瑣一些,初學的人在用到的

原创 虛擬地址、線性地址和物理地址的轉換

一、             虛擬地址 即邏輯地址,是指由程序產生的與段相關的偏移地址部分。例如,你在進行C語言指針編程中,可以讀取指針變量本身值(&操作),實際上這個值就是邏輯地址,它是相對於你當前進程數據段的地址,不和絕對物理地址相干

原创 OpenSSL 加密文件的完整實現代碼

本例是用C語言實現的加密和解密,讀取一個文本文件,對內容加密後寫入到另一個文件中,然後再解密,寫入到第三個文件中。 #include <stdio.h> #include <string.h> #include "openssl/