嵌入式Linux中文站

最新发布

新手入门

Linux下环境变量的配置

阅读(174)

最近一直在Linux下调试MQ,研究了一下Linux环境变量的配置,部分资料搜集自网上: 环境变量的配置文件 一般来说,许多Linux发行版的默认的Shell是Bash (GNU Bourne-Again Shell) ,Shell中变量根据作用域的不同(与大多数编程语言类似,比如在函数中定义的变量在函数外...

系统开发

基于Linux与Busybox的Reboot命令流程分析

阅读(242)

一:Busyobx层的分析 这段时间,在忙到一个项目时,需要在busybox中用到reboot命令,开始在busybox中的shell中输入reboot命令,始终如下的信息,然后就停止在那里了,无法重启...为了彻底的弄明白这个问题,我在网络上找了很久,终于有个人写的一个reboot流程分析,我就借花献佛....

系统开发

Linux中iptables的原理

阅读(191)

iptables简介 netfilter/iptables(简称为iptables)组成Linux平台下的包过滤防火墙,与大多数的Linux软件一样,这个包过滤防火墙是免费的,它可以代替昂贵的商业防火墙解决方案,完成封包过滤、封包重定向和网络地址转换(NAT)等功能。 iptables基础 规则(rules)其...

内核驱动

linux驱动之定时器的使用

阅读(214)

Linux的内核中定义了一个定时器的结构: #includelinux/timer.h struct timer_list { struct list_head list; unsigned long expires; //定时器到期时间 unsigned long data; //作为参数被传入定时器处理函数 void (*function)(unsigned long); }; 利用这个结构我们可以...

内核驱动

Linux内核特性之VDSO

阅读(208)

这段时间看Linux内核源码的时候,经常碰到vdso这个东西(像在Feature-fixup中,获取时间等操作时),网上搜了一下,才知道了含义,原来这是Linux为了解决和glibc兼容而想出的绝招...

线程进程

linux 同步机制之complete

阅读(125)

在Linux内核中,completion是一种简单的同步机制,标志things may proceed。 要使用completion,必须在文件中包含linux/completion.h,同时创建一个类型为struct completion的变量。 [cpp] view plain copy 这个变量可以静态地声明和初始化: DECLARE_COMPLETION(my_com...

线程进程

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

阅读(137)

下面将讲解进程间通信的另一种方式,使用共享内存。 一、什么是共享内存 顾名思义,共享内存就是允许两个不相关的进程访问同一个逻辑内存。共享内存是在两个正在运行的进程之间共享和传递数据的一种非常有效的方式。不同进程之间共享的内存通常安排为同一段物理内存。进...

线程进程

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

阅读(128)

这里将会介绍进程的另一种通信方式命名管道,来解决不相关进程间的通信问题。 一、什么是命名管道 命名管道也被称为FIFO文件,它是一种特殊类型的文件,它在文件系统中以文件名的形式存在,但是它的行为却和之前所讲的没有名字的管道(匿名管道)类似。 由于Linux中所有...

系统开发

Linux MTD系统剖析

阅读(141)

MTD,Memory Technology Device即内存技术设备 ,在Linux内核中,引入MTD层为NOR FLASH和NAND FLASH设备提供统一接口。MTD将文件系统与底层FLASH存储器进行了隔离。 如上图所示,MTD设备通常可分为四层,从上到下依次是:设备节点、MTD设备层、MTD原始设备层、硬件驱动...

系统开发

Linux系统ELF程序的执行过程

阅读(97)

【摘要】 本文将介绍linux程序的执行过程,并以实际问题为切入点简单介绍下ELF程序的加载过程。 【正文】用后态执行 我们知道在linux系统中可以通过诸如./debug方式执行一个程序,那么这个程序的执行过程中linux系统都做了什么? 本文以debug程序为例,介绍linux内核是如...

内核驱动

linux kernel内存映射实例分析

阅读(259)

作者:JHJ(jianghuijun211@gmail.com) 日期:2012/08/24 欢迎转载,请注明出处 引子 现在android智能手机市场异常火热,硬件升级非常迅猛,arm cortex A9 + 1GB DDR似乎已经跟不上主流配置了。虽说硬件是王道,可我们还是不禁还怀疑这么强大的硬件配置得到充分利用了吗...

行业新闻

Linux 版 RISC-V 合并进 Linux 4.15

阅读(165)

Linux 4.15 将支持加州伯克利开发的开源指令集架构RISC-V。RISC-V 开发者 Palmer Dabbelt 在邮件列表上宣布,Linux 版 RISC-V已被接受合并到 Linux 4.15。RISC-V 是基于精简指令集(RISC)原则的一个开源指令集架构。 与大多数指令集相比,RISC-V 指令集可以自由地用于...

行业新闻

Visual Studio 交叉编译器提供对 ARM 的支持

阅读(216)

只要 ARM 平台能够运行 Windows,Visual Studio 就有能力拓展 ARM 平台。在 Visual Studio 2017 15.5 预览版 2 中,该 IDE 通过使用 GCC 编译器,增加了对基于 ARM 的计算机和物联网(IoT)设备的支持力度,从而扩展了对 ARM 平台的支持。 这样做的优点是,它允许开发人...

行业新闻

时隔近一年半,网易云音乐 Linux V1.1 正式发布

阅读(221)

深度操作系统是一个致力于为全球用户提供美观易用、安全可靠的 Linux 发行版。建立完善的生态系统,打造更多的原生应用,给用户更好的体验,一直都是我们前进的方向。 时隔将近一年半的时间,网易云音乐 Linux 版本终于迎来了更新迭代,本次更新除了迁移到QCEF 框架,对...

行业新闻

Linux基金会金牌会员新增百度

阅读(147)

导读 11月7日消息,10月16日,全球知名非营利性组织Linux基金会宣布:百度正式成为Linux基金会金牌会员!随后,17日百度金融正式加入Linux基金会旗下Hyperledger开源项目,成为该项目核心董事会成员。 近期百度在开源社区动作频频,释放出一个强烈的信号:百度对开源生...

系统开发

深入理解SELinux

阅读(149)

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