嵌入式Linux中文站

最新发布

系统开发

SELinux深入理解

阅读(154)

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

新手入门

使用Nmon监控Linux的系统性能

阅读(87)

Nmon(得名于 Nigel 的监控器)是IBM的员工 Nigel Griffiths 为 AIX 和 Linux 系统开发的一款计算机性能系统监控工具。Nmon 可以把操作系统的统计数据展示在屏幕上或者存储到一份数据文件里,来帮助了解计算机资源的使用情况、调整方向和系统瓶颈。这个系统基准测试工具只...

新手入门

编写Linux Shell脚本的最佳实践

阅读(165)

前言 由于工作需要,最近重新开始拾掇shell脚本。虽然绝大部分命令自己平时也经常使用,但是在写成脚本的时候总觉得写的很难看。而且当我在看其他人写的脚本的时候,总觉得难以阅读。毕竟shell脚本这个东西不算是正经的编程语言,他更像是一个工具,用来杂糅不同的程序...

行业新闻

“Vim 退出”使百万程序员无所适从

阅读(249)

程序员一旦进入 Vim ,就再难以脱身。这听起来像是一个恐怖故事,但是却真实的发生在程序员的身上, Stack Overflow 上关于如何退出 Vim 的问题,其点击量已有上百万次了。 问题原文为: Im stuck and cannot escape. It says: type :quitEnter to quit VIM But when I ...

行业新闻

如何更快速有效地利用Linux自带帮助man!

阅读(88)

我们通常通过 google 来查询Linux中的命令说明,但是其实还有一个更好的办法:那就是通过 Linux 自带的 man 帮助页来查询命令详尽完整的使用说明。 man 页面的历史本身比 Linux 还长,可以追溯到 Unix 早期那个年代。 通过这个 Wikipedia 可以知道,Dennis Ritchie 和 K...

系统开发

构建ARM Linux交叉编译工具链 详解

阅读(143)

学习目标: ● 了解交叉编译工具链 ● 理解分步构建交叉编译工具链的方法 ● 学会使用Crosstool工具构建交叉编译工具链 2.1交叉编译工具链介绍 读者可能会有疑问,为什么要用交叉编译器?交叉编译通俗地讲就是在一种平台上编译出能运行在体系结构不同的另一种平台上的程...

新手入门

使用 Diff 和 Meld 工具比较两个目录的不同处

阅读(209)

一般情况下,要在Linux下比较两个文件,我们会使用 diff (一个简单的源自 Unix 的命令行工具)来显示两个计算机文件的不同;它一行一行的去比较文件,而且很方便使用,在几乎全部的 Linux 发行版都预装了。 问题是在 Linux 下我们怎么才能比较两个目录?现在,我们想知...

行业新闻

牢不可破!Intel、微软联手造了个铜墙铁壁

阅读(164)

Intel、微软,这对被称为Wintel的经典老搭档,这些年有些各顾各的,不过一旦联合起来,依然是相当威猛。 微软今天宣布了一种新的企业级安全框架Coco Framework,首次基于区块链 (BlockChain) 技术,可大大提高企业的隐私性和安全性,并指定 Intel 为核心软硬件开发伙伴...

行业新闻

Android 8.0正式版暂定本月8月21日发布

阅读(145)

Android O正式版何时推送,成为目前不少安卓用户关注的重点,从时间安排上来看,本月谷歌一定是会推出的。 爆料大神evleaks刚刚在自己的Twitter上爆料称,Android 8.0正式版预计会在下下周发布,准确时间极有可能是8月21日。 8月21日是美国的日全食,而之前Android Poli...

行业新闻

Linux Kernel 4.12.6 发布,稳定版内核

阅读(88)

Linux Kernel 4.12.6 发布了。更新情况如下: stable: 4.12.6 2017-08-11 [ tarball ] [ pgp ] [ patch ] [ inc.patch ] [ viewdiff ] [ browse ] [ changelog ] Linux 是一套 Unix-like 的操作系统,是 Unix 的一种,它控制整个系统基本服务的核心程序 (kernel) 是由 L...

系统开发

Linux内核态抢占机制分析

阅读(162)

本文首先介绍非抢占式内核(Non-Preemptive Kernel)和可抢占式内核(Preemptive Kernel)的区别。接着分析Linux下有两种抢占:用户态抢占(User Preemption)、内核态抢占(Kernel Preemption)。然后分析了在内核态下:如何判断能否抢占内核(什么是可抢占的条件);何时触发重...

系统开发

Linux内核2.4.18创建硬链接的系统调用sys_link

阅读(100)

1、磁盘目录项结构 /* * The new version of the directory entry. Since EXT2 structures are * stored in intel byte order, and the name_len field could never be * bigger than 255 chars, its safe to reclaim the extra byte for the * file_type field. */ str...

新手入门

Linux strace命令

阅读(91)

简介 strace常用来跟踪进程执行时的系统调用和所接收的信号。 在Linux世界,进程不能直接访问硬件设备,当进程需要访问硬件设备(比如读取磁盘文件,接收网络数据等等)时,必须由用户态模式切换至内核态模式,通 过系统调用访问硬件设备。strace可以跟踪到一个进程产生的...

系统开发

ARM linux的启动部分源代码简略分析

阅读(230)

当内核映像被加载到RAM之后,Bootloader的控制权被释放。内核映像并不是可直接运行的目标代码,而是一个压缩过的zImage(小内核)。但是,也并非是zImage映像中的一切均被压缩了,映像中包含未被压缩的部分,这部分中包含解压缩程序,解压缩程序会解压缩映像中被压缩的...

系统开发

Linux下可执行文件格式详解

阅读(92)

Linux下面,目标文件、共享对象文件、可执行文件都是使用ELF文件格式来存储的。程序经过编译之后会输出目标文件,然后经过链接可以产生可执行文件或者共享对象文件。linux下面使用的ELF文件和Windows操作系统使用的PE文件都是从Unix系统的COFF文件格式演化来的。 我们先...

内核驱动

u-boot与linux内核间的参数传递过程分析

阅读(116)

U-boot会给Linux Kernel传递很多参数,如:串口,RAM,videofb、MAC地址等。而Linux kernel也会读取和处理这些参数。两者之间通过struct tag来传递参数。U-boot把要传递给kernel的东西保存在struct tag数据结构中,启动kernel时,把这个结构体的物理地址传给kernel;Lin...