利用記憶體對應檔處理大檔案(修改程式版)

 ----原來作者的程式有些問題,現在文章中的程式已經修改正確---VC中用記憶體對應檔處理大檔案 摘要:本文通過記憶體對應檔的使用來對大尺寸檔案進行訪問操作,同時也對記憶體對應檔的相關概念和一般編程過程作了較為詳細的介紹。  關鍵詞:記憶體對應檔;大檔案處理;分配粒度  引言  檔案操作是應用程式最為基本的功能之一,Win32 API和MFC均提供有支援檔案處理的函數和類,常用的有Win32

nginx源碼分析(19)-方法(3)

 nginx的三個部分:核心、事件模型/並行存取模型、應用模組,之前已經詳細了分析了核心和事件模型/並行存取模型兩個部分,也詳細解釋了nginx的模組化設計。之前的分析採用了平鋪直敘的方式,對源碼中主要函數進行了流程化的分解和剖析,經過這種分析方式,對nginx的認識越來越全面和深入,相關的領域知識和背景知識也越來越豐富。但是這種分析方法比較直白,分析不夠深入和透徹,缺少總結和對比,只是闡述如何做,沒有闡述為什麼那樣做,有沒有更好的方式等等更深入的話題。接下來先不去分析http和mail應用模組

nginx源碼分析(6)-模組化(1)

源碼的src/core目錄下實現了不少精巧的資料結構,最重要的有:記憶體池ngx_pool_t、緩衝區ngx_buf_t、緩衝區鏈ngx_chain_t、字串ngx_str_t、數組ngx_array_t、鏈表ngx_list_t、隊列ngx_queue_t、基於hash的關聯陣列ngx_hash_t、紅/黑樹狀結構ngx_rbtree_t、radix樹ngx_radix_tree_t等,這些資料結構頻繁出現在源碼中,而且這些結構之間也是彼此配合,聯絡緊密,很難孤立某一個出來。每個資料結構都提供

nginx源碼分析(5)-方法(2)

利用nginx

nginx源碼分析(7)-模組化(2)

分析nginx的模組化架構的實現方式,就要從ngx_module_t結構體入手。ngx_module_t的聲明在src/core/ngx_conf_file.h中:#define NGX_MODULE_V1          0, 0, 0, 0, 0, 0, 1#define NGX_MODULE_V1_PADDING  0, 0, 0, 0, 0, 0, 0, 0struct ngx_module_s {    ngx_uint_t            ctx_index;    ngx_

url逸出字元

url逸出字元原理如果表單的action為list.jsf?act=go&state=5則提交時通過request.getParameter可以分別取得act和state的值。如果你的本意是act='go&state=5'這個字串,那麼為了在服務端拿到act的準確值,你必須對&進行轉義[預備知識]      

函數: waitpid – 等待子進程中斷或結束

waitpid - 等待子進程中斷或結束相關函數 wait,fork表標頭檔 #include<sys/types.h>#include<sys/wait.h>定義函數 pid_t waitpid(pid_t pid,int * status,int options);函數說明

簡與美(7)

腦中的數學是抽象的,手中的數學是簡單的。 我們已經介紹了隱馬模型,並且用動態規劃思想解決了隱馬模型提出的兩個問題。尤其是第二個問題,和我們接下來要討論的詞性標註有直接關係。 在NPL領域,有一個稱為N元模型的語言統計模型,它對應N-1階馬爾科夫模型。 N元模型可用於計算語句W=w1,w2,..,wn的先驗機率P(W),在這裡用變數W代表一個文本中順序排列的n個詞語。根據機率的乘法規則,P(W)可以分解為:P(W)=P(w1)P(w2|w1)P(w3|w1,w2) .. P(wn|w1,w2,..

Google SPDY介紹

本文主要是參考Google SPDY項目首頁的一些文檔總結而來,目的整體上介紹SPDY協議的定義為主。後續,我將寫一系列的文章分析SPDY的一些項目(如:Nginx),SPDY的效能測試以及如何部署SPDY到實際生產應用。一、HTTP協議存在的一些主要問題1、一個串連一個請求。瀏覽器和web server之間都是以短串連方式互動,一個串連只服務一次請求,對於一個需要載入多個資源的頁面來說,將會帶來很高的延遲。2、只能由用戶端發起請求,伺服器完成響應。伺服器不能主動的將一些必須的資源推送給用戶端。

函數遞迴與棧的關係

首先通過反組譯碼語言,我們來瞭解一下最簡單的遞迴函式與棧之間的關係。如何獲得反組譯碼語言,在visual studio 2008中,在debug環境下,在debug/windows/disassembly中可以查看反組譯碼之後的語言。現在我們看一下階乘n!的實現其C語言實現代碼如下#include <stdio.h>int factorial(int n);int main(void){int fact;fact = factorial(4);printf("%d\n",fact);

建立記憶體共用的幾個步驟:

建立共用記憶體分以下幾個步驟:    1.定義共用記憶體的結構體;    2.利用CreateFileMapping函數建立共用記憶體;    3.定義指向共用記憶體結構體的指標pShareMem,利用MapViewOfFile函數將剛剛建立的記憶體映射到定義指標pShareMem。    讀寫共用記憶體分以下幾個步驟:    1.定義共用記憶體的結構體;    2.用OpenFileMapping函數開啟上面建立的共用記憶體區,該函數返回共用記憶體的地址;   

grep、egrep、fgrep命令

一、grep、egrep、fgrep命令  本文中主要介紹了linux系統下grep egrep fgrep命令和Regex的基本參數和使用格式、方法。(注釋:文中fg代表例子,)1.1、基本定義:        grep(global search regular RE ) and print out the line,全面搜尋Regex並把行列印出來)是一種強大的文本搜尋工具,它只能使用基本的Regex來搜尋文本,並把匹配的行列印出來。   

