嵌入式Linux中文站

开发专区

Linux进程间通信——使用共享内存

Linux进程间通信——使用共享内存

阅读(208)

下面将讲解进程间通信的另一种方式,使用共享内存。 一、什么是共享内存 顾名思义,共享内存就是允许两个不相关的进程访问同一个逻辑内存。共享内存是在两个正在运行的进程之间共享和传递数据的一种非常有效的方式。不同进程之间共享的内存通常安排为同一段物理内存。进程可以将同一段共享内存连接到它们自己的地址空间中,所有进程都可以访问共享内存中的地址,就好像它们是由用C语言函数malloc分配的内存一样。而如果某个进程向共享内存写入数据,所做的改动将立即影响到可以访问同一段共享内存的任何其他进程。 特别提醒 :共享内存并...

Linux进程间通信——使用命名管道

Linux进程间通信——使用命名管道

阅读(160)

这里将会介绍进程的另一种通信方式命名管道,来解决不相关进程间的通信问题。 一、什么是命名管道 命名管道也被称为FIFO文件,它是一种特殊类型的文件,它在文件系统中以文件名的形式存在,但是它的行为却和之前所讲的没有名字的管道(匿名管道)类似。 由于Linux中所有的事物都可被视为文件,所以对命名管道的使用也就变得与文件操作非常的统一,也使它的使用非常方便,同时我们也可以像平常的文件名一样在命令中使用。 二、创建命名管道 我们可以使用两下函数之一来创建一个命名管道,他们的原型如下: [cpp] view pl...

Linux MTD系统剖析

Linux MTD系统剖析

阅读(196)

MTD,Memory Technology Device即内存技术设备 ,在Linux内核中,引入MTD层为NOR FLASH和NAND FLASH设备提供统一接口。MTD将文件系统与底层FLASH存储器进行了隔离。 如上图所示,MTD设备通常可分为四层,从上到下依次是:设备节点、MTD设备层、MTD原始设备层、硬件驱动层。 Flash硬件驱动层 :Flash硬件驱动层负责对Flash硬件的读、写和擦除操作。MTD设备的Nand Flash芯片的驱动则drivers/mtd/nand/子目录下,Nor F...

Linux系统ELF程序的执行过程

Linux系统ELF程序的执行过程

阅读(161)

【摘要】 本文将介绍linux程序的执行过程,并以实际问题为切入点简单介绍下ELF程序的加载过程。 【正文】用后态执行 我们知道在linux系统中可以通过诸如./debug方式执行一个程序,那么这个程序的执行过程中linux系统都做了什么? 本文以debug程序为例,介绍linux内核是如何一步步将debug进程执行起来的. 1 执行过程: 以system()实现为例,它是一种典型的可执行程序运行过程: [cpp] view plain copy #includesys/types.h #includes...

linux kernel内存映射实例分析

linux kernel内存映射实例分析

阅读(467)

作者:JHJ(jianghuijun211@gmail.com) 日期:2012/08/24 欢迎转载,请注明出处 引子 现在android智能手机市场异常火热,硬件升级非常迅猛,arm cortex A9 + 1GB DDR似乎已经跟不上主流配置了。虽说硬件是王道,可我们还是不禁还怀疑这么强大的硬件配置得到充分利用了吗?因此以后我都会正对ARM平台分析kernel的内容。 正文 在linux内存管理中,有两个资源非常重要,一个是虚拟地址,一个是物理地址。听起来似乎是废话,实际上内存管理主要就是围绕这两个...

深入理解SELinux

深入理解SELinux

阅读(231)

1. 简介 SELinux带给Linux的主要价值是:提供了一个灵活的,可配置的MAC机制。 Security-Enhanced Linux (SELinux)由以下两部分组成: 1) Kernel SELinux模块(/kernel/security/selinux) 2) 用户态工具 SELinux是一个安全体系结构,它通过LSM(Linux Security Modules)框架被集成到Linux Kernel 2.6.x中。它是NSA (United States National Securit...

UBI文件系统详细介绍

UBI文件系统详细介绍

阅读(155)

一、 UBI/UBIFS产生背景 FLASH具有的先擦除再写入、坏块、有限的读写次数等特性,目前管理FLASH的方法主要有: 1、 采用MTD+FTL/NFTL(flash 转换层/nand flash转换层)+ 传统文件系统,如:FAT、ext2等。FTL/NFTL的使用就是针对FLASH的特有属性,通过软件的方式来实现日志管理、坏块管理、损益均衡等技 术。但实践证明,由于知识产权、效率等各方面因素导致本方案有一定的局限性。 2、采用硬件翻译层+传统文件系统的方案。这种方法被很多存储卡产品采用,如:SD...

UBI系统原理分析

UBI系统原理分析

阅读(233)

综述 UBI全称UnsortedBlockImages,是一种原始flash设备的卷管理系统。这个系统能在一个物理的flash设备上管理操纵多个卷并且能在整个flash芯片上实现损耗均衡。 从某种意义上说,UBI和LVM有点相似,LVM将逻辑扇区映射到物理扇区上面,UBI映射逻辑擦除块到物理擦除块。但是除了映射,UBI还实现了全局的损耗均衡和透明的I/O错误处理。 一个UBI卷就是一串连续的逻辑擦除块。每一个逻辑擦除块可以被映射到任何一个物理擦除块上面。这个映射是由UBI管理,这种映射对用户是透明的,同时...