Linux
文章平均质量分 68
介绍Linux操作系统命令以及背后的原理
OopspoO
be better
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Linux 多进程编程基础
进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础。程序是指令、数据及其组织形式的描述,进程是程序的实体。进程是一个具有独立功能的程序关于某个数据集合的一次运行活动。它可以申请和拥有系统资源,是一个动态的概念,是一个活动的实体。它不只是程序的代码,还包括当前的活动,通过程序计数器的值和处理寄存器的内容来表示。通俗点讲,进程是一段程序的执行过程,是个动态概念。程序运行必须加载在内存中,当有过多的就绪态或阻塞态进程在内存中没有运行,因原创 2026-03-01 20:20:18 · 1004 阅读 · 0 评论 -
Linux多线程编程基础
根据POSIX标准,原创 2026-03-01 19:59:11 · 803 阅读 · 0 评论 -
lubancat-A1
LubanCat-A1是野火科技基于全志(Allwinner) H618设计的一款低功耗、高性能单板电脑。LubanCat-A1使用了一颗包含四核Cortex-A53处理器、Arm Mali-G31 MP2图形处理器的SOC, 搭配千兆网口、HDMI、USB2.0等外设接口。LubanCat-A1板载了AW869A双频WiFi6+BT5.0无线模块,支持1*1 IEEE 802.11a/b/g/n/ac/ax WLAN 标准和BT 5.0。原创 2026-01-25 19:55:33 · 179 阅读 · 0 评论 -
香橙派 Orange Pi Prime
Orange Pi Prime采用了全志H5 Cortex-A53四核64位高性能处理器,集成2GB DDR3内存、WiFi+蓝牙、DC供电等。Orange Pi Prime集成了千兆以太网,RJ45板载网络、板载存储、LED指示灯,Low-Level外设,并且兼容树莓派GPIO口,拥有独特的调试串口等。参数。原创 2026-01-19 22:00:43 · 171 阅读 · 0 评论 -
万象奥科HD-RK3506-MINI
RK3506G 是一款高性能的三核 Cortex A7 应用处理器,专为智能语音交互、音频输入/输出处理、图像输出处理以及其他数字多媒体应用而设计。内置 2D 硬件引擎和显示输出引擎,以最小化 CPU 负载,满足图像显示需求。内置丰富的外设接口,如 SAI、PDM、SPDIF、音频 DSM、音频 ADC、USB2 OTG、RMII、CAN 等,可以满足不同的应用开发需求,降低硬件开发复杂性和开发成本。RK3506G 具有高性能的存储器接口,能够支持高要求的存储器带宽。原创 2026-01-15 22:58:51 · 365 阅读 · 0 评论 -
Linux命令——grep
grep是Linux中用于文本处理的最有用和功能最强大的命令之一。grep在一个或多个输入文件中搜索与正则表达式匹配的行,并将每条匹配的行写入到标准输出。正则表达式是与一组字符串匹配的模式。模式由运算符,文字字符和元字符组成,它们具有特殊的含义。GNUgrep支持三种正则表达式语法Basic,Extended和Perl-compatible。当没有给出正则表达式类型时,grep以Basic的形式调用,grep将搜索模式解释为基本Basic正则表达式。原创 2024-12-17 23:58:28 · 1312 阅读 · 0 评论 -
Linux Shell学习
本文拟总结shell使用的一些经验。原创 2024-12-17 23:54:08 · 666 阅读 · 0 评论 -
利用程序名用做参数
我们在编写程序的时候,一般都是处理argv[1]及之后的参数,很少会去处理argv[0]。但是如果我们想让程序表现出不同的行为,就像不同的程序一样,这时候可以将程序创建数个软连接,通过argv[0]来区分。不用每次都在程序后面加单独的参数,使用起来简洁软连接的名字可以让使用者一眼就看出程序的功能,语意上更明确。原创 2023-12-16 16:25:35 · 550 阅读 · 0 评论 -
Linux内存分析工具
本文旨在介绍Linux下分析内存的各种工具及其背后的原理。原创 2026-01-13 00:04:46 · 825 阅读 · 0 评论 -
Yocto简介
这些资源可用于为嵌入式设备和物联网设备,或任何需要定制化 Linux 操作系统的场景,构建量身定制的 Linux 镜像。Yocto 项目(YP)是一个开源协作项目,它帮助开发者创建基于 Linux 的自定义系统,且不受硬件架构的限制。第一次过程比较慢,考虑到它需要从外网拉取包,同时也需要为其预留足够的磁盘空间(这个看项目,几十到上百G都有可能)。简单说,Yocto提供一个统一的框架工具,能够让我们定制自己的Linux 镜像。还有一个 config 目录,用于存放当前构建环境所使用的配置信息。原创 2026-01-03 14:20:01 · 468 阅读 · 0 评论 -
Linux debugfs虚拟文件系统
环境:Linux dev-PC 5.18.17-amd64-desktop-hwe #20.01.00.10 SMP PREEMPT_DYNAMIC Thu Jun 15 16:17:50 CST 2023 x86_64 GNU/Linuxdebugfs是一种用来调试内核的内存文件系统,可以通过debugfs和用户空间交换数据。总用量 0drwxr-xr-x 2 root root 0 2月 9 11:29 acpidrwxr-xr-x 13 root root 0 2月 9 11:30 bdi。原创 2025-02-09 17:08:59 · 521 阅读 · 0 评论 -
Linux sysfs虚拟文件系统
测试环境:Linux dev-PC 5.18.17-amd64-desktop-hwe #20.01.00.10 SMP PREEMPT_DYNAMIC Thu Jun 15 16:17:50 CST 2023 x86_64 GNU/Linuxsysfs虚拟文件系统是随着linux统一设备驱动模型一起诞生的。这个新的设备模型是为了对计算机上的所有设备进行统一地表示和操作,包括设备本身设备之间的连接关系。原创 2025-02-09 16:47:26 · 991 阅读 · 0 评论 -
Linux proc虚拟文件系统
测试环境:Linux dev-PC 5.18.17-amd64-desktop-hwe #20.01.00.10 SMP PREEMPT_DYNAMIC Thu Jun 15 16:17:50 CST 2023 x86_64 GNU/Linuxproc虚拟文件系统是linux内核提供的一种让用户和内核内部数据结构进行交互的机制。proc文件系统并不是真正意义上的文件系统,它存在于内存中,并不占用磁盘空间。原创 2025-02-09 15:25:40 · 1305 阅读 · 0 评论 -
Linux ltrace跟踪入门
本文介绍ltrace跟踪。原创 2025-02-08 21:16:09 · 824 阅读 · 0 评论 -
Linux ftrace 内核跟踪入门
ftrace 是内建于 Linux 内核的跟踪工具,从 2.6.27 开始加入主流内核。使用 ftrace 可以调试或者分析内核中发生的事情。ftrace 提供了不同的跟踪器,以用于不同的场合,比如跟踪内核函数调用、对上下文切换进行跟踪、查看中断被关闭的时长、跟踪内核态中的延迟以及性能问题等。系统开发人员可以使用 ftrace 对内核进行跟踪调试,以找到内核中出现的问题的根源,方便对其进行修复。原创 2025-02-07 23:44:19 · 1675 阅读 · 0 评论 -
获取当前鼠标区域的窗口句柄
获取当前鼠标所在的窗口。原创 2024-10-17 13:22:57 · 826 阅读 · 0 评论 -
文件系统监控——inotify
从 Linux 2.6.13 内核开始,Linux 引入了 inotify,可以通过该机制监控文件或目录的一组指定事件,例如打开、关闭、移动/重命名、删除 、创建或更改属性。创建一个inotify实例并返回一个对应的文件描述符操作inotify实例相关联的“watch list”(创建或者修改已有的)当受监视的文件和目录发生事件时,可以使用 read从 inotify 文件描述符中读取这些事件信息从inotify监控列表中删除项目。原创 2024-03-28 00:56:18 · 2101 阅读 · 0 评论 -
Linux GRUB配置
linux grub2配置介绍原创 2022-09-02 00:24:25 · 4896 阅读 · 0 评论 -
终端输出g_debug()信息
g_debug 输出问题原创 2022-07-27 22:22:34 · 1070 阅读 · 0 评论 -
putty永久设置session
打开putty,加载好需要设置的连接(load),看到左边的设置栏putty永久设置字体、颜色在左侧的设置栏中进行好设置。设置完成后,回到"session"界面,点击"save"保存设置。从此以后,针对保存了设置的连接,putty会加载已经保存过的偏好设置了。如果有多个连接需要修改的话,重复上述过程:加载→修改→保存。参考:https://jingyan.baidu.com/arti...原创 2019-11-18 21:38:05 · 1633 阅读 · 0 评论 -
alsamixer设置
主要命令sudo alsactl store该命令将alsamixer配置保存到 /etc/asound.state 中,在每次启动时都会加载它。alsactl --file ~/.config/asound.state store该命令使用 alsactl 将混音器设置保存到自定义文件中alsactl --file ~/.config/asound.state restore该...原创 2019-12-24 17:15:57 · 2404 阅读 · 0 评论 -
Linux操作系统编程基础
linux 编程基础原创 2022-08-12 00:25:36 · 1107 阅读 · 0 评论 -
Linux开发环境配置
经常需要配置Linux开发环境,记录一份Debian系的开发环境配置。原创 2022-08-14 21:28:19 · 652 阅读 · 0 评论 -
(翻译)Writing an x86 “Hello world“ bootloader with assembly
原文出处:http://50linesofco.de/post/2018-02-28-writing-an-x86-hello-world-bootloader-with-assembly摘要(TL;DR 可以是 Too long; Didn’t read(太长,所以没有看)。也可以是 Too long; Don’t read (太长,请不要看),常作为一篇很长的文章的摘要标题。)计...翻译 2018-05-03 11:19:56 · 880 阅读 · 1 评论 -
strace工具简单入门
实际上,在一个进程被跟踪之后,跟踪者进程会在某种意义上充当被跟踪进程的父进程(如使用ps命令就可以看到他们的父子关系),而子进程真正的父进程被保存在其task_struct结构的real_parent成员中。一个进程被跟踪后,他只要接收到一个信号(即使这个信号被设置为忽略)就会停止运行(SIGKILL除外),然后父进程会在每次调用wait()时得到子进程停止运行的通知,这时父进程就可以检测和修改子进程了,随后父进程可以让子进程继续运行。addr和data用于修改和拷贝被跟踪进程的进程地址空间的数据。原创 2025-01-10 00:03:17 · 1398 阅读 · 0 评论 -
perf工具简单入门
它不但可以分析制定应用程序的性能问题(per thread),也可以用来分析内核的性能问题,当然也可以同时分析应用程序和内核,从而全面理解应用程序中的性能瓶颈。perf (Performance analysis tools for Linux)是Linux的一款性能分析工具,能够进行函数级和指令级的热点查找,可以用来分析程序中热点函数的CPU占用率,从而定位性能瓶颈。这种模式, 上面列出的都是perf支持的子命令,如果不知道这些子命令需要哪些参数,一般可以通过。生成的svg图片就是火焰图。原创 2025-01-09 22:40:57 · 550 阅读 · 0 评论 -
GDB入门
GDB(GNU Debugger)是UNIX及UNIX-like下的强大调试工具,可以调试ada, c, c++, asm, minimal, d, fortran, objective-c, go, java,pascal等语言。在函数foo中,如果x>0时断住,并自动打印x,然后运行程序。查看程序/进程构造的几个方法。原创 2025-01-09 14:02:27 · 1013 阅读 · 0 评论 -
Linux 磁盘与文件系统操作
util-linux 中自带了 fstrim 工具(Discard unused blocks on a mounted filesystem.),平常用 -a 选项(-a, --all trim all mounted filesystems that are supported)比较多,可以自动检测硬盘是否支持 trim 功能,并在已挂载文件系统上执行 trim。同时,由于SSD只能写入整块数据,如果写入比块小,则需要写入整个块,这就会导致浪费大量的存储空间。原创 2025-01-06 17:27:34 · 2088 阅读 · 0 评论 -
如何杀死一个Linux进程
timeout命令可以在给定时间间隔后给进程发送信号,默认是KILL信号。pkill命令可以杀死/发送信号给满足条件的进程。默认发送的是SIGTERM信号。命令可以杀死和指定文件关联的进程。原创 2025-01-02 16:10:20 · 287 阅读 · 0 评论 -
Linux修改磁盘UUID
在Linux中,要修改UUID可以使用tune2fs命令和ntfslabel命令,具体的命令取决于使用的文件系统。在修改之前,一定要备份好重要的数据,避免修改UUID导致数据丢失。原创 2025-01-01 21:03:23 · 1680 阅读 · 0 评论 -
Linux性能测试简介
更为重要的是,作为一个开源软件,IMbench提供一个测试框架,假如测试者对测试项目有更高的测试需要,能够修改少量的源代码就达到目的(比如现在只能评测进程创建、终止的性能和进程转换的开销,通过修改部分代码即可实现线程级别的性能测试)。SysBench是一个模块化的、跨平台的、支持多线程的基准测试工具,它主要评估的是系统在模拟的高压力的数据库应用中的性能,其官方主页为http://sysbench.sourceforge.net。除了总的延迟时间,它还分别统计I/O递交的时间延迟和I/O完成的时间延迟。原创 2025-01-01 20:55:58 · 1827 阅读 · 0 评论 -
虚拟化与NUMA
NUMA(Non-Uniform Memory Access,非统一内存访问架构)是相对于UMA(Uniform Memory Access)而言的。早年的计算机架构都是UMA,如图所示。所有的CPU处理单元(Processor)均质地通过共享的总线访问内存,所有CPU访问所有内存单元的速度是一样的。在多处理器的情形下,多个任务会被分派在各个处理器上并发执行,则它们竞争内存资源的情况会非常频繁,从而引起效率的下降。所以,随着多处理器架构的逐渐普及以及数量的不断增长,NUMA架构兴起,如图所示。原创 2025-01-01 20:15:58 · 1118 阅读 · 0 评论 -
Linux查看键鼠输入
程序如下,使用时需要看情况修改input设备路径。原创 2024-12-22 23:02:09 · 695 阅读 · 0 评论 -
lshw学习——简单介绍
lshw: HardWare LiSter for Linux 一般用来查看linux设备的硬件信息,包括内存、cpu、主版等信息。代码:https://ezix.org/src/pkg/lshw.gitlshw源码用到一下几点linux内核文件系统系统接口如ioctlstat等操作系统概念,比如文件系统结构、网络、总线工程上抽象出统一的设备结构以上只是对lshw的初步分析,进一步的理解还是需要直接阅读代码。原创 2024-12-19 00:58:42 · 1384 阅读 · 0 评论 -
busybox学习——简单介绍
BusyBox 将许多具有共性的小版本的UNIX工具结合到一个单一的可执行文件。这样的集合可以替代大部分常用工具比如的GNU fileutils , shellutils等工具,BusyBox提供了一个比较完善的环境,可以适用于任何小的嵌入式系统。原创 2024-12-17 23:56:52 · 713 阅读 · 0 评论 -
编译Linux内核
编译Linux内核原创 2024-09-14 00:19:41 · 875 阅读 · 0 评论 -
shell中脚本参数传递
shell中脚本的参数传递原创 2022-09-04 20:33:40 · 3151 阅读 · 0 评论 -
Filesystem Hierarchy Standard
FHS标准原创 2022-08-10 23:49:59 · 364 阅读 · 0 评论 -
deb包的解压与重打
解压deb包与重新打包原创 2022-08-21 20:10:47 · 1445 阅读 · 0 评论 -
LightDM简介
lightdm简介原创 2022-08-21 20:26:02 · 6315 阅读 · 1 评论
分享