Time of Update: 2018-12-04
一次移植,將windows下的某個程式移植到linux下,在運行測試階段,發現存在部分字元丟失的問題,尋找原因,發現原來windows下的_snprintf與linux下的snprintf 存在一定的差異。 linux下 sprintf會自動在後面加'/0',同時copy的長度也包含了‘/0’; snprintf的man中有如下解釋: The functions snprintf() and vsnprintf() do not write more
Time of Update: 2018-12-04
轉自:http://blog.csdn.net/loef/archive/2004/11/02/163405.aspx 為推動國內 Linux 進階研究的推廣,AKA 特意整理了一些 Linux 核心研究的優秀書籍列表。這些書籍列表均來自 AKA Linux系列講座的一些主講老師和一些核心方面有研究的朋友的真誠推薦,並無任何商業動機,是完全根據他們自己以前研究的心得總結出來的,希望這些書籍
Time of Update: 2018-12-04
轉自: http://blog.csdn.net/ligt0610/article/details/72659031、用top命令找到CPU利用率最高的進程root@XXX:/# toptop - 09:36:26 up 22 min, 2 users, load average: 6.02, 5.10, 3.58Tasks: 43 total, 1 running, 42 sleeping, 0 stopped, 0 zombieCpu(s): 1.0%us, 12.6%sy, 0.0
Time of Update: 2018-12-04
轉自:http://www.cppblog.com/kongque/archive/2011/03/07/141262.aspxcore dump的概念:A core dump is the recorded state of the working memory of a computer program at a specific time, generally when the program has terminated abnormally (crashed). In
Time of Update: 2018-12-04
在GNU系統中,malloc或realloc返回的記憶體塊地址都是8的倍數(如果是64位系統,則為16的倍數)。如果你需要更大的粒度,請使用memalign或valloc。這些函數在標頭檔“stdlib.h”中聲明。 在GNU庫中,可以使用函數free釋放memalign和valloc返回的記憶體塊。但無法在BSD系統中使用,而且BSD系統中並未提供釋放這樣的記憶體塊的途徑。 函數:void * memalign (size_t boundary, size_t size)
Time of Update: 2018-12-04
1、getenv 標頭檔 #include<stdlib.h>函數原型 char * getenv(const char *name);函數說明 getenv()用來取得參數name環境變數的內容。參數name為環境變數的名稱,如果該變數存在則會返回指向該內容的指標。環境變數的格式為name=value。傳回值 執行成功則返回指向該內容的指標,找不到符合的環境變數名稱則返回NULL。舉例:#include<stdlib.h>int mian(){ char
Time of Update: 2018-12-04
對於主進程 fork()返回建立的子進程ID, 子進程fork()返回0 http://blog.chinaunix.net/u1/53053/showart_425189.html進程配置有唯一的進程式控制制塊PCB,由proc結構和usr結構組成。下面依次介紹進程相關的系統調用:1:fork()函數 建立一個子進程 #include<sys/types.h> /* 提供類型pid_t的定義 */#include<unistd.h> /*
Time of Update: 2018-12-04
[轉載]Linux核心啟動過程(2.6.23)---之一2010/03/19 02:05 P.M.核心版本號碼:2.6.23當PC按下電源,CPU加電後,自動從0xFFFF0處開始執行代碼,這個地址位於BIOS中。接著BIOS開始一系列系統檢測,並在記憶體物理地址0處初始化中斷向量,供Linux核心啟動過程中進行調用。此後,它將啟動裝置的第一個扇區(磁碟開機磁區,512Bytes)讀入記憶體絕對位址0x7C00處,並跳到這個地方開始執行(arch/i386/boot/header.s)。注意,
Time of Update: 2018-12-04
sleep 使用許可權 : 所有使用者 使用方式 : sleep [--help] [--version] number[smhd] 說明 : sleep 可以用來將目前動作延遲一段時間 參數說明 : –help : 顯示輔助訊息 –version : 顯示版本編號 number : 時間長度,後面可接 s、m、h 或 d 其中 s 為秒,m 為 分鐘,h 為小時,d 為日數 例子 : 顯示目前時間後延遲 1 分鐘,之後再次顯示時間 : date;
Time of Update: 2018-12-04
作業系統:Redhat Linux 51、安裝Tomcat解壓縮apache-tomcat-6.0.29.zip到任意一個有許可權的目錄即可,如/home/its/apache-tomcat-6.0.29。 2、下載安裝JDK(jdk1.6.0_24-linux-i586.bin ):下載後執行./jdk1.6.0_24-linux-i586.bin命令安裝,假設安裝後路徑為/home/its/jdk1.6.0_24設定環境變數:vi
Time of Update: 2018-12-04
Time of Update: 2018-12-04
查看一堆檔案中是否有兩個檔案是相同的#!/bin/bash. /etc/profilecd /home/sunshine945/datafilename=(ls url.*)filenumber=${#filename[@]}let "filenumber -= 1"while [ "$filenumber" -gt 0 ]do j=0 while [ "$j" -lt
Time of Update: 2018-12-04
雖然以前在linux上做過開發,但都是直接telnet到公用機上 進行的,因此我對linux系統並不熟悉。考慮到不久又將在linux上做開發,我便決定自己安裝一個linux系統玩玩。Linux是一種作業系統,但卻擁有眾多發行版,比如RedHat、Debian、SuSe、Fedora、Gentoo、Slackware、Ubuntu等,經過詢問同事和上網調查,我決定選用Ubuntu,因為它安裝升級方便並且對中文支援不錯。昨天,我瀏覽了一晚上的中文ubuntu官方網站(http://www.ubunt
Time of Update: 2018-12-04
這裡所說的開發環境主要是指在windows上使用GCC(GNU Compiler Collection)進行開發,根據需求的不同,我們有以下幾種選擇:1. DevC++這是一款基於MingW的整合式開發環境(IDE),適合於C++初學者,可以利用它編寫符合標準C++(98)規範的代碼,體驗GCC的一些特性。DevC++非常小巧,由Bloodshed Software開發,屬於Free Software。DevC++的最新版本為:DevC++ 5.0 beta9.2(4.9.9.2) with
Time of Update: 2018-12-04
RADIUS主要用於對遠程撥入的使用者進行授權和認證。它可以僅使用單一的“資料庫”對使用者進行認證(效驗使用者名稱和口令)。它主要針對的遠程登入類型有:SLIP、PPP、telnet和rlogin等。 其主要特徵有: 1. 客戶機/伺服器(C/S)模式
Time of Update: 2018-12-04
文章目錄 1、 引言2、 什麼是Socket3、 Socket的三種類型4、 利用通訊端發送資料5、 Linux中Socket的資料結構6、 網路位元組順序及其轉換函式7、 IP地址轉換8、 位元組處理函數9、 基本通訊端函數
Time of Update: 2018-12-04
從別處copy,原文找不到了什麼是Socket Socket介面是TCP/IP網路的API,Socket介面定義了許多函數或常式,程式員可以用它們來開發TCP/IP網路上的應用程式。要學Internet上的TCP/IP網路編程,必須理解Socket介面。
Time of Update: 2018-12-04
文章目錄 1、將檔案checkout到本地目錄2、往版本庫中添加新的檔案3、將改動的檔案提交到版本庫4、加鎖/解鎖5、更新到某個版本6、查看檔案或者目錄狀態7、刪除檔案8、查看日誌9、查看檔案詳細資料10、比較差異11、將兩個版本之間的差異合并到當前檔案12、SVN 協助 文章來源:http://www.jb51.net/os/RedHat/2461.html1、將檔案checkout到本地目錄svn checkout
Time of Update: 2018-12-04
非原創,從百度空間copy過來的。select系統調用是用來讓我們的程式監視多個檔案描述符(file descriptor)的狀態變化的。程式會停在select這裡等待,直到被監視的檔案描述符有某一個或多個發生了狀態改變。select函數原型如下:int select(int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout);函
Time of Update: 2018-12-04
管道:當從一個進程串連資料流到另一個進程時,使用術語管道(pipe)。#i nclude <unistd.h>int pipe(int filedes[2]);