1896_Linux中free命令小结

1896_Linux中free命令小结

全部学习汇总: little_bits_of_linux: 一星半点的Linux经验 (gitee.com)

查看Linux中存储的使用情况,我经常使用htop,毕竟这个命令提供的信息是十分直观的。我现在常用的一个小主机其实是我的树莓派3B,虽然算不上多么高的配置,家用还是很适合的。

这个是我的树莓派现在的一个状态,这个树莓派的配置一应该是1GB内存,但是从这里的922M以及922M + 100得到的1022M似乎都不是很准确。如果准确,要么是1024M要么应该是存储商约定的1000M。由此,考虑到了一个之前教程中看到的free命令。

从内容的组成上,看起来更加让我费解。由此,尝试去阅读一下free命令的手册来弄清楚这个小问题。

这里对每一列的内容解释说的还是很清晰的,但是从我的疑惑方面还是没能得到解答。比如,这个swap到底是RAM还是文件系统?我的这个机器上真正的RAM究竟是多么大?

这些信息都是来自于/proc/meminfo文件,我把我的树莓派上的这个文件内容导出如下:

MemTotal:         944092 kB

MemFree:           26444 kB

MemAvailable:     738568 kB

Buffers:          565900 kB

Cached:           146856 kB

SwapCached:         2456 kB

Active:           180452 kB

Inactive:         613496 kB

Active(anon):      47576 kB

Inactive(anon):    47764 kB

Active(file):     132876 kB

Inactive(file):   565732 kB

Unevictable:          16 kB

Mlocked:              16 kB

SwapTotal:        102396 kB

SwapFree:           6084 kB

Zswap:                 0 kB

Zswapped:              0 kB

Dirty:              5316 kB

Writeback:             0 kB

AnonPages:         79612 kB

Mapped:            43024 kB

Shmem:             14124 kB

KReclaimable:      79052 kB

Slab:             101180 kB

SReclaimable:      79052 kB

SUnreclaim:        22128 kB

KernelStack:        1536 kB

PageTables:         4140 kB

SecPageTables:         0 kB

NFS_Unstable:          0 kB

Bounce:                0 kB

WritebackTmp:          0 kB

CommitLimit:      574440 kB

Committed_AS:    1110212 kB

VmallocTotal:    1114112 kB

VmallocUsed:        8268 kB

VmallocChunk:          0 kB

Percpu:              416 kB

CmaTotal:         262144 kB

CmaFree:             284 kB

结合上面的信息,或许树莓派的RAM大小应该是1024MB,之所以算出来不是这些是因为上面的解释中,Total部分其实是去掉了一些保留位以及系统的部分占用?究竟是否是如此,目前还真有几分说不清楚。

结合这两个参数的描述,如果使用-h的选项的时候独到的数据应该是按照1024作为对应的进制来衡量的。

这样,做一个折算: 1000 * 1000 * 1000 / 1024 / 1024 得到的结果应该是把一般的供应商的计量方式往计算机常规数据上做了一个转换。得到的数据应该是953MB。这个其实是接近于前面描述的总量减去一部分预留的说法了,由此可以大概推测,swap可能是文件系统提供的一部分空间。

关于swap究竟是什么,我又查了一下网络上的材料。我找到了如下网页:

Swap Memory: What It Is & How It Works (phoenixnap.com)

里面开篇的描述部分:

大概描述: swap存储,通常称为交换空间,是对计算机物理RAM的硬盘或SSD (Solid State drive)。当操作系统耗尽可用的RAM时,它会在内存之间交换数据RAM和交换空间。这种机制称为交换机制,增强了内存管理效率。交换内存对于RAM有限的系统或执行内存密集型任务的系统非常重要。如果没有交换内存,当RAM容量超过时,这些系统很容易崩溃。

这么看的话,这部分存储应该就是硬盘的一部分,只是说它可以充当一部分RAM的缓存区以防RAM耗尽。

至此,这个之前稍微让我费解一点的问题基本上是弄清楚了。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/457113.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

第5节、S曲线加减速转动【51单片机+L298N步进电机系列教程】

