分类: LINUX
2011-09-17 18:35:17
一 实时性,电源管理等核心技术不断发展成熟。
二 国际标准组织持续建立嵌入式相关标准有效解决版本分歧与兼容性问题。
三 不断推出相关开发工具,维护系统
Root权限
Linux是一个多用户的系统,不同的用户拥有不同的权限,具有超级权限的用户称为root用户,root默认目录在”/root”下,而其他普通用户则在”/home”下,root可以修改Linux内核。
文件系统、分区和挂载
文件系统是操作系统中与管理文件有关的软件和数据
Linux文件系统是一棵文件树,它所有的文件和外设都以文件的形式挂载在这棵树上
Windows 下目录属于分区Linux下分区属于目录
把分区和目录对应的过程叫做挂载,挂载在文件树中的位置称挂载点
主分区:包括操作系统和启动必需文件数据的硬盘分区,数量可以1-3个
扩展分区:除主分区以外的分区。数量0或1,不能直接使用,须划分为逻辑分区才可,逻辑分区数量不限制
SWAP交换分区:
在硬件条件有限的情况下为了运行大型程序,Linux在硬盘上划出区域作为临时内存,也作windows下的虚拟内存,一般设置为内存的2倍大小。
Linux 作为操作系统的优势: 低成本 多硬件平台 可定制内核 性能优异
Linux按功能分两大类:行编辑器 全屏幕编辑器
vi是Linux系统的第一个(全屏幕交互式编辑程序)
vi模式:命令行模式 插入模式 底行模式
gcc 简介:
是GNU项目中符合ANSI C标准的编译系统,能够编译用C、C++和ObjectC语言编写的程序。是一个交叉平台编译器,能够在当前CPU平台上为多种不同体系结构的硬件平台开发软件,尤其适合嵌入式领域的开发编译
gcc 编译流程:(1)预处理(2)编译(3)汇编(4)链接
gdb简介:一款GNU开发并发布的UNIX/Linux 下程序调试工具,没有友好的图形界面,但功能强大。
gdb使用流程(1)查看文件(2)设置断点(3)查看断点情况(4)运行代码(5)查看变量值
make工程管理器
是个“自动编译管理器”,能根据文件时间戳自动更新过的文件而减少编译的工作量,通过读入makefile文件夹的内容执行大量的编译工作。
嵌入式系统发展史
1.以单芯片为核心的可编程控制器形式
2.以嵌入式CPU为基础、以简单操作系统为核心
3.以嵌入式操作系统为标志
4.以Internet、多核技术为标志
嵌入式系统的特点
(1)面向特定应用
(2)高效的设计
(3)将先进的计算机技术、半导体技术、和电子技术与各个行业的具体应用结合
(4)软件一般都固化在存储芯片或单片机本身
(5)开发的软件代码尤其要求高质量、高可靠性
(6)嵌入式系统本身不具备二次开发能力
系统调用
操作系统提供给用户程序调用的一组特殊接口,用户可通过其获得操作系统内核提供的服务
多用户编程接口API
API是一些预先定义的函数,为了提供应用程序与开发人员基于某软或硬件的以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。
系统命令
相对API更高了一层,它实际上是一个可执行程序,它的内部引用了用户编程接口API来实现相应的功能
文件描述符
是一个非负的整数,是一个索引值,指向内核中每个进程打开文件的记录表。当打开一个现存文件或创建一个新文件时,
内核就向进程返回一个文件描述符;当需要读写文件时,也需要把文件描述符作为参数传递给相应的函数。
文件锁
建议性锁 要求每个上锁文件的进程都检查是否有锁存在,并尊重已有的锁,一般情况内核和系统不使用
强制性锁 由内核执行,当一个文件被上锁进行写入时候,内核将阻止其他任何文件对其进行读写操作。对系统影响大,每次读写都必须检查是否有锁存在.
进程的定义
一个独立的可调度的活动;一个抽象的实体,当执行某个任务时,分配释放各种资源;可以并行执行的计算单位。是系统中程序执行和资源分配的最小单位
进程的运行状态
执行态 就绪态 等待态
守护进程
守护进程就是后台服务进程,它是一个生存期较长的进程,通常独立于控制终端并且周期性地执行某任务或处理某事件。
无名管道的特点
(1)只用于亲缘进程之间通信
(2)半双工通信方式,具有固定的读写端
(3)可看成是一种特殊的文件可用read()write()函数进行读写但不属于任何文件系统,只存在内核的内存中。
线程概述
线程是进程内独立的一条运行路线,处理器调度的最小单元,也称轻量级进程。可对进程的内存空间和资源分配进行访问,并与同进程的其他线程共享。
线程机制的分类
(1)用户级线程
(2)轻量级进程
(3)内核线程