-
- 如何监控 Linux 上进程的网络使用情况
- 在计算机中,互联网的访问是绝对必不可少的。然而,您可能会感兴趣了解您的计算机上有哪些Linux进程正在最频繁地使用连接。幸运的是,借助一些常见的Linux工具,监控使用带宽的进程非常容易。以下是几个工具的介绍:nethogsnethogs是一个类似于htop或top的程序,用于提供互联网连接方面的CPU和内存使用情况。它可以快速查看哪些进程在使用网络连接。与top、htop或atop类似,nethogs是一个全屏程序,每隔几秒钟更新一次,以显示当前进程所建立的网络连接。您可以通过包管理器轻松安装
- LINUX . 系统教程 2668 2024-02-05 16:45:02
-
- Linux GNU C 与 ANSI C 有什么区别?
- Linux上可用的C编译器是GNUC编译器,这个编译器是建立在自由软件基金会的编程许可证之上的,因此可以自由地发布和使用。GNUC对标准C进行了一系列的扩展,以增强标准C的功能。1.零长度和变量长度数组GNUC允许使用零长度数组,在定义变长对象的头结构时,这个特性非常有用。例如:structvar_data{intlen;chardata[0];};chardata[0]仅仅意味着程序中通过var_data结构体实例的data[index]成员可以访问len之后的第index个地址,它并没有为d
- LINUX . 系统教程 1662 2024-02-05 16:30:13
-
- 为什么 Linux 系统默认页大小是 4KB
- 众所周知,Linux会以页面为单位对内存进行管理。不论是将磁盘中的数据加载到内存中,还是将内存中的数据写回磁盘中,操作系统都会以页面为单位进行操作,这也意味着如果我们只向磁盘中写入一个字节的数据,操作系统也需要将整个页面中的全部数据刷入磁盘中。值得注意的是,在Linux中,我们既可以使用正常大小的内存页进行操作,也可以使用大内存页(HugePage),尽管绝大多数处理器上的内存页默认大小为4KB,但是部分处理器会使用8KB、16KB或者64KB作为默认的页面大小。除了正常的内存页大小之外,不同的
- LINUX . 系统教程 1720 2024-02-05 16:27:02
-
- Linux 中的 service 与 systemctl 有何区别?
- 在Linux中,service和systemctl是两个至关重要且非常相似的命令。它们的相似性很容易让人产生疑问,想知道它们之间的区别,以及是否可以互换使用。了解service和systemctl的细节将使您能够灵活运用它们。service命令在Linux中的作用是什么?使用service命令检查防火墙状态在Linux中,service命令是一个包装脚本,允许用户轻松配置和与系统服务交互。它在systemd之前,并主要与位于/etc/init.d中的脚本一起工作。尽管systemctl在很大程度
- LINUX . 系统教程 1865 2024-02-05 16:24:30
-
- Linux下轻松修改MySQL/MariaDB的Root密码
- 如果您是第一次安装MySQL或MariaDB,您可以运行mysql_secure_installation脚本来进行基本的安全设置。其中一个设置是关于数据库的root密码,这个密码必须保密,只在必要时使用。如果您需要修改它(例如,当数据库管理员更换时,或者被解雇了!),您也可以通过该脚本进行修改。请执行脚本mysql_secure_installation以实现这些安全设置。修改MySQL或MariaDB的root密码你知道root密码,但是想要重置它,对于这样的情况,让我们首先确定MariaD
- LINUX . 系统教程 1425 2024-02-05 16:24:03
-
- Linux 命令 su 和 sudo 的区别
- 之前我一直对于su和sudo这两个命令感到困惑,最近经过专门的搜索,终于弄清楚了它们之间的关系和用法。在这篇文章中,我将对它们进行系统总结。1.准备工作由于本文涉及用户切换,我需要提前准备几个测试用户,以便于后续的切换操作。在Linux中,创建新用户的命令是useradd,一般情况下,该命令的路径会被包含在环境变量PATH中。如果直接输入useradd命令没有反应,可以使用绝对路径方式,例如/usr/sbin/useradd。需要注意的是,只有root用户才能执行useradd命令。接下来,我们
- LINUX . 系统教程 865 2024-02-05 16:03:02
-
- 24小时学通Linux内核之有关Linux文件系统实现的问题
- Linux的使用和用户空间程序的编程与文件系统密切相关。对于文件系统的概念,大家可能已经比较熟悉了,所以我不会过多地讲解。毕竟,只要能了解这些概念就可以了,对于想深入了解的人,可以随时通过百度等搜索引擎获取更多信息。现在我将重点介绍Linux的虚拟文件系统。虚拟文件系统是Linux的一个重要特性之一,它支持多种不同的文件系统。文件系统的结构如下图所示:[图片见原文]上图中VFS(虚拟文件系统)依赖数据结构来保存其对一个文件系统的一般表示,其中数据结构罗列如下:超级块结构:存放已经安装的文件系统的
- LINUX . 系统教程 988 2024-02-05 16:00:03
-
- 手把手教你构建linux rootfs
- busybox概述众所周知,在Linux环境下,一切皆文件,文件可以表示一切。而文件系统则是这些普通组件的集合。在嵌入式领域中,常常使用基于busybox构建的rootfs来构建文件系统。busybox诞生至今已有近20年的历史,如今已成为嵌入式行业中主流的rootfs构建工具。busybox的代码是完全开源的。你可以进入官方网站,点击”GetBusyBox”下面的”DownloadSource”进入源码下载界面。“官方网站链接:https://busybox.net/”2.busybox的配置
- LINUX . 系统教程 783 2024-02-05 15:51:16
-
- Linux之PWM驱动
- 1.概述本文将深入介绍Linux的PWM(Pulse-WidthModulation)驱动框架,包括其实现原理、驱动添加方法以及调试方法,以帮助开发者更好地了解和使用这一功能。本文所示示例Linux内核版本为6.2.8。2.原理PWM技术作为一种常用的调制技术,可以通过调整周期性波形的高电平时间宽度来改变有效信号的占空比,从而实现对设备的供电控制。常见的PWM应用领域包括屏幕背光亮度调节、电机转速控制和风扇转速控制等。Linux内核支持PWM驱动框架,通过抽象PWM控制器和PWM信号的结构体数据
- LINUX . 系统教程 1776 2024-02-05 15:40:03
-
- IAR进军Linux,支持在Linux搭建编译环境
- 在MCU开发中,大多数人使用集成开发环境(如KeilMDK、IAREWARM)进行开发。然而,这些环境只支持Windows系统,不支持其他操作系统环境,这对于喜欢使用Linux的嵌入式软件工程师来说是一个痛点。因此,许多嵌入式软件工程师倾向于在Linux系统上自己搭建开发环境。KeilMDK使用的是ARM编译器,可以在其他环境中独立使用,但IAR编译器不支持其他环境。在Linux环境下,有很多成功搭建ARM编译器或GCC编译环境的案例,但是在Linux环境下使用IAR编译器的案例则较少。然而,近
- LINUX . 系统教程 1246 2024-02-05 14:50:11
-
- 嵌入式 ARM Linux 应用程序项目问题定位
- 一、现象根据业务线的反馈,他们发现每当运行我们的通讯软件appA时,单板的CPU使用率就会变得异常高,即使没有进行任何通讯操作,只是空跑时CPU利用率仍然很高。通常情况下,业务很少关注CPU性能,不过我已经好久没更新博客了,所以我觉得值得记录一下这个问题(虽然最后经过一两天的调试,只是改了一行代码就解决了,o(╯□╰)o)。在启动appA之前,我先通过top命令查看CPU的使用情况,如下所示,9%的利用率还算是正常的(因为还有其他的业务应用程序在运行)。Mem:49320Kused,202284
- LINUX . 系统教程 1320 2024-02-05 14:05:02
-
- 比 Vim 更现代直观的 Linux 文本编辑器
- 如果你厌倦了Vi和Vim的奇怪界面和繁琐的键绑定,为什么不试试Micro编辑器呢?命令行文本编辑器证明了Linux终端的实用性,让您可以在不离开终端的情况下进行文件编辑。这些编辑器使用的资源更少,速度也非常快,非常适合进行一些快速编辑。一些流行的命令行文本编辑器包括Vi、Vim和Nano。它们在大多数Linux发行版中都预装了。然而,对于初学者来说,学习Vi或Vim的曲线和键绑定可能有些困难。这时,Micro文本编辑器就成为了一个更简单的选择。Micro与其他编辑相比的表现如何Micro宣称自己
- LINUX . 系统教程 1094 2024-02-05 14:00:13
-
- 为什么Linux内核里大量使用goto,而很多书籍却不提倡使用?
- 关于C语言中的goto语句,存在着许多争议,很多书籍建议要“谨慎使用,甚至避免使用”。但是,在Linux之父Linus的实践中,他在Linux中广泛使用了goto语句,这也启示了我们可以合理地使用这个特性。正因为存在争议,我们有必要学会使用goto语句。下面来看一些goto语句的基本语法和示例:一、goto的基本语法goto语句由两部分组成:关键字goto和标签名。标签的命名规则与变量的命名规则相同。示例:gotolabel;要让这条语句正常工作,函数还必须包含另一条标为label的语句,该语句
- LINUX . 系统教程 1857 2024-02-05 13:25:27
-
- Linux开发coredump文件分析实战分享
- 前言:在嵌入式Linux开发中,分析coredump文件是一种常用的方法,我们经常可以在网络上找到相关的使用教程。然而,很少有介绍如何分析多线程应用程序的coredump文件的文章。今天我来分享一些我在实际使用中遇到的案例,希望能给大家提供一些帮助。由于代码和篇幅的限制,我只会描述我认为比较有特色的问题,并以框架思维去解决许多遇到的coredump文件的情况。作者:良知犹存转载授权以及围观:欢迎关注微信公众号:羽林君或者添加作者个人微信:become_me情节介绍:在调试一个功能时,我产生了一些
- LINUX . 系统教程 3042 2024-02-05 13:10:18
-
- Linux 程序编译过程详解
- 计算机程序设计语言通常分为机器语言、汇编语言和高级语言三类。高级语言需要通过翻译成机器语言才能执行,而翻译的方式分为两种,一种是编译型,另一种是解释型。因此我们基本上将高级语言分为两大类,一种是编译型语言,例如C,C++,Java,另一种是解释型语言,例如Python、Ruby、MATLAB、JavaScript。本文将介绍如何将高层的C/C++语言编写的程序转换成为处理器能够执行的二进制代码的过程,包括四个步骤:预处理(Preprocessing)编译(Compilation)汇编(Assem
- LINUX . 系统教程 1225 2024-02-05 13:09:15
PHP讨论组
组员:3305人话题:1500
PHP一种被广泛应用的开放源代码的多用途脚本语言,和其他技术相比,php本身开源免费; 可以将程序嵌入于HTML中去执行, 执行效率比完全生成htmL标记的CGI要高许多,它运行在服务器端,消耗的系统资源相当少,具有跨平台强、效率高的特性,而且php支持几乎所有流行的数据库以及操作系统,最重要的是

