該文件主要是介紹/dev/zero和/dev/null。
1. /dev/zero
正如我們所知道的,這是0的「發源地」。在hp-ux 10.30以後,就可以使用該檔案了。對於hp 11.00和更早的作業系統,這個檔案不是預設就有的,需要手工建立:
#mknod /dev/zero c 3 4 /dev/zero
大部分時候,/dev/zero作如下作用:
a. 清空檔案
#cp /dev/zero bigfile
b. 作dd的時候用
#time dd if=/dev/zero of=6g bs=1024k count=$((6*1024))
通過使用/dev/zero,我們能得到如下的好處:
a. 目標檔案全都是0,那麼在發生crash之類的時候,我們就很容易來檢查檔案是否發生了變化。例如如果沒有任何錯誤,那麼"#xd 6g"這個命令就會簡單得返回三行。
b. 因為/dev/zero是乙個核心裝置檔案,那麼從/dev/zero讀取,不會產生任何的物理i/o,這在做performance troubleshooting的時候就非常重要了。
2. /dev/null
/dev/null是unix系統中很神奇的乙個功能,他是任何資料的墳墓,任何寫入其中的資料都將被忽略掉。這在做i/o測試的時候非常重要。
我們常常要用到如下的測試:
a. #fbackup -f - -i /usr | cat - >/dev/null
測試fbackup的讀取是否正常。
b. #(tar cf /dev/null /usr &);sar -d 1 5
測試tar的performance
c. #(time dd if=bigfile of=/dev/null bs=1024k&);sar -d 1 10
測試讀的performance,而沒有牽涉到任何的物理寫的動作。
/dev/null也給程式開發帶來很多好處,一些不需要的資訊,都被丟棄到/dev/null。因此,如果/dev/null檔案被刪除了,或者是/dev/null檔案的許可權改變了,那麼一些工具將不能正常的工作。
3. sparse檔案
sparse檔案充滿了「空洞」,它僅僅占用很少的儲存空間。例如,它用8k來代表6gb的sparse檔案。
#echo | dd of=6g bs=1024k oseek=$((6*1024))
#ll 6g
-rw-rw-rw- 1 root sys 6442450945 may 31 15:13 6g
#du -ks 6g
8 6g
這個檔案在你要測試是否有大檔案限制的時候,非常有用,它給你節省了很多i/o和時間。
#time fbackup -f - -i 6g | cat - >/dev/null
undefined 和 null 區別及用法
null是乙個表示 無 的物件,轉為數值時為0 表示乙個值被定義了,定義為 空值 undefined是乙個表示 無 的原始值,轉為數值時為nan 表示根本不存在定義 var a null number a 0 var b undefined number b nan典型用法 1 作為函式的引數,表示...
c語言NULL和0區別及NULL詳解
首先,我們測試乙個程式 includeint main 輸出,單步除錯可以看出執行int p null,p的值為0x00000000,可以看出,null在實際底層呼叫中就是0 在c語言中,null和0的值都是一樣的,但是為了目的和用途及容易識別的原因,null用於指標和物件,0用於數值 對於字串的結...
SQL語句查詢是否為空 null及null
a b c d 980515 精頂企業 簡家豪 null 980514 全欣木業 null 123 980514 迅億科技股份 簡逢浚 null 980515 聖越國際企業 null 111 表結構如上所示,要查詢c列為空的記錄的 語句不是select from table where c null...