Unix檔案系統

        Unix檔案系統有多種實現,下文主要討論基於BSD的UFS(UNIX File System)。        一般硬碟被分為多個分區,每個分區可以包含一個檔案系統。檔案系統的結構一般如下:自舉塊 | 超級塊 | 柱面組0 | 柱面組1 | …… | 柱面組n其中,柱面組i的結構如下:超級塊副本 | 配置資訊 | i-node圖 | 塊位元影像 | i-node塊 |

單點失敗

    在電子商務系統中,單點失敗(any point of

字串中一個常出錯的地方。

char StrDst[20] = "hello";   相當於  char StrDst[20];  strcpy(StrDst, "hello");  在棧上分配一個數組StrDst,將常量字串"hello"的內容複寫給StrDst數組  char *StrDst = "hello";   在棧上分配了一個指標Schar * StrCat(char *StrDst,char *StrSrc);#include<stdio.h>int main(void){char StrDst[

開源一個小程式碼程式庫

在google 

nginx源碼分析(18)-基礎設施(1)

 從代碼的結構看,nginx可以分為三個部分:基礎設施、並行存取模型和應用模組。前面已經介紹了nginx的模組化設計,剖析了nginx的並行存取模型,並行存取模型主要是核心類別模組和event類別模組實現的。應用模組主要是指http類別模組和mail類別模組,它們實現了nginx作為web伺服器、反向 Proxy伺服器和郵件Proxy

簡與美(1)

最近在做項目的時候經常使用數學,把很多複雜的問題化簡成很簡單的模型,而這使得實現相當美觀,為了激勵自己繼續鑽研下去,也希望總結一些得失,我打算從今天開始陸續寫一個《簡與美》系列。 腦中的數學是抽象的,手中的數學是簡單的。 上周做一個分詞器。一個普通的分詞器,對中文和英文進行自動切分,並標註詞性。主要的技術就兩點,詞典的構造和切詞模型的訓練。 詞典的構造要基於分詞器對詞典的要求。一般分詞器對詞典主要是查詢操作,有三種查詢操作,第一種是給定一個詞語w,查詢w是否是詞;第二種是給定一個位置,查詢從該位

nginx源碼分析(3)- 自動指令碼

nginx的自動指令碼指的是configure指令碼程式和auto子目錄下面的指令碼程式。自動指令碼完成兩件事情,其一是檢查環境,其二是組建檔案。產生的檔案有兩類,一類是編譯代碼需要的Makefile檔案,一類是根據環境檢查結果產生的c代碼。產生的Makefile很乾淨,也很容易閱讀。產生的c代碼有三個檔案,ngx_auto_config.h是根據環境檢查的結果聲明的一些宏定義,這個標頭檔被include進ngx_core.h中,所以會被所有的源碼引用到,這確保了源碼是可移植的;ngx_auto

ACM經典書籍推薦~~

    學電腦的人是幸福的,因為在這個領域中有如此多的通俗易懂(相對來說)的經典好書,你需要做的只是堅持把它們一本一本讀下去而已。在這裡列出一些我看過或者準備看的演算法書籍,以供參考。     1. CLRS 演算法導論演算法百科全書,只做了前面十幾章的習題,便感覺受益無窮。   2. Algorithms 演算法概論短小精悍,別據一格,准經典之作。一個壞訊息: 同演算法導論,該書沒有習題答案。好訊息:習題很經典,難度也適中,只需花點點時間自己也都能做出來。另有中文版名《演算法概論》,我沒看過,

總頁數: 61357 1 .... 19327 19328 19329 19330 19331 .... 61357 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.