已阅读5页,还剩76页未读, 继续免费阅读
(信号与信息处理专业论文)数字音视频流平台开发.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
中文摘要 随着电子、微电子、计算机和通信技术的发展,近年来,图像和声音信息 的数字处理与传输技术取得了长足进步。运动图像及其伴音通用编码标准( m p e g 标准) 的制定,极大地促进了相关技术的规范化,为数字视频技术进入实用阶 段,奠定了坚实基础。 目前,我国广播电视系统,正处在由模拟技术向数字技术转变的过程。在 这个过程中,对数字电视数据流平台的需求与日俱增。本课题在前几届研究生 相关工作的基础上,配合硬件板卡,完成了l i n u x 下,m p e g - 2t s 输出p c i 总 线插卡驱动程序的开发。该码流输出系统可按不同码率,将存储在硬盘中的测 试、评价、演示用t s 数据流,以不同输出方式,转换成码流送出。论文工作中, 开发了人机交互界面,用户通过简单的鼠标操作,即可完成输出码流的操作。 在码流回放中,用户可进行“暂停”和“断点播放”特技操作。本文开发了t s 预处理程序,使系统在码流循环播放模式下,首尾无缝粘结,并实时更新定时 参数。由于该系统具有操作简单、方便,码流播放连续、无间断等优点,因此 适用于数字电视设备和系统的研制、生产、调试和测试,也可用做商场展示数 字电视接收机或机顶盒的信号源,或为维修数字电视设备和系统提供信号。 我国数字电视广播事业即将步入快速发展阶段,数字电视信号的生成、分 析、编辑和后期处理,已逐步成为不可缺少的环节。本论文的第二部分工作是 在课题组多年教学、科研工作的基础上,开发一款“数字音视频流多媒体编辑 工作站”。工作站针对常用的多媒体数据流文件,进行多种处理:数字音视频信 号的编解码;单路节目和多套节目的复用:不同m p e g 2 系统流的转换;图像 文件格式的转换:m p e g 2 、m p e g 一4 、x v i d 、h 2 6 3 等不同标准码流的转换; 码率、空间分辨率、时间分辨率的变换:数据流的分析;分量信号或数据流的 播放;图片浏览等。由于系统采用模块化架构,可扩展性较强。另外,为了保 护累积的研究成果,设计了工作站的防盗版保护措施。 码流回放系统和数据流工作站,是全组师生多年工作的结果,本人只承担 了其中一部分工作。这两个平台的开发,若能为课题组今后研究工作添砖加瓦, 对我国数字音视频技术实用化起到微薄作用,那么本人将深感欣慰。而这首先 归功于数字视频技术社会需求的推动,得力于协作单位的支持,导师的严格要 求和深入指导,实验室同学们的合作,网友们的交流,以及亲友的支持。 本论文工作得到天津市科技发展计划项目( 0 2 3 1 0 0 6 1 1 ) 资助。 关键词:数字电视m p e g 驱动程序传输流系统集成 a b s t r a c t i nr e c e n t y e a r s ,a l o n gw i t h t h ed e v e l o p m e n to f t h e e l e c t r o n i c s ,m i c r o e l e c t r o n i c s , c o m p u t e ra n dc o m m u n i c a t i o nt e c h n o l o g y , d i g i t a lp r o c e s s i n ga n dt r a n s m i s s i o no f i m a g ea n ds o u n di n f o r m a t i o nh a v eb e e ni m p r o v e d t h ee s t a b l i s h m e n to ft h em o v i n g p i c t u r ea n di t st o n eg e n e r a lc o d i n gs t a n d a r d ( m p e g 一2 、i m p r o v e st h es t a n d a r d i z a t i o n o f t h e r e l a t i v e t e c h , a n d i tg i v e s a s t e a d y b a s e f o r t h e u s i n g o f d i g i t a l v i d e o t e c h n o w a d a y s ,o u rb r o a d c a s ta n dt e l e v i s i o ns ”t e mi si nt h ep r o c e s so fc h a n g i n g f r o ma n a l o gt od i g i t a l i nt h i sp r o c e s s ,t h ec o m m a n do f d i 百t a ls o u r c ei n c r e a s e s t h i s p r o j e c tw h i c h i sb a s e do nf o r m e rg r a d u a t e sr e l a t i v ep r o j e c t sa c h i e v e sp c ic a r dd r i v e o fm p e g 一2t so u t p u ts y s t e mu n d e rli n u x t h i ss y s t e mc a l lt r a n s i td a t as t r e a mt o c o d es t r e a mt oe x p o r tw i t hd i f f e r e n tr a t e s i nt h e p r o j e c t ,id e v e l o p e d af r i e n d s h i p i n t e r f a c e ,a n dc u s t o m s c a i le x p o r tc o d es t r e a m e a s i l yw i t hs i m p l e m o u s ea c t i o n w h e n t h es t r e a mi s r e p l a y i n g ,c u s t o mc a n p a u s e o r s k i p i t a t t h es r l i l et i m e ,w i t h p r e c o n d i t i o n i n go f t ss t r e a m ,t h es y s t e mc a r le x p o r ts t r e a mc i r c u l a r l yu n d e rc i r c u l a r m o d e ,a n di tc a l lu p d a t et h et i m ep a r a m e t e r i nr e a lt i m e b e c a u s eo f i t ss i m p l e ,i tc a n a d a p tt ob e i n gu s e di nr e s e a r c h i n g ,p r o d u c i n g ,a n dt e s t i n gd i g i t a lt ve q u i p m e n t sa n d s y s t e m s i ta l s oc a np r o v i d es i g n a ls o u r c e f o rd i g i t mt v r e c e p t o ro rs t b ,a n d s oo n s i n c eo u rd i g i t a lb r o a d c a s ts y s t e mi sd e v e l o p e dr a p i d l y , t h ea n a l y s i s ,e d i ta n d p r o c e s s i n go fd i g i t a ls i g n a l sb e c o m e t h eh o t s p o tt o d a y b e c a u s eo ft h ec o m m a n do f n o n - l i n e a re d i t o r ,w ed e v e l o pa m u l t i - m e d i ae d i ti n t e g r a t i v ew o r ks t a t i o n ,w h i c hi s b a s e do i lo u rl a b st e c ha n dr e s e a r c hi nm a n yy e a r s t h i ss t a t i o nc a r lh a n d l en o r m a l m u l t i m e d i as t r e a mi nc u r r e n tm a r k e t i tc a n c o d eo rd e c o d ea u d i oa n dv i d e o ,a l s oc a n c h a n g e b e t w e e ns t r e a ma n dp i c t u r e ,c h a n g ea m o n gd i f f e r e n t s t r e a m ss u c ha s m p e g 2 、m p e g 4 、h 2 6 3 、h 2 6 4a n d s oo n ,a n a l y z ea n d p l a y d i f f e r e n ts t e a m s ,v i e w d i f f e r e n tp i c t u r e s a tt h es a l n et i m e ,t h es y s t e m i s e x p a n s i b i l i t y , m a i n t a i n a b i l i t y , c o n v e n i e n c e ,a n ds a f e t y t h et w o s y s t e m 【s a i d b e f o r ea r ca sar e s u l to fm a n yy e a r sw o r k o f t h ew h o l el a b a n dia mc h a r g e dw i t hap a r t t h i st h a n k sf o rt h ed e v e l o p m e n t o f d i g i t a lv i d e o t e c h a n dt h a n k sf o rm yt u t o r , c l a s s m a t e s ,f r i e n d sa n dm yf a m i l y , t h ep a p e ri ss u p p o r t e db yt i a n j i ns c i e n c ea n dt e c h n o l o g yd e v e l o p i n gp r o j 。 ( 0 2 3 1 0 0 6 1 1 ) k e yw o r d :d i g i t a lt v , m p e g , d r i v e r , t r a n s f o r ms t r e a m ,s y s t e mi n t e g r a t e 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作和取得的 研究成果,除了文中特别加以标注和致谢之处外,论文中不包含其它人已经发 表或撰写过的研究成果,也不包含为获得墨注盘堂或其它教育机构的学位或 证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论 文中作了明确的说明并表示了谢意。 学位论文作者签名:强苏签字日期:。汀年0 月旧日 学位论文版权使用授权书 本学位论文作者完全了解叁盗盘鲎有关保留、使用学位论文的规定。 特授权鑫洼盘堂可以将学位论文的全部或部分内容编入有关数据库进行检 索,并采用影印、缩印或扫描等复制手段保存、汇编以供查阅和借阅。同意学 校向国家有关部门或机构送交论文的复印件和磁盘。 ( 保密的学位论文在解密后适用本授权说明) 学位论文作者签名:彩敬 导师签名公力绻 签字日期:o 佃妒年,月r g 日签字日期:细矽年工月,7 日 1 课题的目的和意义 前言 数字电视是全面采用数字信号处理和传输技术的电视系统。它除了在图像 质量、伴音质量和观看效果等方面优于传统的模拟电视系统外,所需传输带宽 也只相当于模拟电视系统的四分之一甚至更窄。数字电视的实用化,会产生良 好的社会效益和巨大的经济效益。上世纪9 0 年代以来,世界许多国家不仅相继 投入大量人力物力进行研究、试验,而且在大力推进其实用化。在技术上,图 像及其伴音通用编码标准( m p e g 一2 ) 的制定也极大促进了数字电视技术和产业 的发展。 在数字电视产业方面,全球各大相若公司都在积极开拓。各主要半导体芯 片厂商、计算机公司和软件服务商纷纷推出数字电视产品软硬件解决方案。各 大电子公司迅速推出了多款数字电视接收机和机顶盒。市场争夺方兴未艾。 近年来,我国在数字电视方面也取得了很大成就。在卫星数字电视广播方 面,中央和各省市电视台所有的电视节目几乎均采用d v b s 标准传送。在有线 电视广播方面,用户己达9 0 0 0 万,规模宏大的光缆干线网和支线网已经广泛采 用数字传输方式,目前不少地区正在策划提供基于d v b - c 标准的电视广播,并 使之得以兼容提供模拟电视、s d t v 和f l d t v 等项服务。在地面数字电视广播方面, 试验、试播和产业化工作也取得了很大的进展。 尽管各种数字电视系统的标准不完全相同,但视频信号都是基于m p e g 一2 编 码标准。在研制、生产、测试、维修数字电视设备和监测电视系统运行等的过 程中,集m p e g 一2 传输流生成、输出、截取等于一体的信号发生和测试系统必不 可少。同时,由于数字电视的标准不完全相同,而在同一标准内部的各种多媒 体流文件和图片文件之间在格式上也存在较大的差异,因此,在数字电视的研 发单位急需一款集不同标准之间相互转换、流媒体文件之间相互转换、图片文 件之间相互转换以及流媒体的分析、播放、测试、编辑于一体的编辑平台。目 前,国外一些厂商虽然已经推出相关仪器,但不完全符合中国需求,售价也极 高:国内某些研究、开发单位也在试制或推出相应系统的原型,但功能并不能 满足各方面的需求。 基于课题组已有研究工作的基础,为满足自身进一步研究工作需要,应与 有关厂家合作研制m p e g 一2t s 生成、输出、截取的系统和数字文件的后期编辑、 转换、播放、分析系统。本课题首先进行了m p e g 一2t s 流信号发生系统的构建: 包括系统定制、p c i 板卡驱动、界面设计和t s 流预处理的工作;而后进行了多 媒体编辑体化工作站系统的构建:包括界面设计、模块集成、图片浏览器和 媒体播放器的设计以及系统安全设计等。 2 试验系统的构成 本试验系统包括两个平台的构建。 1 ) m p e g 一2t s 流信号发生系统: ( 1 ) 系统选择:定制l i n u x 系统。 ( 2 ) 界面设计:l i n u x 下g n o m e g t k + 完成用户界面设计的编程任务。 ( 3 ) 驱动程序的设计:采用l i n u x 下字符设备驱动程序的开发。 ( 4 ) t s 流预处理:完成t s 流时间参数、p s i 信息的更新和流文件的头尾 处理等,使得系统能完成t s 流不间断的循环输出。 2 ) 数字音视频多媒体流编辑工作站: ( 1 )系统选择:w i n d o w s 2 0 0 0 。 ( 2 ) 界面的设计:用v c + + 6 。0 完成界面设计任务。 ( 3 )系统集成:完成软件模块向系统中添加、编辑。 ( 4 ) 系统功能:该工作站能针对目前市场上常见的多媒体流文件进行针 对性的处理:音视频的编解码;各种流媒体和图片文件之间的相互转换;m p e g 一2 、 m p e g 4 、h 2 6 3 、h 2 6 4 等不同协议流文件之间的相互转换;各种流媒体的分析、 播放,以及各种图片的浏览器等等。同时,该系统的可维护性和可扩展性较强, 操作较方便、简洁,而且具备防盗版等安全防护措施。 3 论文的构成 本论文也采用试验系统构成的方式逐一介绍系统的每一个部分: 第一部分:m p e g 一2t s 流信号发生系统: 1 ) l i n u x 操作系统系统以及定制l i n u x 操作系统。( 第一章) 2 ) g n o m e g t k 开发用户界面:结合代码片断,简单的介绍了用g n 删e g t k 开发用户界面的流程。( 第二章) 3 ) l i n u x 下驱动程序的开发:驱动程序的开发流程、结构,以及相关函数 的介绍。( 第三章) 4 ) t s 流无缝粘接和循环播放的原理:( 第四章) 第二部分:数字音视频多媒体编辑工作站 1 ) 工作站集成环境的创建:介绍了v c + + 6 ,0 s t u d i o ,结合程序片断介绍了 用v c + + 开发用户界面的流程。( 第七章) 2 ) 人机交互技术;介绍了开发试验系统界面所涉及的相关技术。( 第八章) 3 ) 播放器和图片浏览器的制作。( 第九章) 第一章l i n u x 操作系统 第一章l i n u x 操作系统 1 1 k i n u x 操作系统概述 1 1 1 什么是k i n t l x 操作系统 l i n u x 是一个自由传播的u n i x 类型内核的具体实现,而内核指的是操作系 统底层的核心程序代码。因为l i n u x 本身脱胎于u n i x 系统,所以l i n u x 程序与 u n i x 程序是十分相似的。事实上,几乎所有的u n i x 编写的程序都可以在l i n u x 下通过编译和运行。此外,许多为商业化u n i x 操作系统版本而销售的商业化应 用软件其二进制形式也几乎可以在不加任何修改的情况下直接在l i n u x 系统上 运行。l i n u x 是由l i n u st o v a l d s 在赫尔辛基大学开发出来的,他通过因特网得 到来自u n i x 程序员的大力协助。它最初只不过是一个脱胎于a n d yt a n e n h a u m 的m i n i x 操作系统( 一个小的u n i x ) 的个人爱好,但是逐步发展成为一个独立 完整的u n i x 系统。l i n l l x 内核没有使用任何来自a t & t 或其它专利源代码的代码。 1 1 2l i n u x 发行版本 前面已经提到过,l i n u x 事实上只是一个操作系统的内核。我们可以设法获 得该内核的源代码,编译并安装它们,然后再通过获取和编译其它自由传播的 软件程序而构成一个完整的u n i x 风格的系统。尽管这类安装的完整组成通常并 不仅限于这个操作系统内核,但是它们一般都被称作l i n u x 系统。从源代码开 始建立一个l i n u x 系统是一个不小的工程,幸运的是已经有许多人开始构造“发 行版本”,它不仅包含了刚才提到的操作系统内核,还包含着许多程序设计工具 和命令程序。其中通常会实现有一个x 窗口系统,而x 窗口系统是u n i x 系统上 最常见的图形化环境。比较有名的发行版本有r e d h a t ,s l a c k w a r e ,s u s e ,d e b i a n 和t u r b ol i n u x 等等,当然还有许多不那么有名的。而本试验平台是利用的 r e d h a t 7 2 。 1 1 3l i n l l x 应用程序 l i n u x 下的应用程序主要是由两种特殊类型的文件来代表:可执行文件和脚 本程序。可执行文件是能被计算机直接执行的程序,相当于d o s 中的 e x e 文件。 脚本程序则是一组指令,这些指令将由另外一个程序( 比如说是解释器) 来执 行,它相当于d o s 中的牢b a t 文件或者解释型b a s i c 程序。当登录进入到某个 u n i x 系统中去的时候,和我们打交道的是一个s h e l l ( 命令解释器) 程序( 通 常就是s h ) ,由它负责调用执行其它的程序,它的工作原理和d o s 中的 c o m m a n d c o m 是样的。它在一组给定的子目录集合里,按照给出的文件名查找 到与之同名的那个文件,并把它当作打算执行的程序。将搜索的那些子目录都 被保存在一个名为p a t h 的s h e l l 变量里,这和d o s 下的情况差不多。搜索路径 可以对这个路径进行增减) 是由系统管理员预先配置好了的,它通常包含着用 来保存系统程序的几个标准场所,其中包含: * b i n二进制文件子目录,一般用来保存引导系统用的程序。 * u s r b i n用户级二进制文件子目录,用来保存可供一般用户使用的标 准程序。 $ u s r l o c a l b i n 本地二迸制文件子目录,一股用来保存某种安装情况下的程 序。 1 1 4c 语言编辑器和编译器 在一个典型的l i n u x 上有许许多多的编辑器可供选用。有不少的用户喜欢 v i 编辑器。但是我还是喜欢用e f i l a c s ,这是一个功能强大的编辑器。学习e m a c s 的方法很简单,启动它以后按下“c t r l - - h ”组合键,然后按下表示教学的字母 t ( 英文t u t o r i a l 的第一个字母) 。e m a c s 的使用手册完全是在线式的。按下 “c t r l h ”组合键再按下i7 ( i n f o r m a t i o n ) 可以查看它的子命令信息。 在该项目的整个过程中主要使用的是g n u ( g e n e r a lp u b l i cl i c e n s e ) 的c 语言编译器g c c ,因为它是和l i n u x 发行版本一起提供的,而且它支持c 语言 的a n s i 标准语法。 1 2 定制l i n u x 操作系统 与g i n d o w s g x w i n d o w 2 0 0 0 w i n d o w s x p 这些常用的操作系统一样,r e d h a t 7 2 也是一个具有良好用户界面的l i n u x 操作系统。但典型安装后的l i n u x 操作系 统并不能完全适合该项目的试验平台。该试验平台要求操作系统具有以下特点: 操作系统汉化、启动速度快、可以自动登录、可以自动加载模块和启动一个应 用程序。因此,定制l i n u x 是必要的。下面详细介绍如何定制l i n u x 系统a ( 本 文中的l i n u x 如果没有特指,就代表r e d h a t 7 2 ) 1 2 1 汉化l i n u x 操作系统 1 2 1 1 安装 在安装r e d h a t7 2 的时候,如果对系统不是很熟悉,几乎是第一次安装, 那建议尽量缺省安装。但为了支持中文,在语言选择的时候,除了选择缺省的 e n ( u s a ) 外,还选取c h i n e s e ( p r c ) ,并且把缺省语言改为中文;另外,在选 择安装包的时候,选取e v e r y t h i n g ( 这样需要大约3 g b 空间,加上s w a d 需要的 空间,最好有4 g 硬盘) 。 在选择桌面环境的时候,我一直选用的是g n o m e 。这主要是因为本系统的软 件界面的开发环境选择的是g n o m e g t k + ,而且g n o m e 对中文的支持也很好。这 种选择下,k d e 也不成问题( 但是在软件界面的开发选择上就不能用g n o m e g t k + ) 了。使用d e s kg n o m e ( k d e ) 可以在两个桌面环境之间来回切换。 完全装好系统后,在第次进入g n o m e 的时候,需按系统给的向导设置好 中文环境。于是可以在g n o m e 中看到比较难看的中文字体了,字间距很大,不 很美观。 1 2 1 2 安装字体 首先,要理解x 的字体引擎。x 支持的t r u e t y p e 字体( 一种可放缩字体) 主 要有四种引擎:f r e e t y p e ,x t t ,x f s 和x f t 。其中f r e e t y p e 和x t t 是x 的内 部模块,使用的都是f r e e t y p e 渲染引擎。x f s 和x f t 是外部服务程序。x f s 是系统级的字体服务程序,也可以作为x 的内部模块,使用的是x 内部的 f r e e t y p e 2 。x f t 和其它类库一样,只有被调用的对候才被加载。其中只有x f t 才支持a n t i a l i a s 。 这里有必要讲讲f r e e t y p e 。e r e e t y p e 是开源字体渲染引擎,并不只为x 设 计。它的功能就是读取t r u e t y p e 字体信息,如大小,分辨率,编码等,然后渲 染成所需的位图数据输出。f r e e t y p e 现在的版本是2 x ,与i ,0 相比,最大的 差别就是加入了抗锯齿功能。下面来介绍如何汉化系统。 首先还是把w i n d o w s 2 0 0 0 9 x x p 下w i n d o w f o n t s s i m s u n t t f 拷贝到 u s r s h a r e f o n t s d e f a u l t t r u e t y p e 目录中去,在那个目录中运q t # t t m k f d i r f o n t s d i r ,看看f o n t s ,d i r 中关于s i m s u n 的项是不是有了g b 2 3 1 2 1 9 8 0 0 了, 如果没有,就修改一下,如下所示:将 s i m s u n t t f m i s o s i m s u n m e d i u m r n o r m a l 00 0 0 一p 一0 一i s 0 8 8 5 9 0 s i m s u n t t f m i s c s i m s u n - m e d i u m r n o r m a l 00 0 0 一p 一0 一i s 0 8 8 5 9 1 5 第一章l i n u x 操作系统 改为 s i m s u n t t f m i s c s i m s u n m e d i u m r n o r m a l 0 0 0 一o - p 一0 一g b 2 3 1 21 9 8 0 0 s i m s u n t t f m i s t s i m s u n - m e d i u m r n o r m a l 0o o 一0 一p 一0 一g b k - o 再把f o n t s d i r 复制为f o n t s s c a l e ,覆盖f o n t s s c a l e 就可以了。这样字体就 安装完毕了。 然后修改x f 8 6 c o n f i g 一4 。在s e c t i o n “f i l e s ”下面增加一行: f o n t p a t h “u s r s h a r e f o n t s d e f a u l t t r u e t y p e ” 这一行不能放在f o n t p a t h “u n i x :7 1 0 0 ”的后面,否则系统就不是矢量字体, 而成了点阵字体了。再到s e c t i o n “m o d u l e ”中增加一行: l o a d “x t t ” 这一行是专门用来支持矢量字体的。 最后到g n o m e 中,修改字体为s i m s u n ,就得到非常漂亮的m s 宋体了。如果看到 的不太对头,就重新启动一下x s e r v e r 。 1 2 1 3 启动输入法 7 2 缺省安装时,把c h i n p u t a d 安装在u s r i i b c h i n p u t 中,而该文件中 的b i 9 5 字体确找不到,导致中文输入不能使用。修改下这几行( 结果为) : c h i n p u t g b l o c a l e = z b c n g b 2 3 1 2 c h i n p u t b i g s l o c a l e = z hc n g b 2 3 1 2 c h i n p u t g b f o n t = 一术一术一丰一木一半一一术一半一木一水一术一木一g b 2 3 1 2 1 9 8 0 0 c h i n p u t b i g s f o n t = 一书一丰一年一率一书一一丰一书一丰一丰一丰一车一g b 2 3 1 2 ,1 9 8 0 0 这样就好了。这个文件是用t a b 来分隔的。运行c h i n p u t ,现在就能出来绿色的 o k 标志了。打开一个k e d i t ,用c t r l + s p a c e b a r 切换,此时,一个具备漂亮中 文字体和输入法的g n o m e 就配置完成了。 1 2 2 加快系统的启动速度 为了加快系统的启动速度,主要采用编译内核的方法,此方法便捷,灵活, 而且对进一步了解l i n u x 操作系统内核很有帮助。 下面简单的介绍一下编译内核的基本方法。在编译内核之前,首先要明确 一个概念,即什么是引导系统,什么是1 i l o ,什么是g r u b ,它们有什么区别和 联系? 众所周知,计算机的最初启动是由b i o s 控制的,在对一些硬件( 如:内存、 第一章l i n u x 操作系统 键盘等) 初始化之后,它会试图加载硬盘的主引导记录( m b r ) 或软盘的引导扇 区。m b r 可通过两种方式运行,其一是定位到活动分区并加载相应的引导扇区, 然后将控制权移给此引导扇区,由引导扇区完成该分区内操作系统的基本组件 的加载;其二是直接从一指定分区中加载信息,并通过它装入任一分区的操作 系统,诸如l i l o 、0 s 2b o o tl o a d e r 等引导加载程序都可以配置成这种方式。 和l i l o 一样,g r u b 能够识别文件系统,g r b u 能够理解内核的可执行文件 格式,这样就可以不用关心内核文件的磁盘定位,而只需通过文件系统便可以 找到内核文件。g r u b 比l i l o 能够理解更多的文件系统类型,更多内核可执行文 件格式,这样它就能够直接定位和引导不同操作系统的内核。关于支持大硬盘 问题,现在大多数l i n u x 发行版本的l i l 0 都存在:根分区( b o o t 分区) 不能分 在超过1 0 2 4 柱面的地方,一般是在8 4 g 左右的地方,否则1 i l o 不能安装,或 者安装后不能正确引导系统。而g r u b 就不会出现这种情况,只要安装时大硬盘 是在l b a 模式下,g r u b 就可以引导根分区在8 g 以外的操作系统 了解了1 i n u x 系统的启动,下面来介绍l i n u x 下内核的编译方法。l i d u x 作 为一个自由软件,在广大爱好者的支持下,内核版本不断更新。新的内核修订 了旧内核的b u g ,并增加了许多新的特性。如果用户想要使用这些新特性,或想 根据自己的系统度身定制一个更高效,更稳定的内核,就需要重新编译内核。 通常,更新的内核会支持更多的硬件,具备更好的进程管理能力,运行速度更 快、更稳定,并且一般会修复老版本中发现的许多漏洞等。经常性地选择升级 更新的系统内核,是l i n u x 使用者的必要操作内容。 为了正确的合理地设置内核编译配置选项,从而只编译系统需要的功能的 代码,一般主要有下面四个考虑: 一自己定制编译的内核运行更快( 具有更少的代码) 一系统将拥有更多的内存( 内核部分将不会被交换到虚拟内存中) 一不需要的功能编译进入内核可能会增加被系统攻击者利用的漏洞 一将某种功能编译为模块方式会比编译到内核内的方式速度要慢一些 1 2 2 1 准备工作 1 新版本内核的获取和更新 l i n u x 内核版本发布的官方网站是 。编译内核需 要r o o t 权限。把需要升级的内核拷贝至q u s r s r c 下( 下文中以2 2 1 6 的内核 l i n u x 一2 2 1 6 t a r g z 为例) ,命令为 # c dl i n u x - 2 2 1 6 t a r g z u s r s r e 先查看当前u s r s r e 的内容,注意到有一个l i n u x 的符号链接,它指南一个类 似于l i n u x 一2 2 1 4 ( 对应于现在使用的内核版本号) 的目录。首先删除这个链 接: # c d u s r s r c # r m - fl i n u x 现在解压下载的源程序文件。如果所下载的是t a r g z ( t g z ) 文件,使用命令: # t a r x z v fl i n u x 一2 2 1 6 t a r g z 现在再来看下u s r s r c 下的内容,发现现在有了个名为l i n u x 的目录,里 面就是需要升级到的版本的内核的源程序。之所以使用那个名为l i n u x 的链接, 是防止在升级内核的时候会不慎把原来版本内核的源程序覆盖掉。现在也需要 同样处理: # m vl i n u xl i n u x 一2 2 1 6 # i n s1 i n u x 一2 ,2 1 61 i n u x 2 准备主机板和相关硬件的说明手册 其实也不用太详细,只要知道硬件是属于哪一类型就行了。例如:有一张 s c s i 卡,那就要知道这张卡的名字,有一台c d r o w ,就要知道这台光驱是哪一 种牌子的,是否为标准的i d e a t a p i 界面,还是另有专属接口卡呢? 或者,主 机板是否有支持t r i t o n 芯片( 通常5 8 5 以上的电脑常有) 。这些信息能帮助我 们,使得设定变得清楚且容易。 3 检查声卡的i 购设定和其种类 如果配有一张声卡,除了要知道卡的种类外( 例如s o u n db l a s t e r ) 还需 要知道这张卡的i r q 地址。一般来说,卢卡的i r q 地址是5 或7 ,而1 0 地址则 为2 2 0 。d m a 则是1 。不过,有时不同的声卡可能会有不同的设定。 4 ,编译核心的硬件需求 在编译核心时,确定r a m 最好在8 n 3 以上,否则可能会很慢,而且问题会 很多。查看s w a p 有没有打开( 用f r e e 指令) 。此外,虽好不要超频,不然很有 可能会发生s i g n a l 1l 的错误,使得编到一半的核心停了下来。其实编译核心 就好比编译程序一样,只是因为构成核心的程序太多了,因此我们能小心尽量 小心。 1 2 2 2 内核编译的流程 1 概述编译的流程: 编译开始一m a k em r p r o p e r 第一章l i n u x 操作系统 检查所需的连接; 配置核心; 编译核心; 编辑e t c 1il o c o n f : 重新启动新核心; 重新启动机器; 发现并修理故障。 2 编译开始 通常要运行的第一个命令是: # c d u s r s r c 1i n u x # m a k em r p r o p e r 该命令确保源代码目录下没有不正确的目标 0 文件以及文件的互相依赖。 如使用刚下载的完整的源程序包进行编译,本步可以省略。而如果多次使用了 这些源程序编译内核,那么最好要先运行下这个命令。 确保u s r i n c l u d e 目录下的a s m 、1 i n u x 和s c s i 等链接是指向要升级的内 核源代码的。它们分别链向源代码目录下的真正的、该计算机体系结构( 对于 p c 机来说,使用的体系结构是i 3 8 6 ) 所需要的真正的i n c l u d e 子目录。如:a s m 指向u s r s r c 1 i n u x i n c l u d e a s m i 3 8 6 等。若没有这些链接,就需要手工创建, 按照下面的步骤进行: # c d u s r i n c l u d e # r m ra s ml i f l u xs c s i # i n s u s r s r c 1i n u x i n c l u d e a s m i 3 8 6a s m # i n s u s r s r c 1 i n u x i n c l u d e 1 i n u x1 i n u x # i n s u s r s r c 1 i n u x i n c l u d e s c s is c s i 这是配置非常重要的一部分。删除掉u s r i n c l u d e 下的a s l l l 、l i n u x 和s c s i 链接后,再创建新的链接指向新内核源代码目录下的同名的目录。这些头文件 目录包含着保证内核在系统上正确编译所需要的重要的头文件。也是上面又在 u s r s r c 下”多余”地创建了个名为l i n u x 的链接的原因之一。 3 配置内核核,心内容 接下来的内核配置过程比较烦琐,但是配置的适当与否与日后l i n u x 的运 行直接相关,有必要了解选项的设置。配置内核可以根据需要与爱好使用下面 命令中的一个: # m a k ec o n f i g ( 基于文本的最为传统的配置界面,不推荐使用) # m a k em e n u c o n f i g ( 基于文本选单的配置界面,字符终端下推荐使用,必须安 第一章l i n a x 操作系统 装n c u r s e s d e v 和t k 4 - d e v 库) # m a k ex c o n f i g ( 基于图形窗口模式的配置界面,x w i n d o w 下推荐使用) # m a k eo l d e o n f i g ( 如果只想在原来内核配置的基础上修改一些小地方,会省 去不少麻烦) 如果不能使用x w i n d o w ,那么就使用m a k em e n u c o n f i g 好了。界面虽然比上 面一个差点,总比m a k ec o n f i g 的要好多了。选择相应的配置时,有三种选择, 它们分别代表的含义如下: 7 y - - 一将该功能编译进内核 n 一一不将该功能编译进内核 m - - 一将该功能编译成可以在需要时动态插入到内核中的模块 在每一个选项前都有个括号,但有的是中括号有的是尖括号,还有一种圆括 号。用空格键选择时可以发现,中括号里要么是空,要么是”,而尖括号里 可以是空,” ”和” i ”。这表示前者对应的项要么不要,要么编译到内核里;后 者则多一样选择,可以编译成模块。而圆括号的内容是要在所提供的几个选项 中选择一项。 4 启用内核 通常,核心安装叫做v m l i n u z 。过去u n i x 使用者共同起了这名字。”z ”表示 压缩,”v ”和”m ”意思是”v i r t u a l ”( 虚拟) 和”s t i c k y ( 粘性的) ”,各自属于内 存和磁盘管理。建议保留v m l i n u z 核心,直到知道它工作。为了能够使用新版 本的内核,还需要做一些改动: # c p u s r s r c 1i n u x s y s t e m m a p b o o t s y s t e m m a p 一2 2 1 6 # c d u s r s r c 1 i n u x a r e h i 3 8 6 b z i m a g e b o o t v m l i n u z 一2 2 1 6 以上这两个文件是刚才编译时新生成的。下面修改b o o t 下的两个链接 s y s t e m m a p 和v m l i n u z ,使其指向新内核的文件: g e d b o o t # r m fs y s t e m m a pv m li n u z # i n sv m l i n u z - 2 2 1 6v m l i n u z # l n ss y s t e m m a p 一2 2 1 6s y s t e m m a p 注意:要保留v m l i n u z 核心,以下列步骤进行: # c p u s r s r c 1i n u x s y s t e m m a p b o o t s y s t e m m a p 一2 2 1 6 # c d u s r s r c 1 i n u x a r e h i 3 8 6 b z l m a g e b o o t v m l i n u z 一2 2 1 6 # c d b o o t # r m fs y s t e m m a p # l n ss y s t e m m a p 一2 2 1 6s y s t e m m a p 现在# v i e t c l i i o c o n f ,增加如下一段: i m a g e 2 b o o t v m l i n u z 一2 2 1 6 是设定为已经安装的核心, l a b e l 2 l i n u x 2 2 1 6 则是由l i l o 用来告诉我们现在要启动的是那个核心或作 业系统 r e a d o n l y r o o t :d e v h d a 2 则是这个特别的作业系统的根目录, 其中r o o t = d e v h d a 2 一行要根据需要自行加以修改。 运行:# s b i n l i l o v 保存执行命令:1 i i o
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年学校食堂食品安全量化等级评定
- 2026年驾校教学车辆安全检查制度
- 2026年彝族医药非物质文化遗产项目申报指南
- 2026年招标投标法律法规精讲与风险防范
- 2026年中国体外诊断试剂市场深度调研
- 2026年苯乙烯本体聚合工艺规程
- 鞋业生产质量控制办法
- 2026年儿童玩具与游乐设施清洁消毒制度
- 2026年家庭教育促进亲子关系方法
- 合作伙伴违约事项通报与处理(4篇范文)
- 恒丰银行笔试题库及答案
- 《导游实务》课件-6.1出境旅游领队服务程序
- MOOC 中医与辨证-暨南大学 中国大学慕课答案
- 《风电场工程规划报告编制规程》(NB-T 31098-2016)
- 苏泊尔电磁炉标准板电路分析
- 第二章第三节传播学原理与视觉传达设计
- 神经外科中枢神经系统感染诊治中国专家共识(2021版)
- GB/T 7193-2008不饱和聚酯树脂试验方法
- 2023年四川省事业单位招聘考试综合知识试题及答案
- 第六章 寻根文学
- 建筑能耗的模拟分析课件
评论
0/150
提交评论