SWAP交換分割槽(虛擬記憶體)

2021-08-20 02:41:34 字數 3616 閱讀 2512

swap(交換)分割槽是一種通過在硬碟中預先劃分一定的空間,然後將把記憶體中暫時不常用的資料臨時存放到硬碟中,以便騰出物理記憶體空間讓更活躍的程式服務來使用的技術,其設計目的是為了解決真實物理記憶體不足的問題。但由於交換分割槽畢竟是通過硬碟裝置讀寫資料的,速度肯定要比物理記憶體慢,所以只有當真實的物理記憶體耗盡後才會呼叫交換分割槽的資源。

交換分割槽的建立過程與前文講到的掛載並使用儲存裝置的過程非常相似。在對/dev/sdb儲存裝置進行分割槽操作前,有必要先說一下交換分割槽的劃分建議:在生產環境中,交換分割槽的大小一般為真實物理記憶體的1.5~2倍,為了更明顯地感受交換分割槽空間的變化,這裡取出乙個大小為5gb的主分割槽作為交換分割槽資源。在分割槽建立完畢後儲存並退出即可:

[root@lynchj ~]# fdisk /dev/sdb

welcome to fdisk (util-linux 2.23.2).

changes will remain in memory only, until you decide to

write them.

be careful before using the write command.

device does not contain a recognized partition table

building a new dos disklabel with disk identifier 0xb3d27ce1.

command (m for help): n

partition type:

p primary (1 primary, 0 extended, 3 free)

e extendedselect (default p): p

partition number (2-4, default

2):first sector (4196352-41943039, default

4196352):

using

default value 4196352

last sector, +sectors or +size (4196352-41943039, default

41943039): +5g

partition 2

oftype linux and

of size 5 gib is

setcommand (m for help): p

disk /dev/sdb: 21.5 gb, 21474836480 bytes, 41943040 sectors

units = sectors of

1 * 512 = 512 bytes

sector size (logical/physical): 512 bytes / 512 bytes

i/o size (minimum/optimal): 512 bytes / 512 bytes

disk label type: dos

disk identifier: 0xb0ced57f

device boot start end blocks id system

/dev/sdb1 2048

4196351

2097152

83 linux

/dev/sdb2 4196352

14682111

5242880

83 linux

command (m for help): w

the partition table has been altered!

calling ioctl() to re-read partition table.

warning: re-reading the partition table failed with error 16: device or resource busy.

the kernel still uses the old table. the new table will be used at

the next reboot or after you run partprobe(8) or kpartx(8)

syncing disks.

使用swap 分割槽專用的格式化命令mkswap,對新建的主分割槽進行格式化操作:

[root@lynchj ~]# mkswap /dev/sdb2

setting up swapspace version 1, size = 5242876 kib

no label, uuid=2972f9cb-17f0-4113-84c6-c64b97c40c75

使用swapon 命令把準備好的swap 分割槽裝置正式掛載到系統中。我們可以使用free -m命令檢視交換分割槽的大小變化(由2047mb 增加到7167mb):

[root@lynchj ~]# free -m

total used free shared buffers cached

mem:

1483

78270190

254-/+ buffers/cache

:526

957swap

:2047

02047

[root@lynchj ~]# swapon /dev/sdb2

[root@lynchj ~]# free -m

total used free shared buffers cached

mem:

1483

78569790

254-/+ buffers/cache

:530

953swap

:7167

07167

[root@lynchj ~]# vim /etc/fstab

## /etc/fstab

# created by anaconda on wed may 4 19:26:23 2017

## accessible filesystems, by reference, are maintained under '/dev/disk'

# see man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info#1

uuid=812b1f7c-8b5b-43da-8c06-b9999e0fe48b /boot xfs defaults 120

/dev/cdrom /media/cdrom iso9660 defaults 0

0/dev/sdb1 /newfs xfs defaults 0

0/dev/sdb2 swap swap defaults 0

0

虛擬記憶體swap

虛擬記憶體 在磁碟上的一片空間,僅作為物理記憶體的補充使用.linux一般不使用虛擬內 存.虛擬記憶體資訊 proc swaps 設定虛擬記憶體 方法一 1.建立新分割槽 2.將新分割槽的system id改為82 最後儲存退出.3.使用命令mkswap device格式化剛剛建立的新分割槽 例 m...

linux系統新增swap 虛擬記憶體 分割槽

在實際的生產環境中,實際的物理記憶體我們經常會覺得不夠用,增加物理記憶體的成本又比較高,一種折中方案就出來了,使用硬碟的一部分空間來做swap windows 下叫虛擬記憶體 將系統內非活動記憶體換頁到 swap,以提高系統可用記憶體。當然在一些特殊應用 elasticsearch 的話是建議不要使...

虛擬記憶體和swap分割槽的關係

首先,這兩個概念分別對應windows和linux,即 windows 虛擬記憶體 linux swap分割槽 windows即使物理記憶體沒有用完也會去用到虛擬記憶體,而linux不一樣 linux只有當物理記憶體用完的時候才會去動用虛擬記憶體 即swap分割槽 swap類似於windows的虛擬...