探索Linux中物理内存与真实内存的奥秘 (物理内存 真实内存linux)

Linux是一款以开放源码为基础的操作系统,它具有稳定、高效的特性,并且可以适用于各种应用场景,非常适合用于服务器端的应用。对于系统的性能优化来说,了解内存的使用情况是非常关键的。而在Linux系统中,存在两种不同的内存概念,分别是物理内存和真实内存。这两种内存的使用情况对系统的表现有着很大的影响,在这篇文章中,我们将。

物理内存

物理内存是指实际存在于计算机硬件中的内存条数量,也可以叫做硬件内存。在Linux系统中,物理内存大小是相对容易获取的,我们可以通过命令free -m来查看物理内存的使用情况,结果如下:

total used free shared buffers cached

Mem: 7972 7890 81 0 308 3316

从结果中可以看出,该系统总的物理内存大小是7972MB,其中使用了7890MB,空闲内存只有81MB了,这意味着系统内存已经很紧张了,需要加强管理。

真实内存

真实内存又称为虚拟内存,是指系统使用了磁盘空间来扩展内存。由于内存的容量有限,当系统内存不足时,它会将一些不常用的内存数据存储到硬盘上,这样就释放出了一部分内存空间,以便应用程序更快地运行。 Linux系统中真实内存的大小可以使用命令cat /proc/meminfo来查看,结果如下:

MemTotal: 7972660 kB

MemFree: 79984 kB

MemAvlable: 3794012 kB

Buffers: 315740 kB

Cached: 3373644 kB

SwapCached: 0 kB

Active: 2721112 kB

Inactive: 3341348 kB

Active(anon): 1873596 kB

Inactive(anon): 947212 kB

Active(file): 846516 kB

Inactive(file): 2394136 kB

从结果中,我们可以看到系统的物理内存是7972660kB,而真实内存则是由内存和swap(虚拟内存)之和组成,即7972660+2150388=10103048kB。而系统使用的真实内存则是7972660-79984=7892676kB。其实就是通过文件系统将部分数据替换到磁盘上,保证内存的使用率更加的高。

如何优化硬盘与内存的使用

在Linux系统中,如果要优化硬盘和内存的使用,那么就需要控制进程的使用和对内存和硬盘的管理。

首先是对进程的控制。当系统内存不足时,系统会根据谁最近被使用过来扔掉一些进程,但是有一些进程是用户手动的,如果一旦它们被扔掉就会造成严重的后果。所以我们可以使用命令renice来限制运行进程的nice值,这样系统就会在其他进程被终止之前扔掉这个进程。例如,我们可以使用renice -n -20 -p 873来将进程873的nice值设置为更高级别-20,优先级更高,这样就保证该进程尽量不被关闭,从而确保系统稳定性。

其次是内存管理。我们可以通过修改/proc/sys/vm/*中的内核变量值来优化内存管理。例如,我们可以使用命令echo 10 > /proc/sys/vm/swappiness将系统对内存和交换空间的使用范围设置为10%,这样可以确保系统能够使用更多的内存而不是交换空间来运行程序。另外,我们还可以使用命令echo 1 > /proc/sys/vm/drop_caches来清理系统中的内存缓存,这样可以释放出一部分内存空间。

最后是硬盘管理。我们可以使用文件系统中的优化工具来清理系统磁盘上的不必要文件以及碎片。例如,使用命令df -h可以查看硬盘的使用情况,使用命令ncdu -x可以查看硬盘上文件的大小和空间使用情况,使用Gparted可以进行分区操作以增加系统磁盘的使用效率。

Linux系统中的内存管理是一项非常重要的任务,通过控制进程的使用和对内存和硬盘的管理,可以使得系统整体的性能更加稳定和高效。在使用Linux系统进行应用开发或系统运行时,我们需要了解并掌握Linux中物理内存和真实内存的使用规律,从而更好地在系统优化方面做出合理的决策。

相关问题拓展阅读:

linux怎么查询服务器器的物理内存

1,Linux下可以在/proc/cpuinfo中看到每个cpu的详细信息。但是对于双核的cpu,在cpuinfo中会看到两个cpu。常常会让人误以为是两个单核的cpu。

其实应该通过Physical Processor ID来区分单核和双核。而Physical Processor ID可以从cpuinfo或者dmesg中找到. flags 如果有 ht 说明支持超线程技术 判断物理CPU的个数可以查看physical id 的值,相同则为同一个物理CPU

2,查看内存大小:

cat /proc/meminfo |grep MemTotal

3,其他一些可以查看详细linux系统信息的命令和方法:

uname -a # 查看内核/操作系统/CPU信息的linux系统信息命令

head -n 1 /etc/issue # 查看操作系统版本,是数字1不是字母L

cat /proc/cpuinfo # 查看CPU信息的linux系统信息命令

hostname # 查看计算机名的linux系统信息命令

lspci -tv# 列出所有PCI设备

lsu -tv# 列出所有USB设备的linux系统信息命令

lod # 列出加载的内核模块

env # 查看环境变量资源

free -m # 查看内存使用量和交换区使用量

df -h # 查看各分区使用情况

du -sh# 查看纯尺昌指定目录的大小

grep MemTotal /proc/meminfo # 查看内存总量

grep MemFree /proc/meminfo # 查看空闲内存量

uptime # 查看系统运行时间、用户数、负载

cat /proc/loadavg # 查看系统负载磁盘和分区

mount | column -t # 查看挂接的分区状态

fdisk -l # 查看所有分区

swapon -s# 查看所有交换分区

hdparm -i /dev/hda # 查看磁盘参数(仅适用于IDE设备)

dmesg | grep IDE# 查看启动时IDE设备检测状况网络

ifconfig # 查看所有网络接口的属性做扒

iptables -L# 查看防火墙设置

route -n # 查看路由表

netstat -lntp# 查看所有监听端口

netstat -antp# 查看所有已经建立的连接

netstat -s# 查看网困蚂络统计信息进程

内存不足判冲时,教你怎么伏乎查看linux内存大小和进程占用内掘厅歼存大小

物理内存 真实内存linux的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于物理内存 真实内存linux,探索Linux中物理内存与真实内存的奥秘,linux怎么查询服务器器的物理内存的信息别忘了在本站进行查找喔。


数据运维技术 » 探索Linux中物理内存与真实内存的奥秘 (物理内存 真实内存linux)