
Linux系统结构
文章平均质量分 60
Linux explorer
探索世界!
展开
-
Linux 管道_1
Linux 管道Linux 进程间数据可以从一个进程流向另一个进程,一个进程产生数据,然后通过管道发送给另一个进程, 另一个进程从管道的另一端读取出数据,实现了进程间的通信。管道的分类Linux系统上的管道分两种类型:匿名管道命名管道这两种管道也叫做无名或有名管道,为了统一,以下我们称为匿名管道和命名管道。 匿名管道最常见的形态就是我们在shell操作中最常用的“|”。它的特点是只能在父子进程中使用, 父进程在产生子进程前必须打开一个管道文件,然后fork产生子进程, 这样子进程通过拷贝父进翻译 2021-07-06 07:06:55 · 328 阅读 · 0 评论 -
Linux 信号
Linux 信号信号的基本概念系统支持的信号信号的基本概念信号(signal),又称为软中断信号,是进程间通信机制中唯一的异步通信机制,用于通知进程发生了异步事件, 它是Linux系统响应某些条件而产生的一个事件, 它是在软件层次上对中断机制的一种模拟,是一种异步通信方式,在原理上, 一个进程收到一个信号与处理器收到一个中断请求可以说是一样的。系统支持的信号从图中可以看出,Linux系统支持信号62种信号,每种信号名称都以SIG三个字符开头, 注意,编号为32和33的信号值是不存在的。可以将这6翻译 2021-04-12 10:41:57 · 173 阅读 · 0 评论 -
Linux 虚拟文件系统
虚拟文件系统Linux内核包含了文件管理子系统组件,它主要实现了虚 拟文件系统(Virtual File System,VFS),虚拟文件系统屏蔽了各种硬件上的差 异以及具体实现的细节,为所有的硬件设备提供统一的接口,从而达到设备无关性的 目的,同时文件管理系统还为应用层提供统一的API接口。在Linux下,一个与文件操作相关的应用程序结构如下图所示。...翻译 2021-03-16 22:48:45 · 177 阅读 · 0 评论 -
Linux文件系统
sysfs文件系统Linux内核在2.6版本中引入了sysfs文件系统,sysfs通常会自动挂载在根目录下的sys文件夹。sys目录下的文 件/文件夹向用户提供了一些关于设备、内核模块、文件系统以及其他内核组件的信息,如子目录block中存放了所 有的块设备,而bus中存放了系统中所有的总线类型,有i2c,usb,sdi o,pci等。/sys各个文件的作用block记录所有在系统中注册的块设备,这些文件都是符号链接,都指向了/sys/devices目录。bus该目录包含了系统中所有的总线类型,翻译 2021-03-16 21:44:50 · 108 阅读 · 0 评论 -
Linux伪文件系统
伪文件系统Linux内核提供了procfs、sysfs和devfs等文件系统,伪文件系统存在于内存中,通常不占用硬盘空间,它以文 件的形式,向用户提供了访问系统内核数据的接口。用户和应用程序 可以通过访问这些数据接口,得到系统的信息,而且内核允许用户修改内核的某些参数。...翻译 2021-03-14 22:06:43 · 549 阅读 · 0 评论 -
Linux 文件操作与系统调用
存储设备文件系统 在常用系统中,Windows下的FAT32、NTFS、exFAT以及Linux下常用的ext2、ext3和ext4的类型格式。这些文件系统都是为了解决如何高效管理存储器空间的问题而诞生的。 各种不同标准文件系统的特性:FAT32格式:兼容性好, STM32等MCU也可以通过Fatfs支持FAT32文件系统,大部分SD卡或U盘出厂 默认使用的就是FAT32文件系统。它的主要缺点是技术老旧,单个文件不能超过4GB,非日志型文件系统。NTFS格式:单个文件最大支持256TB、支持长文翻译 2021-03-11 23:20:08 · 164 阅读 · 0 评论 -
Linux 应用程序运行过程
Linux 应用程序运行过程运行图详解运行图详解下面针对每个子步骤做进一步的讲解:1预处理hello.c,主要是处理程序里面的文件包含、处理宏定义、条件编译。2 把c文件编译成为汇编文件(.s),其中进行了词法分析,语法分析,语义分析、生成中间代码、对代码进行优化等工作。3 把汇编文件(.s)编译成可重定位文件(.o)。4 把可重定位文件(.o)链接成为可执行文件,其中链接可分为静态链接和动态链接静态链接:在编译阶段就会把所有用到的库打包到自己的可执行程序中,其优点是具有较好的兼容翻译 2021-02-27 10:30:16 · 984 阅读 · 0 评论 -
GCC 编译过程概述
GCC编译过程GCC 使用方法:GCC 编译实例GCC编译过程GCC 使用方法:gcc [选项] 文件名常用选项:-o:小写字母“o”,指定生成的可执行文件的名字,不指定的话生成的可执行文件名为a.out。-E:只进行预处理,既不编译,也不汇编。-S:只编译,不汇编。-c:编译并汇编,但不进行链接。-g:生成的可执行文件带调试信息,方便使用gdb进行调试。GCC 编译实例#编译成可执行文件gcc hello.c -o hello#以上命令等价于执行以下全部操作#预处理,翻译 2021-02-26 22:34:09 · 190 阅读 · 0 评论 -
Linux系统结构之/sys
/sysroot@npi:~# ls /sys/block bus class dev devices firmware fs kernel module powerls /sys/block/root@npi:~# ls /sys/block/loop0 loop3 loop6 mmcblk1boot0 ram1 ram12 ram15 ram4 ram7loop1 loop4 loop7 mmcblk1boot1 ram10 ram13翻译 2021-02-26 21:55:09 · 555 阅读 · 0 评论 -
Linux系统结构之/proc内容查看
查看/proc 文件内容1.1CPU信息cat /proc/cpuinforoot@npi:~# cat /proc/cpucpu/ cpuinforoot@npi:~# cat /proc/cpuinfoprocessor : 0model name : ARMv7 Processor rev 5 (v7l)BogoMIPS : 12.00Features : half thumb fastmult vfp edsp neon vf原创 2021-01-27 23:13:14 · 1383 阅读 · 0 评论 -
Linux 系统学习
Linux 系统学习之/proc/proc 内容文件结构/proc 内容root@npi:~# ls /proc1 159 24 317 8 99 execdomains locks sysvipc10 16 25 328 80 asound fb meminfo thread-self100 17 26 362 81 buddyinfo filesystem翻译 2021-01-26 23:33:52 · 108 阅读 · 0 评论