↑↑↑点击上方【目录】,查看本系列全部文章 摘要:本节介绍步进电机S曲线相关内容,总共分四个小节讨论步进电机S曲线相关内容 5-1、S曲线加减速简介   根据上节内容,步进电机每一段的速度可以任意设置,但是每一段的…

Python学习路线 - Python高阶技巧 - SQL入门和实战

Python学习路线 - Python高阶技巧 - SQL入门和实战 SQL章节前言无处不在的SQL 数据库介绍无处不在的数据库数据库如何存储数据数据库如何存储数据数据库管理系统(数据库软件)数据库和SQL的关系 Mysql的安装Mysql的介绍Mysql的版本MySQL安装配置环境变量 Mysql的入门使用在命令提…

Linux实验记录:使用Postfix与Dovecot部署邮件系统

前言: 本文是一篇关于Linux系统初学者的实验记录。 参考书籍:《Linux就该这么学》 实验环境: VmwareWorkStation 17——虚拟机软件 RedHatEnterpriseLinux[RHEL]8——红帽操作系统 备注: Web服务和FTP文件传输服务虽能实现文…

Django前后端分离之后端实践2

小实践:实现用户登录、注销及ORM管理功能、事务开启小实践 models.py class Books(models.Model):id models.CharField(primary_keyTrue,max_length20,verbose_name"图书ID")name models.CharField(max_length20,verbose_name图书名称)status models…

Linux系统安装mysql数据库并利用自己电脑远程连接

在新装的linux系统中,我们得先开启网络服务才能下载包啊什么的,所以在这之前,我们默认已经开启网络服务。 首先我们需要先下载一个wget命令工具用于从网上下载软件安装包。 首先我们需要先下载一个wget命令工具用于从网上下载软件安装包。下…

mhz_c1f

信息收集 探测到存活主机的IP地址为 192.168.101.32 # nmap -sT --min-rate 10000 -p- 192.168.101.32 -oN port.nmap Starting Nmap 7.94 ( https://nmap.org ) at 2024-02-03 13:41 CST Nmap scan report for 192.168.101.32 Host is up (0.0020s latency). Not shown: 6553…

EasyExcel分页上传数据

EasyExcel分页上传数据 一、实例 controller上传入口 PostMapping("/upload")ResponseBodyLog(title "导入工单", businessType BusinessType.IMPORT)public AjaxResult uploadFile(HttpServletRequest request, MultipartFile files) throws Exceptio…

项目02《游戏-08-开发》Unity3D

基于 项目02《游戏-07-开发》Unity3D , 本次任务做物品相互与详情的功能, 首先要做 点击相应, 接下来用接口实现点击相应事件,具体到代码中,我们找到需要响应鼠标事件的对象, 双击PackageCell…

【3D分割】GARField: 辐射场的物体分组

题目:GARField: Group Anything with Radiance Fields 来源:UC Berkeley 和 Luma AI 项目: https://www.garfield.studio/ 文章目录 摘要一、前言二、相关工作2.1 层次分组2.2 NeRF的分割2.3 3D 特征场 三、method3.1 2D Mask 生成3.2 Scale-…

Python __file__属性:查看模块的源文件路径

除可以查看模块的帮助信息之外,还可以直接阅读模块的源代码来掌握模块功能,提升 Python 编程能力。 不管学习哪种编程语言,认真阅读那些优秀的框架、库的源代码都是非常好的学习方法。 通过模块的 __file__ 属性即可查看到指定模块的源文件…

数据库学习案例20240206-ORACLE NEW RAC agent and resource关系汇总。

1 集群架构图 整体集群架构图如下: 1 数据库启动顺序OHASD层面 操作系统进程init.ohasd run启动ohasd.bin init.ohasd run 集群自动启动是否被禁用 crsctl enable has/crsGIHOME所在文件系统是否被正常挂载。管道文件npohasd是否能够被访问, cd /var/t…

Rust 数据类型使用注意点

文章目录 前言一、Rust 的数据类型基本数据类型:复合数据类型: 二、使用注意点📢整型溢出 总结 前言 Rust 学习系列 ,学习rust的数据类型。牢记其中的注意点📢 一、Rust 的数据类型 Rust 提供了丰富的数据类型&#…