虫虫首页| 资源下载| 资源专辑| 精品软件
登录| 注册

精密<b>电子仪器</b>

  • LINUX系统分析与高级编程技术

    本书介绍Linux环境下的编程方法,内容包括Linux系统命令、 Shell脚本、编程语言(gawk、Perl)、系统内核、安全体系、X Window等,内容丰富、论述全面,涵盖了Linux系统的方方面面。本书附带光盘包括了RedHat Linux系统的最新版本,及安装方法,还包括本书的大量程序代码,极大地方便了读者,为使用和将要使用Linux系统的技术人员提供了较全面的参考。    目      录前言第一篇   Linux系统介绍第1章   Linux简介 …11.1   Linux 的起源 11.2   自由软件基金会的GNU计划 11.3   Linux 的发音 21.4   Linux 的特点 21.5   基本硬件要求 31.6   如何获得Linux 31.6.1   从网上下载Linux 31.6.2   从光盘获得Linux 31.7   涉及Linux 的Web 网址和新闻讨论组 61.8   Linux 的不足之处 7第2章   外壳及常用命令 82.1   登录和退出 82.2   Linux 系统的外壳 82.3   外壳的常用命令 92.3.1   更改帐号密码 92.3.2   联机帮助 92.3.3   远程登录 92.3.4   文件或目录处理 92.3.5   改变工作目录 102.3.6   复制文件 102.3.7   移动或更改文件、目录名称 102.3.8   建立新目录 102.3.9   删除目录 112.3.10   删除文件 112.3.11   列出当前所在的目录位置 112.3.12   查看文件内容 112.3.13   分页查看文件内容 112.3.14   查看目录所占磁盘容量 112.3.15   文件传输 112.3.16   文件权限的设定 122.3.17   检查自己所属的工作组名称 132.3.18   改变文件或目录工作组所有权 132.3.19   改变文件或目录的最后修改时间 132.3.20   文件的链接 132.3.21   文件中字符串的查寻 142.3.22   查寻文件或命令的路径 142.3.23   比较文件或目录的内容 142.3.24   文件打印输出 142.3.25   一般文件的打印 142.3.26   troff 文件的打印 142.3.27   打印机控制命令 142.3.28   进程控制 152.3.29   外壳变量 162.3.30   环境变量 162.3.31   别名 162.3.32   历史命令 172.3.33   文件的压缩 172.3.34   管道命令的使用 172.3.35   输入/输出控制 182.3.36   查看系统中的用户 182.3.37   改变用户名 182.3.38   查看用户名 182.3.39   查看当前系统上所有工作站       的用户 192.3.40   与某工作站上的用户交谈 192.3.41   检查远程系统是否正常 192.3.42   电子邮件的使用简介 19第3章   Linux系统的网络功能 213.1   Linux支持的网络协议 213.1.1   TCP/IP 213.1.2   TCP/IP 版本 6 213.1.3   IPX/SPX 213.1.4   AppleTalk 协议集 213.1.5   广域网 223.1.6   ISDN 223.1.7   PPP、SLIP及PLIP 223.1.8   业余无线电 223.1.9   ATM 223.2   Linux系统下的文件共享和打印共享 223.2.1   Machintosh 环境 223.2.2   Windows 环境 223.2.3   Novell 环境 233.2.4   UNIX 环境 233.3   Linux系统中的Internet/Intranet功能 233.3.1   邮件 233.3.2   Web 服务器 243.3.3   Web 浏览器 243.3.4   FTP 服务器和客户机 243.3.5   新闻服务 243.3.6   域名系统 243.3.7   DHCP和 bootp 243.3.8   NIS 243.4   Linux系统下应用程序的远程执行 243.4.1   Telnet 253.4.2   远程命令 253.4.3   X Window 253.5   Linux系统的网络互连功能 253.5.1   路由器 253.5.2   网桥 253.5.3   IP伪装 253.5.4   IP统计 263.5.5   IP 别名 263.5.6   流量限制器 263.5.7   防火墙 263.5.8   端口下传 263.5.9   负载平衡 263.5.10   EQL 273.5.11   代理服务器 273.5.12   按需拨号 273.5.13   管道、移动IP和虚拟个人网络 273.6   Linux系统中的网络管理 273.6.1   Linux系统下的网络管理应用程序 273.6.2   SNMP 283.7   企业级Linux网络 283.7.1   高可用性 283.7.2   RAID 283.7.3   冗余网络 28第4章   Linux系统管理简介 294.1   root 帐号 294.2   启动和关闭系统 294.2.1   从软盘启动 294.2.2   使用LILO 启动 294.2.3   关闭Linux系统 304.3   挂接文件系统 304.3.1   挂接软盘 304.3.2   创建新的文件系统 304.3.3   卸载文件系统 314.4   检查文件系统 314.5   使用文件作为交换区 314.6   系统和文件的备份 324.7   设置系统 334.7.1   设置系统名 334.7.2   使用维护磁盘 334.7.3   重新设置root 帐号口令 334.7.4   设置登录信息 33第二篇   Linux高级语言及管理编程第5章   外壳编程 355.1   创建和运行外壳程序 355.1.1   创建外壳程序 355.1.2   运行外壳程序 355.2   使用外壳变量 365.2.1   给变量赋值 365.2.2   读取变量的值 375.2.3   位置变量和其他系统变量 375.2.4   引号的作用 375.3   数值运算命令 385.4   条件表达式 405.4.1   if 表达式 405.4.2   case 表达式 415.5   循环语句 425.5.1   for 语句 435.5.2   while 语句 435.5.3   until 语句 445.6   shift 命令 445.7   select 语句 455.8   repeat 语句 465.9   子函数 46第6章   gawk语言编程 486.1   gawk的主要功能 486.2   如何执行gawk程序 486.3   文件、记录和字段 486.4   模式和动作 496.5   比较运算和数值运算 506.6   内部函数 506.6.1   随机数和数学函数 516.6.2   字符串的内部函数 516.6.3   输入输出的内部函数 526.7   字符串和数字 526.8   格式化输出 526.9   改变字段分隔符 546.10   元字符 546.11   调用gawk程序 556.12   BEGIN和END 556.13   变量 566.14   内置变量 566.15   控制结构 576.15.1   if 表达式 576.15.2   while 循环 576.15.3   for 循环 586.15.4   next 和 exit 586.16   数组 586.17   用户自定义函数 586.18   几个实例 59第7章   Perl语言编程 607.1   什么是Perl 607.2   Perl的现状 607.3   初试Perl 607.4   Perl变量 607.4.1   标量 607.4.2   数组 637.4.3   相关数组 657.5   文件句柄和文件操作 657.6   循环结构 667.6.1   foreach循环 667.6.2   判断运算 667.6.3   for循环 677.6.4   while 和 until循环 677.7   条件结构 677.8   字符匹配 687.9   替换和翻译 697.9.1   替换 697.9.2   翻译 707.10   子过程 707.10.1   子过程的定义 707.10.2   参数 707.10.3   返回值 707.11   Perl程序的完整例子 71第三篇   Linux系统内核分析第8章   Linux内核简介 738.1   系统初始化 738.2   系统运行 738.3   内核提供的各种系统调用 748.3.1   进程的基本概念和系统            的基本数据结构 748.3.2   创建和撤消进程 748.3.3   执行程序 748.4   存取文件系统 75第9章   系统进程 769.1   什么是进程 769.2   进程的结构 769.3   进程调度 789.4   进程使用的文件 799.5   进程使用的虚拟内存 809.6   创建进程 819.7   进程的时间和计时器 819.7.1   实时时钟 819.7.2   虚拟时钟 819.7.3   形象时钟 819.8   程序的执行 829.8.1   ELF文件 829.8.2   脚本文件 82第10章   内存管理 8310.1   内存管理的作用 8310.2   虚拟内存的抽象模型 8310.3   按需装入页面 8410.4   交换 8510.5   共享虚拟内存 8510.6   存取控制 8510.7   高速缓存 8610.7.1   缓冲区高速缓存 8610.7.2   页面高速缓存 8610.7.3   交换高速缓存 8610.7.4   硬件高速缓存 8610.8   系统页面表 8610.9   页面的分配和释放 8710.9.1   页面的分配 8810.9.2   页面的释放 8810.10   内存映射 8810.11   请求调页 8910.12   页面高速缓存 8910.13   内核交换守护进程 90第11章   进程间通信 9111.1   信号机制 9111.2   管道机制 9211.3  System V IPC 机制  9311.3.1   信息队列 9311.3.2   信号量 9411.3.3   共享内存 96第12章   PCI 9812.1   PCI 系统 9812.2   PCI地址空间 9812.3   PCI设置头 9912.4   PCI I/O 和 PCI 内存地址 10012.5   PCI-ISA桥 10012.6   PCI-PCI 桥 10012.7   PCI初始化 10112.7.1   Linux系统内核有关PCI的      数据结构 10112.7.2   PCI 设备驱动程序 10212.7.3   PCI BIOS 函数 10512.7.4   PCI Fixup 105第13章   中断和中断处理 10613.1   中断 10613.2   可编程中断控制器 10613.3   初始化中断处理的数据结构 10713.4   中断处理 108第14章   设备驱动程序 10914.1   硬件设备的管理 10914.2   轮询和中断 11014.3   直接内存存取 11014.4   内存 11114.5   设备驱动程序和内核之间的接口 11114.5.1   字符设备 11214.5.2   块设备 11314.6   硬盘 11314.6.1   IDE 硬盘 11514.6.2   初始化IDE 硬盘子系统 11514.6.3   SCSI 硬盘 11514.6.4   初始化 SCSI 磁盘子系统 11614.6.5   传递块设备请求 11814.7   网络设备 11814.7.1   网络设备文件名 11814.7.2   总线信息 11814.7.3   网络接口标记 11914.7.4   协议信息 11914.7.5   初始化网络设备 119第15章   文件系统 12115.1   Linux文件系统概述 12115.2   ext2文件系统 12215.2.1   ext2的索引节点 12215.2.2   ext2超级块 12415.2.3   ext2 数据块组描述符 12415.2.4   ext2 中的目录 12515.2.5   在ext2 文件系统中查找文件 12515.2.6   改变ext2 文件系统中文件             的大小 12615.3   VFS 12715.3.1   VFS 超级块 12815.3.2   VFS 索引节点 12915.3.3   登记文件系统 12915.3.4   挂接文件系统 13015.3.5   在VFS中查找文件 13115.3.6   撤消文件系统 13115.3.7   VFS 索引节点缓存 13215.3.8   VFS目录缓存 13215.4   缓冲区缓存 13315.5   /proc 文件系统 135第16章   网络系统 13616.1   TCP/IP 网络简介 13616.2   TCP/IP网络的分层 13716.3   BSD 套接口 13816.4   INET套接口层 14016.4.1   创建BSD 套接口 14116.4.2   给INET BSD 套接口指定地址 14116.4.3   在INET BSD套接口上创建连接 14216.4.4   监听INET BSD 套接口 14216.4.5   接收连接请求 14316.5   IP 层 14316.5.1   套接口缓冲区 14316.5.2   接收IP数据包 14416.5.3   发送IP数据包 14416.5.4   数据碎片 14416.6   地址解析协议 145第17章   系统内核机制 14717.1   Bottom Half处理 14717.2   任务队列 14817.3   计时器 14917.4   等待队列 14917.5   信号量 150第四篇   Linux系统高级编程第18章   Linux内核模块编程 15118.1   一个简单程序Hello World 15118.2   设备文件 15218.3    /proc文件系统 15618.4   使用/proc输入 15818.5   与设备文件通信 16218.6   启动参数 16918.7   系统调用 17018.8   阻塞进程 17218.9   替换printk 17718.10   调度任务 178第19章   有关进程通信的编程 18119.1   进程间通信简介 18119.2   半双工UNIX管道 18119.2.1   基本概念 18119.2.2   使用C语言创建管道 18219.2.3   创建管道的简单方法 18519.2.4   使用管道的自动操作 18719.2.5   使用半双工管道时的注意事项 18819.3   命名管道 18819.3.1   基本概念 18819.3.2   创建FIFO 18819.3.3   FIFO操作 18919.3.4   FIFO的阻塞 19019.3.5    SIGPIPE信号 19019.4   System V IPC 19019.4.1   基本概念 19019.4.2   消息队列基本概念 19119.4.3   系统调用msgget() 19419.4.4   系统调用msgsnd() 19519.4.5   系统调用msgctl() 19719.4.6   一个msgtool的实例 19919.5   使用信号量编程 20119.5.1   基本概念 20119.5.2   系统调用semget() 20219.5.3   系统调用semop() 20319.5.4   系统调用semctl() 20419.5.5   使用信号量集的实例:semtool 20519.6   共享内存 20919.6.1   基本概念 20919.6.2   系统内部用户数据结构             shmid_ds 20919.6.3   系统调用shmget() 21019.6.4   系统调用shmat() 21119.6.5   系统调用shmctl() 21119.6.6   系统调用shmdt() 21219.6.7   使用共享内存的实例:shmtool 212第20章   高级线程编程 21520.1   线程的概念和用途 21520.2   一个简单的例子 21520.3   线程同步 21720.4   使用信号量协调程序 21820.5   信号量的实现 22020.5.1   Semaphore.h 22020.5.2   Semaphore.c 221第21章   Linux系统网络编程 22521.1   什么是套接口 22521.2   两种类型的Internet套接口 22521.3   网络协议分层 22521.4   数据结构 22521.5   IP地址和如何使用IP地址 22621.5.1   socket() 22621.5.2   bind() 22621.5.3   connect() 22721.5.4   listen() 22821.5.5   accept() 22821.5.6   send() 和 recv() 22921.5.7   sendto() 和 recvfrom() 23021.5.8   close() 和 shutdown() 23021.5.9   getpeername() 23121.5.10   gethostname() 23121.6   DNS 23121.7   客户机/服务器模式 23221.8   简单的数据流服务器程序 23221.9   简单的数据流客户机程序 23421.10   数据报套接口 23521.11   阻塞 237第22章   Linux I/O端口编程 24022.1   如何在 C 语言下使用I/O端口 24022.1.1   一般的方法 24022.1.2   另一个替代方法: /dev/port 24122.2   硬件中断 与 DMA 存取 24122.3   高精确的时间 24122.3.1   延迟时间 24122.3.2   时间的量测 24322.4   使用其他程序语言 24322.5   一些有用的 I/O 端口 24322.5.1   并行端口 24322.5.2   游戏端口 24422.5.3   串行端口 245第五篇   Linux系统安全分析第23章   系统管理员安全 24723.1   安全管理 24723.2   超级用户 24723.3   文件系统安全 24723.3.1   Linux文件系统概述 24723.3.2   设备文件 24823.3.3   /etc/mknod命令 24923.3.4   安全考虑 24923.3.5   find命令 25023.3.6   secure程序 25023.3.7   ncheck命令 25023.3.8   安装和拆卸文件系统 25023.3.9   系统目录和文件 25123.4   作为root运行的程序 25123.4.1   启动系统 25123.4.2   init进程 25123.4.3   进入多用户 25223.4.4   shutdown命令 25223.4.5   系统V的cron程序 25223.4.6   系统V版本2之后的cron程序 25223.4.7   /etc/profile 25323.5   /etc/passwd文件 25323.5.1   口令时效 25323.5.2   UID和GID 25423.6   /etc/group文件 25423.7   增加、删除和移走用户 25423.7.1   增加用户 25423.7.2   删除用户 25523.7.3   将用户移到另一个系统 25523.8   安全检查 25523.8.1   记帐 25523.8.2   其他检查命令 25623.8.3   安全检查程序的问题 25623.8.4   系统泄密后怎么办 25723.9   加限制的环境 25823.9.1   加限制的外壳 25823.9.2   用chroot()限制用户 25823.10   小系统安全 25923.11   物理安全 25923.12   用户意识 26023.13   系统管理员意识 26123.13.1   保持系统管理员个人的               登录安全 26123.13.2   保持系统安全 261第24章   系统程序员安全 26324.1   系统子程序 26324.1.1   I/O子程序 26324.1.2   进程控制 26324.1.3   文件属性 26424.1.4   UID和GID的处理 26524.2   标准C程序库 26524.2.1   标准I/O 26524.2.2   /etc/passwd的处理 26624.2.3   /etc/group的处理 26724.2.4   加密子程序 26824.2.5   运行外壳 26824.3   编写安全的C程序 26824.3.1   需要考虑的安全问题 26824.3.2   SUID/SGID程序指导准则 26924.3.3   编译、安装SUID/SGID程序             的方法 26924.4   root用户程序的设计 270第25章   Linux系统的网络安全 27225.1   UUCP系统概述 27225.1.1   UUCP命令 27225.1.2   uux命令 27225.1.3   uucico程序 27325.1.4   uuxqt程序 27325.2   UUCP的安全问题 27325.2.1   USERFILE文件 27325.2.2   L.cmds文件 27425.2.3   uucp登录 27425.2.4   uucp使用的文件和目录 27425.3   HONEYDANBER UUCP 27525.3.1   HONEYDANBER UUCP与           老UUCP的差别 27525.3.2   登录名规则 27625.3.3   MACHINE规则 27725.3.4   组合MACHINE和LOGNAME             规则 27825.3.5   uucheck命令 27825.3.6   网关 27825.3.7   登录文件检查 27925.4   其他网络 27925.4.1   远程作业登录 27925.4.2   NSC网络系统 28025.5   通信安全 28025.5.1   物理安全 28025.5.2   加密 28125.5.3   用户身份鉴别 28225.6   SUN OS系统的网络安全 28325.6.1   确保NFS的安全 28325.6.2   NFS安全性方面的缺陷 28425.6.3   远程过程调用鉴别 28425.6.4   Linux鉴别机制 28425.6.5   DES鉴别系统 28525.6.6   公共关键字的编码 28625.6.7   网络实体的命名 28625.6.8   DES鉴别系统的应用 28725.6.9   遗留的安全问题 28725.6.10   性能 28825.6.11   启动和setuid程序引起的问题 28825.6.12   小结 289第26章   Linux系统的用户安全性 29026.1   口令安全 29026.2   文件许可权 29026.3   目录许可 29126.4   umask命令 29126.5   设置用户ID和同组用户ID许可 29126.6   cp mv ln和cpio命令 29126.7   su和newgrp命令 29226.7.1   su命令 29226.7.2   newgrp命令 29226.8   文件加密 29226.9   其他安全问题 29326.9.1   用户的.profile文件 29326.9.2   ls -a 29326.9.3   .exrc文件 29326.9.4   暂存文件和目录 29326.9.5   UUCP和其他网络 29326.9.6   特洛伊木马 29426.9.7   诱骗 29426.9.8   计算机病毒 29426.9.9   要离开自己已登录的终端 29426.9.10   智能终端 29426.9.11   断开与系统的连接 29426.9.12   cu命令 29526.10   保持帐户安全的要点 295第六篇   X window系统的内部结构和使用第27章  X Window系统的基本知识 29727.1   X Window系统介绍 29727.1.1   X的特点 29727.1.2   什么是窗口系统 29827.1.3   X发展的历史 29927.1.4   X的产品 29927.1.5   MIT发行的X 29927.2   X的基本结构 30227.2.1   X 的基本元素 30327.2.2   服务程序和客户程序如何             交互通信 30427.2.3   X 的网络概况 30627.3   从用户界面的角度概观X 30727.3.1   管理界面:窗口管理器 30727.3.2   应用程序界面和工具箱 30927.3.3   其他系统角度 30927.4   术语和符号 31027.4.1   术语 31027.4.2   符号 31127.5   启动和关闭X 31227.5.1   启动X 31227.5.2   执行X程序的方式 31327.5.3   关闭X 31427.6   窗口管理器基础—uwm 31527.6.1   什么是窗口管理器 31527.6.2   启动uwm 31527.6.3   基本窗口操作 —uwm             的菜单 31527.6.4   移动窗口 31627.6.5   重定窗口大小 31627.6.6   建立新窗口 31627.6.7   管理屏幕空间 31827.6.8   中止应用程序窗口 32027.6.9   激活uwm菜单的其他方式 32027.7   使用 x的网络设备 32027.7.1   指定远程终端机—display             选项 32127.7.2   实际使用远程的显示器 32227.7.3   控制存取显示器—xhost 32227.8   终端机模拟器—详细介绍xterm 32327.8.1   选择xterm功能—菜单与       命令行选项 32327.8.2   滚动xterm屏幕 32427.8.3   记录与终端机的交互过程—写           记录 32527.8.4   剪贴文本 32527.8.5   使用Tektronix模拟功能 32627.8.6   使用不同的字体 32727.8.7   使用颜色 32727.8.8   其他xterm选项 32727.8.9   设定终端机键盘 328第28章   实用程序和工具 32928.1   实用程序 32928.2   保存、显示和打印屏幕图像 33028.3   使用X的应用程序 33228.3.1   文字编辑器—Xedit 33328.3.2   邮件/信息处理系统—xmh 33628.4   示例和游戏程序 33628.4.1   找出通过随机迷宫的             路径—maze 33628.4.2   担任鼠标指针的大眼睛—             xeyes 33628.4.3   智慧盘游戏—puzzle 33728.4.4   打印一个大X标志—xlogo 33728.4.5   跳动的多面体—ico 33728.4.6   动态几何图案—muncher与             plaid 33728.7   显示信息和状态的程序 33728.7.1   列出X服务程序的特征—    xdpyinfo 33828.7.2   获取有关窗口的信息 33828.7.3   观察X的事件—xev 340第29章   定制X Window系统 34129.1   使用X的字体和颜色 34129.1.1   字体初步 34129.1.2   字体命名 34229.1.3   观察特定字体的内容—xfd 34329.1.4   保存字体和位置 34329.1.5   例子:在你的服务程序中      增加新字体 34529.1.6   使用X的颜色 34629.2   定义和使用图形 34729.2.1   系统图形程序库 34729.2.2   交互编辑图形—bitmap 34729.2.3   编辑图形的其他方法 34929.2.4   定制根窗口—xsetroot 34929.3   定义应用程序的缺省选项—           Resources 35029.3.1   什么是资源 35029.3.2   XToolkit 35129.3.3   管理资源—资源管理器 35329.3.4   资源的类型—如何指定值 35829.4   实际使用资源 35929.4.1   在何处保存资源的缺省值 35929.4.2   在服务程序上保存缺省值—    xrdb 36329.4.3   常见的错误和修正 36629.5   定制键盘和鼠标 36729.5.1   实际使用转换 36829.5.2   转换—格式和规则 37429.5.3   转换规范中常见的问题 37729.6   键盘和鼠标—对应和参数 37929.6.1   键盘和鼠标映射—xmodmap 37929.6.2   键盘和鼠标参数设定—xset 38229.7   进一步介绍和定制uwm 38429.7.1   uwm的新特征 38429.7.2   定制uwm 38629.8   显示器管理器—xdm 39029.8.1   需要做些什么 39029.8.2   xdm 39129.8.3   xdm的更多信息 39229.8.4   uwm配置 395附录A   Gcc使用介绍 396附录B   安装X Window窗口系统 410

    标签: LINUX 系统分析 高级编程

    上传时间: 2013-11-10

    上传用户:changeboy

  • 嵌入式LINUX 电子教程全集

    嵌入式LINUX  电子教程全集 嵌入式系统出现于60年代晚期,它最初被用于控制机电电话交换机,如今已被广泛的应用于工业制造、过程控制、通讯、仪器、仪表、汽车、船舶、航空、航天、军事装备、消费类产品等众多领域。计算机系统核心CPU,每年在全球范围内的产量大概在二十亿颗左右,其中超过80%应用于各类专用性很强的嵌入式系统。一般的说,凡是带有微处理器的专用软硬件系统都可以称为嵌入式系统。   1. 嵌入式Linux系统就是利用Linux其自身的许多特点,把它应用到嵌入式系统里。   Linux做嵌入式的优势,首先,Linux是开放源代码的,不存在黑箱技术,遍布全球的众多Linux爱好者又是Linux开发者的强大技术支持;其次,Linux的内核小、效率高,内核的更新速度很快,linux是可以定制的,其系统内核最小只有约134KB。第三,Linux是免费的OS,在价格上极具竞争力。 Linux还有着嵌入式操作系统所需要的很多特色,突出的就是Linux适应于多种CPU和多种硬件平台,是一个跨平台的系统。到目前为止,它可以支持二三十种CPU。而且性能稳定,裁剪性很好,开发和使用都很容易。很多CPU包括家电业芯片,都开始做Linux的平台移植工作。移植的速度远远超过Java的开发环境。也就是说,如果今天用Linux环境开发产品,那么将来换CPU就不会遇到困扰。同时,Linux内核的结构在网络方面是非常完整的,Linux对网络中最常用的TCP/IP协议有最完备的支持。提供了包括十兆、百兆、千兆的以太网络,以及无线网络,Toker ring(令牌环网)、光纤甚至卫星的支持。所以Linux很适于做信息家电的开发。   还有使用Linux为的是来开发无线连接产品的开发者越来越多。Linux在快速增长的无线连接应用主场中有一个非常重要的优势,就是有足够快的开发速度。这是因为LInux有很多工具,并且Linux为众多程序员所熟悉。因此,我们要在嵌入式系统中使用Linux操作系统。   Linux的大小适合嵌入式操作系统——Linux固有的模块性,适应性和可配置性,使得这很容易做到。另外,Linux源码的实用性和成千上万的程序员热切其望它用于无数的嵌入式应用软件中,导致很多嵌入式Linux的出现,包括:Embedix,ETLinux,LEM,Linux Router Project,LOAF,uCLinux,muLinux,ThinLinux,FirePlug,Linux和PizzaBox Linux   相对,Linux的图形界面还相对较弱,但近年Linux的图形界面发展也很快,这也就不是问题。   2. 什么是嵌入式Linux   嵌入式linux 是将日益流行的Linux操作系统进行裁剪修改,使之能在嵌入式计算机系统上运行的一种操作系统。嵌入式linux既继承了Interlnet上无限的开放源代码资源,又具有嵌入式操作系统的特性。嵌入式Linux的特点是版权费免费;购买费用媒介成本技术支持全世界的自由软件开发者提供支持网络特性免费,而且性能优异,软件移植容易,代码开放,有许多应用软件支持,应用产品开发周期短,新产品上市迅速,因为有许多公开的代码可以参考和移植,实时性能RT_Linux Hardhat Linux 等嵌入式Linux支持,实时性能稳定性好安全性好。   3. 嵌入式Linux有巨大的市场前景和商业机会,出现了大量的专业公司和产品,如Montavista Lineo Emi等,有行业协会如Embedded Linux Consortum等,得到世界著名计算机公司和OEM板级厂商的支持,例如IBM Motorola Intel等。传统的嵌入式系统厂商也采用了Linux策略,如Lynxworks Windriver QNX等,还有Internet上的大量嵌入式Linux爱好者的支持。嵌入式Linux支持几乎所有的嵌入式CPU和被移植到几乎所有的嵌入式OEM板。   4.嵌入式Linux的应用领域非常广泛,主要的应用领域有信息家电、PDA 、机顶盒、Digital Telephone、Answering Machine、Screen Phone 、数据网络、Ethernet Switches、Router、Bridge、Hub、Remote access servers、ATM、Frame relay 、远程通信、医疗电子、交通运输计算机外设、工业控制、航空航天领域等。   5.如果分别让10位工程师给出嵌入式系统的定义,将得到10个不同的答案。一般来说,大部分的嵌入式系统执行特定的任务。我们假定最简单的嵌入式系统包括输入/输出功能,以及一些控制逻辑,该系统基于它的配置执行某些类型的功能。按照这个标准,可以认为一个包含实现控制逻辑74123计数器以及一个状态是一个嵌入式系统。也许可以补充说,该系统必须可通过存储在固件中的软件进行编程。这个新的嵌入式系统定义包括输入/输出(I/O),以及存储在系统固件中的控制逻辑。一个带有鼠标、键盘、网络连接并运行图形用户界面(GUI,graphical user interface)多任务操作系统的桌面计算机显然满足这些要求,但我们能认为它是一个嵌入式系统吗?   如果桌面计算机不是一个嵌入式系统,那么手持设备呢?它们有I/O功能,可以运行存储在固件中的控制逻辑。有人说,桌面计算机和手持设备都有通用计算机设备,可以运行软件来执行许多不同的任务,与之不同的是,嵌入式系统(例如,洗碗机控制器或飞行导航系统)主要是为特定任务而设计的。这种特定的功能限定使嵌入式设备有功能上的唯一性。如果是这样,为什么一些嵌入式系统设计成具有附加的功能,如存储在非易失性存储器中的程序,并且具有运行可以完成原始设计范围之外的任务的多任务操作系统的能力呢?   在过去,区分嵌入式系统和通用计算机比现在简单的多。例如,可以很容易地区分出一个基于8051的T1分幅卡嵌入式系统和一台Sun UNIX工作站。而现在,从功能方面很难区分一台Sun工作站和一个包含PowerPC以及32MB内存和16MB闪存的机顶盒。这样的机顶盒可以运行带GUI的多任务操作系统,可现场升级,可以同时运行多个程序(如视频控制器、数字录像和Java虚拟机),还可以进行安全的因特网在线交易。很难判断这种机顶盒是否是一个嵌入式系统。显然,硬件性能的提升和价格的下降使通用计算机和嵌入式系统之间的界限变得很模糊,技术的进步使得我们很难定义什么是嵌入式。

    标签: LINUX 嵌入式 电子教程

    上传时间: 2014-12-30

    上传用户:ljt101007

  • CYCK-401型气体综合分析仪

    该气体分析仪是我公司吸取国内外同类产品先进经验,独立开发完成的一种高科技产品,该产品采用了国外先进的氧传感器及红外二氧化碳传感器,配合现代的电子测量技术,使产品在测量精度上提高了一个档次,同时为了便于用户使用,整合了湿度传感器及温度传感器。 一、主要性能: 1、对氧气、二氧化碳、湿度、温度进行测量。 a、氧气含量的测定。采用英国City公司先进的氧传感器。 b、二氧化碳含量。采用芬兰维萨拉公司红外二氧化碳传感器。 c、湿度测量。本机集成了两路湿度测量功能,1路位于进气孔始端,另一路手持(可选)。采用法国Humirel公司产品。 d、温度测量。(可选)采用德国进口铂电阻温度传感器,以探针方式封装,用于测量果蔬内部温度。 2、采用便携式设计,集成了免维护电池及气泵,便于现场工作。 3、采用6寸液晶屏显示,显示内容直观,外观大方。 4、配有微型打印机,可打印样本数据。 5、能够保存250个样本数据。 6、可与电脑联机,把数据上传到电脑长期保存。 7、可对电池亏电,运行错误报警。 二、性能参数: 1、测量参数: a、氧气测量范围:0~25%,分辨率0.1%,精度0.2% b、二氧化碳测量范围:0~10%,分辨率0.1%,精度0.2% c、湿度测量范围:0~100%,分辨率0.1%,精度2% d、温度测量范围:-10~120℃,分辨率0.1℃,精度0.1℃(-10℃~+50℃) 2、整机尺寸:400MM x 160MM x 330MM

    标签: CYCK 401 气体 综合分析

    上传时间: 2013-11-23

    上传用户:tecman

  • MI1000多功能虚拟仪器简介

    MI1000是致远电子最新推出多功能虚拟仪器,揉合了日常电路调试过程中所需的信号产生、测量等多种功能。其构建了一个功能强大的闭环测试系统,既有数字、模拟信号的激励,亦有数字、模拟信号的检测,且逻辑分析仪还嵌入了常用信号的协议分析功能。四种功能有机地结合在一起,功能模块间可协同工作,控制简单,观测方便, 在有效地节约工作台面积的同时,也为信号调试提供了极具性价比的仪器解决方案。作为一款虚拟仪器,其充分利用了上位机强大的数据处理能力,为用户预留二次开发的程序接口。

    标签: 1000 MI 多功能 虚拟仪器

    上传时间: 2014-07-28

    上传用户:wangjin2945

  • 电脑音频虚拟仪器的设计与使用

    近年来电脑虚拟仪器的发展很快。在飞速发展的计算机技术支持下,“软件即仪器”的理念得到了充分的发挥。计算机加软件配合合适的AD/DA界面和传感器/控制器,就可以完成形形色色的传统仪器的所有功能,应用领域遍及现代科技的各个方面,大有星火燎原之势。而且由于其成本较低,升级容易换代快,维护简单,特别是数据的采集、分析、管理做到了智能化,大大提高了工作效率,在科研、计量、工控、自控等应用上特别受青睐,发展势头已将传统仪器远远抛在了后面,并将持续下去。但是一般的虚拟仪器对于普通电子爱好者来说仍然是太昂贵了,而且由于通用的虚拟仪器要考虑高速信号,往往采用高速低分辨率的AD/DA芯片,一般分辨率只能达到8至12位,这对于电子爱好者常用的音频领域恰恰不够精确。在现代多媒体电脑上,声卡已经成为一个必不可少的重要组成部分,它给我们提供了丰富多彩的视听娱乐和有声交流功能,使“多媒体”的名称名副其实。但是你是否知道,利用声卡高精度的AD/DA变换界面,加上合适的软件,就可以构成功能十分强大的音频(超音频)虚拟仪器呢?并且,如果使用足够好的声卡,配合比较简单的扩展设备和传声器/放大器,再选用本文介绍的软件,将是目前音频虚拟仪器的最强、最佳选择。限于篇幅和时间,本文主要介绍一些原则性的测试方法,期望起到抛砖引玉的作用,给有兴趣的爱好者引个路。具体的应用还需要大家不断学习、探索,详细的软件应用方法将在2004年《无线电》杂志以及本站连续刊登介绍。1.声卡的选择声卡担负着模拟信号进出大门的重任,其性能如何,对虚拟仪器的精度有着最直接的影响,因此选择合适的声卡是非常有必要的。从分辨率看,一般电脑多媒体声卡为16位,取样频率为44.1/48KHz,而现在的主流中高档声卡大多具备了96KHz/24bit的取样精度,好的专业声卡甚至能达到输入/输出兼备的192KHz/24bit取样精度。从音频处理的技术指标看,许多质量良好的廉价声卡已经超越了一般模拟仪器,而高档的专业声卡更是具有极其优异的指标。这也不奇怪,因为专业声卡本身就是为专业的录音、监听、音频处理而设计的,是音频传播的门槛,理应具有良好的素质。例如,顶级的专业声卡频率响应可以从几Hz平坦地延伸到数十KHz至接近100 KHz,波动在正负0.1dB以下,噪声水平在-110dB以下,动态范围大于110dB,总谐波失真和互调失真远小于万分之一,通道分离度能达到100dB……这样的声卡已经超越了绝大多数模拟设备的指标,足以应付最苛刻的应用要求,也足以胜任高精度电脑音频虚拟仪器的要求,乃至于数十KHz的超声波研究。当然了,顶级的专业声卡价格昂贵,一般相当于一套主流电脑的价格,大多数业余爱好者不能或不愿承受,但比起模拟测试仪器来说还是便宜很多,而且软件升级没有限制。不过近来电脑音频设备市场看好,许多专业声卡厂家推出了“准专业”声卡进军多媒体市场,素质良好,支持多声道,价格也便宜很多,用途广泛,很适合业余爱好者选用。如果再“抠门”一点,精选百元级优质声卡也是可以应付一般的声学测量的,因为我们知道声学测量的瓶颈一般在于传声器而不是电路。当然这时最好对声卡模拟电路进行“打摩”如更换运放和输出电容等,以得到更好的效果。介绍一些具体的声卡品牌。顶级声卡首选Lynx Two/Lynx 22,据笔者所知是目前世界上指标最优秀的声卡,价格一千美元左右。类似的其它专业声卡有RME,比Lynx还贵(主要因为支持的声道数多)。另外如果单为测试用,一些专业的测试用AD/DA界面设备也可用(例如Sound Technology公司的产品),不过可能更昂贵,而且功能少,指标也未必更强,但好处是可以找到USB接口型的,可配合笔记本电脑使用。这类声卡可以进行精确的电路测试,如作为其它声卡、碟机、功放等设备的输入输出参考标准进行测量,声学测试更是不在话下。

    标签: 电脑 音频 虚拟仪器

    上传时间: 2013-10-13

    上传用户:zhengjian

  • 单片机及接口技术考试试卷及答案详解

      电子发烧友网:本资料是关于单片机及接口技术这门课程的期末考试试卷及答案的详解。          8.当需要从MCS-51单片机程序存储器取数据时,采用的指令为( )。   a)MOV A, @R1 b)MOVC A, @A + DPTR   c)MOVX A, @ R0 d)MOVX A, @ DPTR   二、填空题(每空1分,共30分)   1.一个完整的微机系统由 和 两大部分组成。   2.8051 的引脚RST是____(IN脚还是OUT脚),当其端出现____电平时,8051进入复位状态。8051一直维持这个值,直到RST脚收到____电平,8051才脱离复位状态,进入程序运行状态,从ROM H单元开始取指令并翻译和执行。   3.半导体存储器分成两大类 和 ,其中 具有易失性,常用于存储 。

    标签: 单片机 接口技术 试卷

    上传时间: 2015-01-03

    上传用户:wfl_yy

  • 洒水控制器

    洒水控制器,MCU用的是EMC78862,带液晶驱动,能控制6通道洒水,绝对经典,要原理图的兄弟发邮件到:micheal23@sohu.com 需注明需要洒水控制器的原理图即可,希望大家多交流,让中国的电子事业越来越牛B

    标签: 控制器

    上传时间: 2015-03-29

    上传用户:cazjing

  • 在这里详细介绍常用的电路仪器使用方法

    在这里详细介绍常用的电路仪器使用方法,对一些刚接触电子的初学习者是难得资料

    标签: 详细介绍 电路 仪器

    上传时间: 2014-01-22

    上传用户:Shaikh

  • Easy_Buy是一个在线销售系统

    Easy_Buy是一个在线销售系统,是一个B-C模式的电子商务系统,由前台的B/S模式购物系统和后台的C/S模式的管理系统两部分组成。该电子商务系统可以实现会员注册、浏览商品、查看商品详细信息、选购商品、取消订单和查看订单等功能。

    标签: Easy_Buy 销售

    上传时间: 2015-04-28

    上传用户:luke5347

  • 原文书名: 《Writing Clean Code ── Microsoft Techniques for Developing Bug-free C Programs》 Steve maguir

    原文书名: 《Writing Clean Code ── Microsoft Techniques for Developing Bug-free C Programs》 Steve maguire 著 Microsoft Press 出版 所据译本: 《编程精粹 ── Microsoft 编写优质无错C 程序秘诀》 姜静波、佟金荣 译,麦中凡 校 电子工业出版社 出版 整理: Solmyr:序、某些背景、命名约定、引言、第1、2、3、8 章、后记、参考文献 iliad: 第4、5 章 lavos: 第6 章、附录A warz: 第7 章 chief: 附录B、C

    标签: Developing Techniques Microsoft Bug-free

    上传时间: 2013-11-25

    上传用户:stampede