// 这里是linux  2.3.48以上版本的内核的信息
#include <sys/sysinfo.h>      // 需要包含的头文件
int sysinfo(struct sysinfo *info);// 需要用到的函数的原型
struct sysinfo {  long uptime;             /* 启动到现在经过的时间 */  unsigned long loads[3];    /* 1, 5, and 15 minute load averages */  unsigned long totalram;  /* 总的可用的内存大小 */  unsigned long freeram;   /* 还未被使用的内存大小 */  unsigned long sharedram; /* 共享的存储器的大小*/  unsigned long bufferram; /* 共享的存储器的大小 */  unsigned long totalswap; /* 交换区大小 */  unsigned long freeswap;  /* 还可用的交换区大小 */  unsigned short procs;    /* 当前进程数目 */  unsigned long totalhigh; /* 总的高内存大小 */  unsigned long freehigh;  /* 可用的高内存大小 */  unsigned int mem_unit;   /* 以字节为单位的内存大小 */  char _f[20-2*sizeof(long)-sizeof(int)];   /* libc5的补丁
};
// 一份简单的测试代码
#include <stdio.h>
#include <sys/sysinfo.h>
int main(void)
{struct sysinfo info;int iRetVal = -1;/*用于获取函数的返回值,默认为-1*/iRetVal = sysinfo(&info);printf("return val         : %d\n",iRetVal);//打印函数返回值,成功为0,失败为-1  printf("uptime          : %ld\n",info.uptime);//打印从设备开启到现在的时间,单位为秒    printf("1 min load average : %lu\n",info.loads[0]);    printf("5 min load average : %lu\n",info.loads[1]);    printf("15 min load average: %lu\n",info.loads[2]);//平均负载    printf("totalram           : %lu\n",info.totalram);//总可用内存大小  printf("freeram            : %lu\n",info.freeram); //剩余内存   printf("procs              : %u\n",info.procs);    //进程数return 0;
}
// ————————————————
// 版权声明:本文为CSDN博主「行者三个石」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
// 原文链接:https://blog.csdn.net/qq_33706673/article/details/78187559

嵌入式linux学习笔记--sysinfo获取linux的开机时间相关推荐

  1. Linux学习笔记---移植官方linux步骤(二)

    目录 修改网络驱动 修改 LAN8720 的复位 以及网络时钟 引脚驱动 修改fec1和fec2节点pinctrl-0属性 修改LAN8720A的PHY地址 修改 fec_main.c 文件 配置 L ...

  2. Linux学习笔记---移植官方linux步骤(一)

    使用的开发板是正点原子IMX6U-MINI  EMMC512M的开发板,这个板子也是移植的NXP官方linux,所以这里就直接从NXP官方的linux移植. 这里所说的移植,其实不是自己编写驱动文件等 ...

  3. Linux学习笔记(一):Linux常用命令

    linux学习笔记(一):Linux常用命令 ctrl + l 清屏 clear crtl + c 终止操作 Linux常用命令 文件处理命令 ls:list 功能:显示目录文件 选项: -a 显示所 ...

  4. Linux 学习笔记3 -- 常用 Linux 命令的基本使用

    文章目录 1. 学习 Linux 终端命令的原因 2. 常用 Linux 命令的基本使用 3. 终端实用技巧 3.1 自动补全 3.2 曾经使用过的命令 4. Linux 终端命令格式 5. 查阅命令 ...

  5. 写得蛮好的linux学习笔记(主要是linux shell命令)

    linux目录架构 /   根目录 /bin    常用的命令 binary file 的目錄 /boot   存放系统启动时必须读取的档案,包括核心 (kernel) 在内      /boot/g ...

  6. linux学习笔记-windows和linux文件互传

    目录 概述: FTP说明: 操作方式: linux 下FTP环境搭建: Windows 下FTP环境搭建 1.使用windows自带的FTP登录 windows建立快捷登录文件夹 2.使用FileZi ...

  7. 【嵌入式Linux学习笔记】基于Linux官方库的标准外设驱动

    对于标准的外设如LED,KEY,PWM等,以及标准通信协议,Linux都自带有标准的驱动库,不需要我们自行编写,只需要配置好相应的GPIO属性和电气属性,即可匹配相应的驱动,在应用程序中直接使用相应的 ...

  8. 黑裙安装linux环境,Linux学习笔记(一) ---- 安装Linux系统

    学习Linux的第一件事情,你得先有个Linux系统,才能知道怎么学吧? 于是安装Linux是第一部,找网上找了不少教程,自己总结了一下,些一个博文先. 我安装的Linux是在VMWare 7.2版本 ...

  9. linux学习笔记-第一课-linux的历史,安装linux,远程连接

    一.Linux 的历史 ①创始人:Linus Torvalds(林纳斯·托瓦兹) ②发布时间:1991年10月5日 ③核心:kernel ④衍生版本:常见的Ubuntu.RedHat.CentOS.D ...

最新文章

  1. 送书 | 你一定能看懂的算法基础书(代码示例基于Python)
  2. 收藏 |《动手学深度学习》中文版PDF
  3. CNN、RNN、GAN都是什么?终于有人讲明白了
  4. python使用手册-Python参考手册(第4版)
  5. Node-RED简介与Windows上安装、启动和运行示例
  6. iOS设计模式 ——单例模式详解以及严格单例模式注意点
  7. vue-获取某个组件渲染的Dom根元素
  8. mysql数据库邮箱什么类型_MySQL的数据类型介绍
  9. MySQL索引原理及慢查询优化,了解一下?
  10. Tomcat8.0之后GET请求不需要再设置中文乱码问题
  11. 用JavaScript实现更复杂的交互
  12. 181013词霸扇贝有道每日一句
  13. Eclipse SVN插件版本
  14. J2EE框架技术(持续更新)
  15. spring Aop 实现原理
  16. 儿童讲堂 - 学科分类
  17. VR全景图之图片拼接教程
  18. 客户端修改opc服务器的数据,客户端读取opc服务器数据
  19. VBA基础函数:取数组最大下标——UBound函数
  20. 申宝证券-题材股活跃沪指尾盘收红

热门文章

  1. ajax contentType
  2. html系列之video标签设置圆形
  3. qnap直接用linux命令,QNAP定制了个什么鬼Linux系统 (转载)
  4. java.awt.Font.createFont 画图的时候字体不显示问题
  5. iphone发送邮件html,iphone6s自带邮箱收发邮件设置图文教程
  6. Stm32-使用TB6612驱动电机及编码器测速
  7. 使用Python开发spark
  8. HTTP代理如何添加白名单?
  9. 网站做SEO优化需要建立自己的词库
  10. Spring Data MongoDB 使用group和unwind实现对数组数据进行简单统计