Time of Update: 2018-12-05
1:socket編程中採用的協議族主要有兩種: 1>:網路通訊協定族(形式如:AF_INET, PF_INET等) 2>:本地unix域格式的協議族(形式如:AF_LOCAL, AF_UNIX等) 註:協議族的選擇體現在 int socket(int domain, inst type, int protocol)函數的第一個參數處。2:這兩種協議族的區別:
Time of Update: 2018-12-05
1:INTEL and AT&T彙編的文法區別, INTEL彙編目標運算元在原運算元的左邊,而後者目標運算元在原運算元的右邊2:AT&T彙編的立即數前要加$, INTEL測不需要3:gcc內嵌彙編 “__asm__”表示後面的代碼會內嵌彙編。asm是__asm__的別名4:ebp——基地址 esp——堆棧指標 edi——目的指標 eax——通用寄存器 ptr——指標5:leal——表示將某個地址的資料讀入到寄存器中6:
Time of Update: 2018-12-05
linux多線程設計 1
Time of Update: 2018-12-05
GDB調試精粹及使用執行個體來源:不詳 (2006-07-14 11:18:05)一:列檔案清單 1. List (gdb) list line1,line2 二:執行程式 要想運行準備調試的程式,可使用run命令,在它後面可以跟隨發給該程式的任何參數,包括標準輸入和標準輸出說明符(<和>)和外殼萬用字元(*、?、[、])在內。 如果你使用不帶參數的run命令,gdb就再次使用你給予前一條run命令的參數,這是很有用的。 利用set args
Time of Update: 2018-12-05
在 struct mntent 中的成員與 /etc/fstab 檔案中的條目是直接對應的。它的內容如下:struct mntent { char *mnt_fsname; /* 掛載的檔案系統的名字 */ char *mnt_dir; /* 掛載點 */ char *mnt_type; /* 檔案系統類型:ufs、nfs 等 */ char *mnt_opts; /* 選項,以逗號為分隔字元 */
Time of Update: 2018-12-05
原因:控制代碼被用完了出現這種情況有會是以下幾種情況導致的: 1:檔案控制代碼未關閉 包括普通檔案、socket描述符、資料庫連接等 2:所有控制代碼雖然釋放了,但是沒有人工釋放,在記憶體回收中積累著,在某一時刻爆發出錯。 3:在fclose(fp)之前,作業系統並未將緩衝區中的檔案內容寫入磁碟,導致寫多次後開啟的檔案就多了解決辦法: 1:通過ulimit 來修改 file opens選項的值(只使用當前會話) 2:echo "8192" >
Time of Update: 2018-12-05
標頭檔目錄中總共有32個.h標頭檔。其中主目錄下有13個,asm子目錄中有4個,linux子目錄中有10個,sys子目錄中有5個。這些標頭檔各自的功能如下,具體的作用和所包含的資訊請參見第14章。<a.out.h>:a.out標頭檔,定義了a.out執行檔案格式和一些宏。<const.h>:常數符號標頭檔,目前僅定義了i節點中i_mode欄位的各標誌位。<ctype.h>:字元類型標頭檔,定義了一些有關字元類型判斷和轉換的宏。<errno.h>:錯
Time of Update: 2018-12-05
文章目錄 linux下釋放cache記憶體 linux下釋放cache記憶體細心的朋友會注意到,當你在linux下頻繁存取檔案後,實體記憶體會很快被用光,當程式結束後,記憶體不會被正常釋放,而是一直作為caching.這個問題,貌似有不少人在問,不過都沒有看到有什麼很好解決的辦法.那麼我來談談這個問題.先來說說free命令[root@server ~]# free -m total used
Time of Update: 2018-12-05
寫在前面:最近幾天一直做nginx的負載平衡,折騰了將近一周,在網上查了很多資料,終於在今天將一系列的流程及功能跑通。在學習的過程中,發現網上大多數資料都寫的很籠統,或者就是寫的讓新手迷迷糊糊,似懂非懂,很多的配置參數等都不是很明白,配置的時候也就造成很多地方不確切。現在我對我這幾天的配置學習予以總結,從下載到安裝、環境的搭建,以及負載平衡的配置,參數的詳細解釋,以及memcached的session共用,都會一一介紹,並保證所用的代碼和配置都經過本人的測試並實現功能,希望給予對亟需解決linu
Time of Update: 2018-12-05
文章目錄 樣本一 遠程伺服器無法訪問的情形樣本二 網域名稱無法解析的情形樣本三 目標主機沒有開啟telnet服務的情形樣本四 怎樣啟動telnet服務?(不推薦開放telnet服務,要使用更安全的ssh服務)樣本五 正常telnet的情形樣本六 使用telnet來測試web伺服器樣本七 進入telnet命令模式
Time of Update: 2018-12-05
一、http_load程式非常小,解壓後也不到100Khttp_load以並行複用的方式運行,用以測試web伺服器的輸送量與負載。但是它不同於大多數壓力測試工具,它可以以一個單一的進程運行,一般不會把客戶機搞死。還可以測試HTTPS類的網站請求。:http://soft.vpser.net/test/http_load/http_load-12mar2006.tar.gz安裝#tar zxvf http_load-12mar2006.tar.gz#cd
Time of Update: 2018-12-05
我的測試機真的是有很多問題。之前safe無法安裝,staf安裝也不成功。現在發現man也不能用……原來是man manfgets: No such file or directoryError reading man page /usr/share/man/en/man1/man.1.gzNo manual entry for man 現在是#man manError executing formatting or display command.System command (cd
Time of Update: 2018-12-05
0.參考教材《Linux原理與應用》 鄭鵬,曾平,丁建利主編;武漢大學出版社1.Linux命令基礎1.1 Linux命令的一般格式Linux命令的一般格式如下: 命令名 [選項] [參數1] [參數2]其中選項以“-”開始,多個選項可以用一個“-”連起來。1.2 線上說明命令 man--顯示具有一定格式的線上手冊man 命令對於新手和老手來說都是有用的工具。編程人員可以用此命令參看c函數。1.3
Time of Update: 2018-12-05
http://www.cnitblog.com/puppypyb/archive/2008/08/20/48172.aspxlinux核心container_of宏定義分析一、#define offsetof(TYPE, MEMBER) ((size_t) & ((TYPE *)0)->MEMBER )1. ( (TYPE *)0 ) 將零轉型為TYPE類型指標;2. ((TYPE *)0)->MEMBER 訪問結構中的資料成員;3. &( ( (TYPE *)0 )
Time of Update: 2018-12-05
最近做項目時用到的--valgrind.能檢測 1)使用未初始化的記憶體 2)讀/寫已經被釋放的記憶體 3)讀/寫記憶體越界 4)讀/寫不恰當的記憶體棧空間 5)記憶體流失 6)使用malloc/new/new[]和free/delete/delete[]不匹配。最簡單的使用: valgrind --leak=check=full
Time of Update: 2018-12-05
Linux下網卡命名規律:eth0,eth1。第一塊乙太網路卡,第二塊。lo為環回介面,它的IP地址固定為127.0.0.1,掩碼8位。它代表你的機器本身。 1、ifconfig是查看網卡的資訊。 ifconfig [Interface] Interface是可選項,如果不加此項,則顯示系統中所有網卡的資訊。如果添加此選項則顯示所指定的網卡資訊 例如:ifconfig eth0 eth0 Link encap:Ethernet HWaddr
Time of Update: 2018-12-05
由於在windows下預設是gb編碼,而我的vim預設是utf-8(gedit預設也是utf-8),所以開啟會成亂碼。修改了一下設定檔,使vi支援gb編碼就好了。$vi ~/.vimrclet &termencoding=&encodingset
Time of Update: 2018-12-05
最近做android iptv項目在linux下,熟悉下其平台下的版本管理工具,小記一點:1. 用 sudo apt-get install git -core 來安裝GIT 程式。2. 用 git clone git://git.kernel.org/pub/scm/git/git.git 來更新版本庫3. 配置 gita. 用 git config --global user.name “tiger”( 輸入使用者名稱)b.git config –global user.email
Time of Update: 2018-12-05
今天又學了點,記一下:1:建立git伺服器倉庫,前提先要安裝git1)安裝openssh-server (ssh:security shell);sudo apt-get install openssh-server2)建立倉庫目錄,並且初始化倉庫mkdri server cd server git init3)添加檔案到倉庫,並提交到倉庫mkdir projectcd projecttouch pro.javagit add pro.javagit commit pro.java
Time of Update: 2018-12-05
1、MVC的各個部分都有那些技術來實現?如何??答:MVC是Model-View-Controller的簡寫。"Model" 代表的是應用的商務邏輯(通過JavaBean,EJB組件實現), "View" 是應用的表示面(由JSP頁面產生),"Controller" 是提供應用的處理過程式控制制(一般是一個Servlet),通過這種設計模型把應用邏輯,處理過程和顯示邏輯分成不同的組件實現。這些組件可以進行互動和重用。2、J2EE是什嗎?