首先建立虚拟设备库,对虚拟设备进行分类构建,根据拖放命令,将虚拟设备调入虚拟场景并实时生成,并能在保证加载速度的情况下对Virtools和Web Service中实现实时生成。
上传时间: 2014-12-30
上传用户:13160677563
本书介绍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
上传时间: 2013-11-10
上传用户:changeboy
随着射频技术的日益成熟,文中提出了一种无线的环境监测系统。本系统分为1个主机和2个从机,从机利用传感器采集现场房间温度、湿度和空气污染程度等环境参数,利用LCD12864实时显示,并通过nRF905无线通信模块发送采集的环境参数。在主控室主机和计算机终端串口相连,在计算机上通过监测软件实时显示各个房间的各种环境参数,并且还具有报警功能。该系统性能稳定,抗干扰能力强,搭建方便,在现实生活中有很强的实用性。
上传时间: 2013-12-29
上传用户:xcsx1945
主要介绍了千兆位以太网技术及其在多速率局域网的组网设计、优化方案和运用多种网络技术的千兆位以太网组网工程实例。全书共9章,内容包括OSI参考模型与TCP/IP协议简介,以太网基础知识、拓扑结构,交换式以太网,虚拟局域网(VLAN),VLAN间通信与路由选择,千兆位以太网技术的大型局域网设计原则,综合布线系统设计,基于千兆位以太网技术的大型园区网工程及实例。
上传时间: 2013-10-15
上传用户:lanhuaying
介绍了一种以FPGA为核心控制部件、运用超声波测距技术在空间中形成虚拟琴键,使用分频方式实现7个音阶的虚拟电子琴。经过ModelSim仿真测试与实物调试,该电子琴能较好地实现音乐弹奏功能,结构简单,娱乐性强,具有一定的市场推广价值。
上传时间: 2013-11-22
上传用户:问题问题
介绍了一种以FPGA为核心控制部件、运用超声波测距技术在空间中形成虚拟琴键,使用分频方式实现7个音阶的虚拟电子琴。经过ModelSim仿真测试与实物调试,该电子琴能较好地实现音乐弹奏功能,结构简单,娱乐性强,具有一定的市场推广价值。
上传时间: 2013-11-09
上传用户:hanwu
首先介绍了对信号进行频谱分析的原理,并根据软件无线电和虚拟仪器的思想,基于NI(National Instruments)的PXI硬件模块和LabVIEW软件平台,实现了100 kHz~2.7 GHz频率范围内的宽带频谱扫描、频率测量、带内功率测量、邻波道功率测量、信号带宽测量等功能。最后,利用该测试平台对实际信号进行测量,并与频谱分析仪的测量结果进行比较,验证了该方案的有效性。
上传时间: 2013-11-02
上传用户:kaje
传统的通信类实验课程需要购置大量的仪器设备用于教学,在操作过程中设备、线路的故障和老化又会影响实验进度。针对《通信原理》、《现代通信技术》等实验课的教学现状,本文在Labview2009的平台上开发一个远程虚拟通信实验室系统,可根据主要知识点自主设计扩展实验项目,学生可以在任何时候通过网络访问该系统进行实验,加深学生对理论知识的理解,提高学习效率,也可为高校节约大量资金。文中以线性分组码编解码系统和2FSK调制解调系统为例,详细介绍了该系统的具体设计和实现。
上传时间: 2013-11-13
上传用户:dljwq
针对大型构件内部微损伤难以及时发现排除,给生活生产造成安全隐患的现状,基于波包提取技术,利用波包的虚拟时间逆传播,设计了一种新的传感器阵列,并在理论上推导了该传感器阵列二维成像的运算公式,最后利用MATLAB编程模拟仿真了用该传感器阵列进行无损检测时的二维成像结果,结果表明其成像结果的综合精度可以达到98.7%,因此用该传感器阵列进行大型构件内部微损伤的探测对于发现安全隐患、排除安全隐患具有重大的指导意义。
上传时间: 2013-11-12
上传用户:libinxny
近年来电脑虚拟仪器的发展很快。在飞速发展的计算机技术支持下,“软件即仪器”的理念得到了充分的发挥。计算机加软件配合合适的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