(信号与信息处理专业论文)基于嵌入式web服务器的网络摄像机设计与实现.pdf_第1页
(信号与信息处理专业论文)基于嵌入式web服务器的网络摄像机设计与实现.pdf_第2页
(信号与信息处理专业论文)基于嵌入式web服务器的网络摄像机设计与实现.pdf_第3页
(信号与信息处理专业论文)基于嵌入式web服务器的网络摄像机设计与实现.pdf_第4页
(信号与信息处理专业论文)基于嵌入式web服务器的网络摄像机设计与实现.pdf_第5页
已阅读5页,还剩87页未读 继续免费阅读

(信号与信息处理专业论文)基于嵌入式web服务器的网络摄像机设计与实现.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 视频监控作为安防系统的一个重要元素,目前已经广泛应用于国防、工业、 交通、能源、信息技术以及日常生活等领域,并发挥着极其重要的作用。随着相 关技术的发展与推广,前端一体化、视频数据数字化、监控网络化、系统集成化 已经成为视频监控系统公认的发展方向。 目前,视频监控系统主要采用基于p c 机+ 视频采集卡的方案,此方案网络 功能强大,但由于p c 无法适合长期连续工作,暴露出系统稳定性低的缺点,降 低了视频监控系统的总体性能本文针对当前视频监控系统的弊端,提出了基本 嵌入式w e b 服务器的网络摄像机设计方案。与传统的视频监控系统相比,嵌入式 网络视频监控以体积小、成本低、稳定性高、适用于多种复杂工作环境等优点称 著,具有良好的应用与发展前景,已经成为当前视频监控系统的研究主流。 本文主要通过对m p e g - 4 图像处理技术、m i p s 处理器以及p c o s - i i 实时操 作系统的研究,在内嵌m i p s4 k e g 核的开发板v 忱1 0 0 上,设计和实现了基于嵌 入式w e b 服务器的网络摄像机。本文首先阐明嵌入式系统与视频监控系统的发 展现状,指出了视频监控的发展趋势,接着对i 】_ c o s - i i 进行深入的研究分析,详 细介绍了p c o s - i i 到v b 2 l o o 平台的移植过程。在i l l c o s - i i 多任务管理平台的基 础上,针对视频监控这一特殊应用,剖析了本系统的总体结构及数据流的流向, 基于模块设计思想的指导,设计了摄像头o v 7 6 7 0 数据采集模块、视频数据 m p e g 4 压缩模块、视频数据m p e g - 4 解码模块和视频数据网_ 络传输模块等系统 功能模块,并对各个功能模块以及整个软件系统分别进行了测试,给出了整个系 统性能的客观评估 系统具有体积小、成本低、稳定性高、系统扩展能力强、能够充分利用现有 网络资源的优点;同时,基于网络的视频数据传输研究,为嵌入式远程控制提供 了解决方案 关键词:嵌入式系统;视频监控;m i p s ) t c o s 4 l 广来工业大学工学硬十学位论文 a b s t r a c t a sa s i g n i f i c a n tp a r tt ot h es e c u r i t ya n dd e f e n c es y s t e m , v i d e os u r v e i l l a n c eh a s b e e na p p l i e dt oe v e r yw a l ko fl i f es u c ha sn a t i o n a ld e f e n e e ,i n d u s t r y , t r a n s p o r t a t i o n , e n e r g ys o t e e s ,i n f o r m a t i o nt e c h n o l o g ye t e a n dw o r k se x c e l l e n t l y t o g e t h e rw i t ht h e d e v e l o p m e n ta n dp o p u l a r i z a t i o no fc o r r e l a t i v ed o m a i n , c o m b i n a t i o no fl o c a l e q u i p m e n t s , t r a n s f o r m i n gv i d e od a t ai n t od i g i t a l , s t q v e i l l a n e et h r o u g hi n t e r n e ta n d i n t e g r a t i o no f t h ew h o l es y s t e ma 地c o n s i d e r e da sp r o g r e s st r e n do f v i d e os u r v e i l l a n c e s y s t e m p r e s e n t l y , v i d e os u r v e i l l a n c es y s t e mm a i n l ya d o p t st h er , r o j c c to fp e r s o n a l c o m p u t e rp l u sv i d e oc o l l e c t i o nc a r d , t h i sk i n do fp r o j e c ti sp o w e r f u li ni n t e r n e t f u n c t i o n s ,b u ta l s oe x p o s e st h ef a u l to fl o ws t a b i l i t yb e c a u s ep ci sn o tc a p a b l eo f w o r k i n gw i t hp e r s i s t e n c e , a n dt h e r l ,f o r e , l h et o t a lp e r f o r n m c eo fv i d e os m v e i l l a e s y s t e md r o p s t os o l v et h ep r o b l e m se x s i ti nt h ep r e s e n tv i d e os u r v e i l l a n c es y s t e m , a d e s i g no fi n t e m e ta 岫蹦t r e e do i le m b e d d e dw e bs e l t v e ri sp r o p o s e di nt h et h e s i s c o m p a r i n gw i t ht r a d i t i o n a lv i d e os t u v e i l l a n c es y s t e m , e m b e d d e di n t e r n e tv i d e o s u r v e i l l a n c es y s t e mi sk n o w nt h a ti ti sc o m p ti ns i z e ,l o wi nc o s t ,h i g hi ns t a b i l i t y a n de a s i l ya p p l i e dt ov a l j 0 1 i , qc o m p l i c a t e dw o r ke n v i r o n m e n t ,i ta l s op o s s e s s e sf i n e p o t e n t i a lf o ra p p l i c a t i o na n dd e v e l o l r m e ma n db o m e st h ef o c u so fr e s e a r c ho n p r e s e n tv i d e os u r v e i l l a n c es y s t e m a f t e rs t u d y i n gt h ep r o c e s s i n go f m p e g 4v i d e o , s t r u c t u r eo f m i p s p r o c e s s o ra n d r e a lt i m eo p e r a t i o ns y s t e mo f u c o s - i i 趾e m b e d d e di n t e m e tc a m e r ab a s e so nw e b s e r v f e ri sd e s i g n e da n df u l f i l l e d t h ee s t i m a t eb o a r dv b 2 1 0 0w h i e l ai se m b e d d e dw i t h am i p s4 k e ek e r n e l f i r s to fa l l , t h ed e v e l o p m e n to fe m b e d d e ds y s t e ma n dv i d e o s u r v e i l l a n c ei sf u l l yi n t r o d u c e d , a sw e l la st h ep r o g r e s st z e n do fv i d e os u r v e i l l a n c e ; s e c o n d l y , ad e e ps t u d ya n da m l y s i so fu c o s - i ii sm a d e , a n dt h ed e t a i l s o f t r a n s p l a n t a t i o nf r o mu c o s - i it oe s t i m a t eb o a r dv b 2 1 0 0 玳a l s og i v 饥a f t e rb u i l d i n g 叩t h em u l t i - t a s km a n a g e m e n ts y s t e mo fu c o s - i i ,t o t a ls t r u c t u r eo ft h es y s t e ma n d n s p e c i f i cd a t af l o w 辨l a i do u ta c c o r d i n gt ot h es p e c i a la p p l i c a t i o no f v i d e os u r v e i l l a n c e w i t ht h eg u i d eo f m o d u l e - - d e s i g n i n g ,d e s i g nf o rv i d e od a t ac o l l e c t i o nm o d u l eo f c a m e r a o v 7 6 7 0 , m o d u l eo f m p e g - 4v i d e oe n c o c u n g , m o d u l eo f m p e g - 4 v i d e oc t e c o c u n ga n d m o d u l eo fv i d e od a t at r a n s m i s s 垴 na r ef u l f i l l e d i nt h ee n d , e a c hs e p a r a t ef u n c t i o n m o d u l e sa n dt h ee n t i r es y s t e ma 托t e s t e dr e s p e c t i v e l y , t h e r e f o r e , p e r f o r m a n c eo ft h e e n t i r es y s t e ma ee s t i m a t e dr e a l i s t i c a l l y g e m - a n y , t h es y s t e mi se x c e l l e n tt h a ti ti ss m a l l e ri ns i z e ,h i g h e ri ns t a b i l i t y 9 c o n v e n i e n ti ns y s t e me x t e n d t 嚏a n d 协k i n gf u l la d v a n t a g eo f t h ep r e s e n ti m e m e ts o t l r c 4 :, b e s i d e s , t h er e s e a r c hf o rt r a n s m i s s i o no fv i d e od a t at h r o u g ht n t e m e tp r o v i d e sa s o l u t i o nf o rl o n g - d i s t a n c ec o n t r o lo v e re m b e d d e ds y s t e m k e yw o r d s :e m b e d d e ds y s t e m ;v i d e os u r v e i l l a n c e ;m i ls ;t t c o s - i i m 独创性声明 独创性声明 秉承学校严谨的学风与优良的科学道德,本人声明所呈交的论文是我个人在 导师的指导下进行的研究工作及取得的研究成果,除了文中特别加以标注和致谢 的地方外,论文中不包含其他人已经发表或撰写过的研究成果,不包含本人或其 它用途使用过的成果。同我一起学习研究的同学对本研究所做的贡献均在论文中 做了明确的说明,并表示了谢意。 本学位论文的成果是我在广东工业大学读书期间在导师的指导下取得的,论 文成果归广东工业大学所有 申请学位论文与资料若有不实之处,本人承担一些相关责任,特此声明。 褂锄两 特柳婵:锨 年占月2e l 第一章绪论 第一章绪论 随着多媒体技术和网络技术的飞速发展,近年来传统的视频监控领域面临巨 大的变革视频监控系统以其直观、方便、信息量丰富而被广泛应用于生产管理、 安全防范等场合,成为金融、交通、商业、电力、公安、海关、国防、乃至住宅 社区等领域安全防范监控的重要手段。视频监控一直是安防系统的主要构成部分, 传统的视频监控以模拟图像监控为主,由于对图像的处理及传输均采用模拟技术, 存在图像传输占用带宽过大,系统资源占用过多,组成远程监控网络难度过高的 问题,为此,传统视频监在不断寻求新的发展方向 近年来国际标准化组织( i s o ) 、国际电工委员会( 刀b c ) 为数字图像的处理 和传输建立了一套国际统一的相关标准,如m p e c , - 1 、m p e g - 2 、m p e g - 4 数字 视频编码标准,为数字图像监控建立了国际统一的技术规范,大大促进了数字视 频监控的产业化发展。与此同时,嵌入式系统和网络技术的不断进步,嵌入式网 络功能被更广泛地应用于各个领域。嵌入式网络技术与数字视频处理技术的结合, 将视频监控系统的发展推向了一个全新台阶本文针对传统视频监控的弊端,根 据当前视频监控系统的研究热点,提出基于嵌入式w e b 服务器的网络摄像机设 计方案,在嵌入式系统上实现了视频远程网络监控这一主要功能。 1 1 嵌入式系统的概述 技术的发展是相辅相成的任何领域的发展,都有可能成为另一领域发展的 直接动力;而另领域的进步,又可能反过来作用于本领域,不断推动本领域的 前进。嵌入式系统的发展与视频监控系统的发展就呈现出和种密不可分的关系。 嵌入式系统是指以应用为中心,以计算机技术为基础,软件硬件可剪裁,适 合应用于对功能、可靠性、成本、体积和功耗严格要求的专用计算机系统它主 要由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户应用软件等部分 组成,用于实现对其他设备的控制、监视和管理等功能 广东工业大学工学硬十学位论文 与视频监控系统发展状况相应地,嵌入式系统的发展经历三个阶段: 1 ,s c m ( s i n g l ec h i pm i c r o c o m p u t e r ) ,即微处理器阶段 此阶段主要寻求最佳的单片形态嵌入式系统的最佳体系结构吒0 新模式”获 得成功,奠定了s c m 与通用计算机完全不同的发展道路。主要推动者为i n t e l ,其 m c s 5 1 系列单片机凭着因其强大的功能和低廉的价格优势,在各个应用领域影 响深远。 2 、m c u ( m i c r oc o n t r o l l e ru n i t ) ,即微控制器阶段 此阶段主要的技术发展方向是:不断满足嵌入式应用时。拓展对象系统要求的 各种外围电路与接口电路,突显其对象的智能化控制能力。它所涉及的领域都与对 象系统相关,因此,发展m c u 的重任不可避免地落在电气、电子技术厂家。在发展 m c u 方面,最著名的厂家当数p h i l i p s 公司。 3 、s o c ( s y s t e m o n c h i p ) 即高度集成的嵌入式片上系统阶段 单片机是嵌入式系统的独立发展之路,向m c u 阶段发展的重要因素。就是寻 求应用系统在芯片上的最大化解决方案。因此,专用单片机的发展自然形成了s o c 化趋势。随着微电子技术、i c 设计、e d ai 具的发展。基于s o c 的单片机应用系 统设计有较大的发展。因此,对单片机的理解可以从单片微型计算机、单片微控制 器延伸到单片应用系统。 1 2 视频监控系统的概述 视频监控系统是面向特定应用的,由图像采集、图像处理、图像传输、图像 监视和系统控制等相关电子设备和传输介质组成的一个有机整体。利用视频监控 技术对重要对象进行监控,是监控系统获取信息最丰富的方式之一 视频监控系统的主要功能是实现对特定对象的实时监控其中,视频监控终 端设备用于正确全面地获取图像信息并进行相应的反馈处理,通过对监控终端的 操作,控制图像采集设备,调整再现图像的质量。视频监控系统的另一个特点是 可以存储被监视对象的全部或部分影像,为日后某些事件的处理提供便利条件和 重要依据。特别是画面分割器、录像设备和大容量存储器的出现,为多画面长时 间连续监视和记录的实现都提供了极大的便利条件在视频监系统中,图像处理 2 第一章绪论 是关键技术之一,目前大多数系统采用基于m p e g 压缩标准的图像编解码处理。 m p e g - ( m o v i n gp k - t u r e e x p e r t s g r o u p ) 标准是由国际标准化组织i s o 和国际电信联 盟制定的m p e g 委员会初建于1 9 8 8 年,负责指定枷p e g 标准枷p e g 标准包括 m p e g - i 、m p e g - 2 m p e g - 4 及m p e g - 7 n m p e g - l 图像编解码标准:m p e g - 1 由国际标准化组织o s o ) 于1 9 9 1 年制定,是 基于低端应用的视频、音频的编解码标准,它主要针对3 5 2 像素x 2 8 8 行( c i f 格式) 分辨率和每秒3 0 帧的图像质量,将视频信号和相应的伴音在可以接受的质量要求 下编码成1 5 m b p s 的数据流感官上,图像较细腻而且很流畅,对大多数视频会 议与图像监控是一个完全可以接受的标准 m p e g - 2 图像编解码标准:m p e o - 2 标准制定于1 9 9 4 年,设计目标是高级工业 标准的图像质量以及更高的传输率,它追求的是c c i r 6 0 1 建议的图像质量d v b , h d t v 和d v d 等制定的3 m b p s 1 0 m b p s 的运动图像及其伴音的编码标准。 m p e g - 2 也可提供广播级的视频图像质量和c d 级的音质因为m p e g - 2 可以提供 一个较广范围可变的压缩比,以适应不同画面质量、存储容量以及带宽的要求, 所以除了作为v c d 和d v d 的指定标准外,m p e c 砣广泛用于为广播、有线电视网、 电缆网络以及卫星直播( d i r e c tb r o a d c a s ts a t e l l i c e ) 提供广播级的数字视频,也可以 用于专用监控领域田 m p e g - 4 图像编解码标准 3 i :m p e g 4 的发展目的是基于m 的视频传送,其最大 优点是考虑了网络的传输问题,而且可在压缩品质和压缩比上取得最佳平衡,以 确保传输时的流畅m p e g - 4 利用很窄的带宽,通过帧重建技术来压缩和传输数 据,以求利用最少的数据获得最佳的图像质量。m p e g - 4 标准主要应用于视频电 话( v i d e op h o n e ) ,视频邮件( v i d e oe m a i b 和电子新闻( e k c = 廿o n i cn e w s ) 等 m p e g - 7 于1 9 9 6 年开始制定,其目的与前三者不同,它并不是要取代以往的 压缩标准,而是为这些标准提供一个基于内容的多媒体检索接口。它在以往的检 索基础上,扩充了以内容为主导的检索方式,规定了各种多媒体信息的基于内容 的描述方法,包括声音、文字、图像、视频等闱 1 3 视频监控系统的发展历程 视频监控以其直观、方便、信息量丰富等优点而被广泛应用于众多场合。而图 像处理技术是视频监控系统的关键技术之一,根据图像处理技术的发展历程,视 频监控系统的发展大致可以分为三大阶段: l 、基于视频切换器控制的本地模拟视频监控 在2 0 世纪9 0 年代初以前,主要是以模拟设备为主的闭路电视监控系统,称 为第一代模拟监控系统。图像信息一般通过同轴电缆以模拟方式传输,由于同轴 电缆的平均传输距离小于1 k m ,因此这种监控系统主要应用于小范围内的监控, 而且只有在监控中心才能观看图像。视频监控系统利用矩阵切换器,将原来分散 的全硬件视频监控系统微型化集中化,如视频切换、对前端的控制等功能集合一 起,一机处理,是技术上的一个突破。而矩阵切换器就是基于微处理器( s c m ) 固 件发展起来的。 2 、基于p c 的多媒体监控 2 0 世纪9 0 年代中期,基于p c 的多媒体监控随着数字视频压缩编码技术的发 展而产生基于p c 的视频监控系统,在视频采集卡的基础上,采用软件设计, 实现摄像机到监视器的视频矩阵切换、云台和镜头的控制;并通过通信网络将获 取的数据,传送到一个或多个监控中心。在这个阶段,系统能充分利用p c 机的 资源;与此同时,嵌入式m c u 由于处理速度以及数据吞吐量的限制,在一定程 度上淡出视频监控这个领域。 3 、基于嵌入式w e b 服务器的视频监控系统 2 0 世纪9 0 年代末,网络技术和基于嵌入式$ o c 的结合,产生了基于嵌入式 w e b 服务器的视频监控系统。在基于p c 的多媒体监控阶段,p c 机的多媒体监控 主机集合了视频矩阵、图像分割器、录像机等众多功能,使系统结构大为简化, 但同时也暴露出这个阶段的局限性,主要体现在p c 机长期工作时的不稳定性、 w m d o w s 系列操作系统在处理大量高密度数据时硬盘的不适合性、前端视频数据 需要同轴电缆接入带来的地域局限性。 与此同时,d s p 芯片以及基于a r m 内核的1 6 3 2 6 4 位高性能s o c 的出现。 它们低价格、低功耗和高性能的特性,使得在嵌入式系统上实现网络功能和音视 第一章绪论 频数据处理成为可能。 基于嵌入式w r c b 服务器的网络摄像机的原理:在d s p 或j 堰m 等高性能s o c 平台 上,通过嵌入式操作系统的调度,将摄像机等传感器传送来的音视频数据编码压 缩,通过内部总线传送到内置的w e b 服务器网络用户可以直接用浏览器,获取 w e b 服务器上的图像信息,授权用户还可以对传感器进行相应配置和控制 1 4 视频监控系统的发展现状 前端一体化、视频数字化、监控网络化、系统集成化是视频监控系统公认的 发展方向数字化是网络化的前提,网络化系统集成化的基础,所以视频监控发 展的最大两个特点就是数字化和网络化 因此,当代数字视频监控系统的开发,重点在于研究如何对现场的图像进行 编码压缩、去除冗余,并通过i p 网络实时传输到指定位置。当前研究开发的监控 系统多采用m p e g - 4 压缩标准进行视频信号的压缩编码,在保证图像效果的前提 下,大大减少了在视频数据在网络传输过程中对带宽的占用 在对此领域的研究及应用推广中,国外部分机构起步较早。如: 1 9 9 7 年美国国防高级研究项目署设立了以卡内基梅隆大学为首、麻省理工学 院等高校参与的视觉监控重大项目v s a m ,主要研究用于战场及普通民用场景进 行监控的自动视频理解技术:实时视觉监控系统w 4 不仅能够定位人和分割出人 的身体部分,而且通过建立外观模型来实现多人的跟踪,并可以检测人是否携带 物体等简单行为。 索尼营销公司于2 0 0 2 年3 月4 日推出配备1 0 b a s e - t 的l a n 端口,可以通 过l a n 发送影视的网络摄像机“s n c - v l i o n ”。s n c - v l l 0 n 的摄像元件采用1 3 英寸的c c d ,分辨率为3 8 万个像素。最大影视尺寸为7 2 0 x 4 8 6 点阵,最高刷新 帧率为3 0 f l , s 。图像压缩采用w a v e l e t ( 小波) 方式,可以变更任意区域的压缩率。 s n c - v m o n 配备了l a n 端口,无须通过个人电脑便可以直接接入网络。可以利 用通用的w e b 浏览器浏览影视画面除了索尼公司的s n c - v l l o n 之外,还有松 下k x - h c m l 3 0 、三星s n c 1 0 0 p 、安特a n r n w c l o ,5 0 ,1 0 0 、瑞典a x i s 的 a x l s 2 x x x 系列等 广东工业大学工学硕+ 学位论文 与此同时,国内不少企业也开始在此领域中搜索前进,如捷泰科( g t k ) 公 司,普莱德( p l a n e t ) 和正达等公司都相继推出网络摄像机及视频电话等同类 产品,但这些公司的产品大多基于国外的图像处理芯片,尚未拥有绝对的自主知 识产权。 1 5 本文的主要工作及章节安排 1 5 1 本文的主要工作 l 、针对一般网络监控在系统稳定性、成本及体积等方面的问题,提出了基 于m i p s4 k e c 的嵌入式网络监控方案,构建一个嵌入式远程控制架构。 2 、完成l _ t c i o s 。到v b 2 1 0 0 的移植,建立多任务管理的系统平台。 3 、在p c o s i i 多任务管理平台基础上,完成摄像头o v 7 6 7 0 视频数据采集 模块、m p e g - 4 视频编码模块和e g q 视频解码模块的设计与实现以 及对视频数据网络传输模块实现方案做出一定的探讨。 i 5 2 本文的章节安排 第一章绪论分析嵌入式系统与视频监控系统的发展历程及两者的关系,进 一步阐明嵌入式网络视频监控系统是当前视频监控系统的研究主 流。 第二章实时操作系统p c o s i i 内核分析对抢占式内核i c o s i i 进行基本 介绍,概述p c o s - i i 的工作原理。 第三章i x c o s i i 到m i p s 的移植介绍基于m i p s 内核的开发平台v b 2 1 0 0 , 详细说明了i i c o s - i i 到此平台的移植。 第四章网络摄像机图像处理总方案与各个模块分析对嵌入式网络摄像机 做出总设计方案,并对各个模块进行深入分析 第五章视频数据的网络传输模块设计主要讨论视频数据的网络传输。 第一章绪论 第六章系统调试与验证对摄像头o v 7 6 7 0 数据采集模块、视频数据 m p e g - 4 压缩模块和视频数据m p e g - 4 解码模块分别进行测试以及 对整合后的整个系统进行测试 7 广东工业大学工学硕士学位论文 第二章实时操作系统i lc o s - i i 内核分析 2 0 0 0 年7 月,t t c o s 在一个航空项目中得到了美国联邦航空管理局( v e d e r a l a v i a t i o n a d m i n i s t r a t i o n ) 对于商用飞机、符合r t c a d o 1 7 8 b 标准认证该标准对 用于航空设备方面的软件提出了要求为了符合这一标准,必须尽可能通过文件 描述和测试,展示软件在稳定性和安全性这两方面都符合要求。这对于操作系统 来说特别重要,因为这一结论表明,该操作系统的质量得到了认证,可以在任何 场合中应用阴。 本章主要对当代实时操作系统及t t c o s 4 i 的主要特征进行扼要介绍,为第三 章的t t c o s i i 移植做好必要的铺垫。 2 1实时系统的基本概念 常用的实时系统大多数是软实时系统与硬实时系统的结合,本节主要对实时 操作系统的一些基本特征进行大略介绍。 2 1 1 内核的定义 内核( k e r n e l ) 是操作系统的内部核心程序,它向外部提供了对计算机设备的核 心管理调用。操作系统的代码可分成两部分:内核所在的地址空间称作内核空间; 而在内核以外的统称为外部管理程序,它们大部分是对外围设备的管理和界面操 作外部管理程序与用户进程所占据的地址空间称为外部空间。通常,一个程序 会跨越两个空间。当执行到内存空间的一段代码时,我们称程序处于内核态,而 当程序执行到外部空间代码时,我们称程序处于用户态。 多任务系统中,内核负责管理各个任务,也就是为各个任务分配c p u 时间, 并且负责任务间的通信。内核提供的基本服务是任务切换,根据任务切换的定义, 当多任务内核决定运行另外的任务时,它保存当前运行任务的状态,读取下一个 第二章实时操作系统uc o s - i i 内核分析 任务的状态并运行实时内核允许将应用分成若干个任务,并由实时内核来管理, 因此,使用实时内核能大大简化应用系统的开发 内核本身也增加了应用程序的额外负荷,因为运行内核本身以进行任务切换 或通信等也需要一定的c f u 时间。额外负荷量取决于用户调用这类系统任务的频 繁度在设计得较好的应用系统中,内核占用2 。5 的c p u 负荷嘲 2 1 2 不可剥夺型内核的定义 不可剥夺型内核( n o n - p r e e m p t i v ek e r n e l ) 要求每个任务主动放弃c p u 的使用 权。不可剥夺型调度法也称作合作型多任务,各任务彼此合作共享一个c p u 在 出现中断时,由中断服务进行相应处理。中断服务可以使一个高优先级的任务由 挂起态进入就绪态,但中断服务程序结束后,c p u 使用权仍然属于原来的那个任 务,直到该任务主动放弃c p u 的使用权,一个新的高优先级的任务才能获得c p u 的使用权 l i m i x 采用的是不可剥夺型内核。不可剥夺型内核的一个优点是响应中断快。 使用不可剥夺型内核时,任务级响应时间比前后台系统快得多此时的任务级响 应时间取决于最长的任务的执行时间。 不可剥夺型内核的另一个优点是,几乎无须使用信号量保护共享数据,因为 一个任务从运行到结束,几乎全程占有c p u ,不用担心被其它任务抢占;但也并 非绝对,在某些情况下,仍然需要使用信号量以对共享数据进行保护 不可剥夺型内核的最大缺陷在于其响应时间。高优先级任务已经进入就绪态, 但还必须等待,直到当前运行的任务释放c p u 后才开始运行因此,不可剥夺型 内核的任务响应时间是无法确定的,它完全取决于当前任务释放c p u 的时间基 于这个特征,商业软件很少使用不可剥夺型内核嘲 2 1 3 可剥夺型内核的定义 当一个运行着的任务使一个比它优先级更高的任务进入就绪态时,当前任务 广东t 业大学工学硕士擘位论文 的c p u 使用权就被剥夺了,或者说被挂起,更高优先级的任务立刻得到了c p u 使用权并开始运行;或者,低优先级任务的一个中断服务子程序使一个更高优先 级的任务进入就绪态,中断完成时,被中断了的任务被挂起,优先级更高的任务 开始运行。 i 1 c o s d l 等绝大多数商业实时内核使用的都可剥夺型内核。最高优先级的任 务一旦就绪,总能得到c p u 使用权。 可剥夺型内核的优点是,最高优先级任务何时开始运行是可知的。可剥夺型 内核使得任务级响应时间得以最优化 使用可剥夺型内核应该注意的一点是;应用程序不应直接便用不可重入函数。 因为在运行过程中,低优先级和高优先级的2 个任务可能会同时调用同一个函数, 在调用不可重入函数时,当低优先级任务的c p u 使用权被高优先级的任务剥夺, 不可重入函数中的数据有可能被破坏。因此,在使用不可重入函数时。应满足互 斥条律。这一点可以通过使用互斥型信号量来实现d l 。 2 2 t t c o s - n 实时内核分析 一般的操作系统,不仅向用户提供开发应用程序的各种a p i 接口。而且具有 图形界面或命令行形式的人机通信接口。而实时操作系统( r e a lt i m eo p e r a t i o n s y s t c t r l ,r t o s ) 贝i j 没有通常意义下的图形界面,只有a p i 接1 3 ,也即内核。但内核 已具有操作系统的一些基本功能,如任务调度、同步机制、中断处理和通信等, 这些功能还具有可裁剪的特性。以便在最小代码量的条件下满足嵌入式系统的要 求。如i _ l c o s i i 可裁剪至2 k 2 2 1 任务状态 在v c o s i i 控制下的任务有5 种状态。睡眠态、就绪态、运行态、等待态和 中断服务态,在任意时刻,任务的状态必定为这5 种状态之一嘲。 睡眠态i 指任务驻留在程序空间( r o m 或r a m ) ,尚未交给i x c o s - i i 第二章实时操作系统uc o s - h 内核分析 来管理要将任务交给p c o s - i i 管理,须通过调用o s t a s k c y e a t e o 或 o s t a s k c r c a t e e x t 0 来实现,这个调用过程主要是将任务的相关信息,如起 始地址、堆栈大小、堆栈增长方式和任务被赋予的优先级等传递给 i x c o s - i i 内核,进行相关的初始化以开始运行。 就绪态;任务一旦被建立,就进入了就绪态,准备运行任务的建立有 两种情况:l :任务的建立是在多任务运行开始之前,可以动态地由一个 运行着的任务建立;2 :如果多任务已经开始运行,则一个任务是由另 一个任务建立,假如新建的任务的优先级高于建立它的任务,则这个新 建的任务立即获得c p u 使用权 运行态:多任务的启动通过调用o s s t m 0 实现。o s s t a 哟函数只能在启动 时调用一次,该函数启动已经建立好的、进入就绪态的最高优先级任务。 因此,在调用o s s t 盈- t o 时,必须确保至少有一个任务是处于就绪态的, 或者是至少建立好一个任务,否则,将会引起系统崩溃任何时刻,处 于运行态的任务数目只能为1 等待状态:正在运行的任务可以通过调用系统延时函数o s t t m e d l y 0 或 o s t t t m d i y h m s m 0 将自己挂起一段时间,此时任务进入等待态,直到延 时结束。调用这2 个函数中的任意一个,系统都会立刻强制执行任务切 换,让下一个最高优先级的、并进入就绪态的任务开始运行延时结束 后,被延时并处于等待状态的任务退出等待状态,进入就绪态 除此之外,能让运行中的任务挂起的系统函数还有:o s f l a g p e n d o , o s s 曲| p e n d o o s m u t c x p e n d 0 ,o s m b o x p e 牲l o 或o s q p c m o 主要使用 于任务等待某事件的发生,调用这些函数且相应事件尚未发生时,则任 务被挂起进入等待态,同时,下一个具有最高优先级、且处于就绪态的 任务获得c p u 使用权 中断服务态:在开中断的情况下,运行中的任务是可以被中断的运行中 被中断了的任务由运行态进入中断服务态响应中断时,中断服务子程序 广东工业大学工学硕士学位论文 获得了c p u 使用权,而被中断了的任务被挂起处于就绪态。 中断服务子程序在执行过程中,所产生的影响分为两种情况: i ,没有令其它任务进入就绪态; 2 ,令个或多个任务进入就绪态; 在情况l 的条件下,中断服务子程序结束后,原来被中断的任务重 新获得c p u 使用权并继续运行;在情况2 的条件下,中断服务子程序结 束后,p c o s 1 i 检查就绪状态表,重新进行任务调度,并让最高优先级 的任务开始运行。 以上5 个任务的切换在p c o s - i i 的任务调度器控制下实现,其任务状态转换 图如图2 - 1 : 图2 - ! p c o s - i i 的任务状态 f i g 2 - 1t a s ks t a t eo f p c o s - 1 i 2 2 2 任务控制块( 0 s _ t 0 8 ) 一旦任务建立,一个任务控制块o s _ t c b 就被赋值。任务控制块是一个数据 结构,用于在任务进行任务切换时保存或恢复该任务的状态。当任务的c p u 使用 权被剥夺时,任务控制块用于保存当前任务状态:当任务重新获德c p u 使用权时, 第二章实时操作系统pc o s - i i 内核分析 任务控制块中所保存的寄存器状态,能确保任务从被中断的那一点继续执行网 下面以o s _ _ t c b 的数据结构为例进行说明; t y p e d e f s t r u e to s t e b o s _ s t k + o s t c b s t l d t r ; s t t u e to s _ t e b o s t c b n c x t ; s t l a l e to s _ t e bo s t c b p r e v : o s _ e v e n t o s t c b e w 埴l t p 时: v o i d o s t c b m s g ; i n t l 6 u o s t c b d i y ; i n t g oo s t c b s t a t : d 以8 uo s t c b p r i o : ) o s t c b s t k p t r 指向当前任务堆栈的栈顶指针。p c o s 4 i 允许每个任务都有自 己的堆栈,而且每个任务的堆栈容量可为任意值。 o s t c b n e x t 和o s t c b p r e v 用于任务控制块o s _ t c b 双向链表的前后链 接,双向链表使得任一成员都能被快速插入或删除。 0 s t c b e v e m 】p t f 指向事件控制块的指针 o s t c b m s g 指向传递给任务的消息的指针 o s t c b d i y 当需要把任务延时若干时钟节拍时。或者需要把任务挂起一段时 间以等待某事件的发生时,须用到这个变量。 o s t c b s t a t 任务的状态字当o s t c b s t a t 等于o s _ s t a t _ r e a d y 或者等于 0 时,任务进入就绪态 o s t c b p r i o 任务的优先级。 2 2 3 就绪表 每个任务被赋予不同的优先级等级,从o 级到最低优先级 广东工业大学工学硕士学位论文 o sl o w e s tp r i o ,包括0 和o sl o w e s tp r i o 在内。 每个就绪的任务都放在就绪表( r e a d yl i s t ) 中,就绪表有2 个变量,o s r d y g r p 和o s r d y t b l f l 。 以目前的能管理“个任务的c o s i i 核为例,它具有6 4 个优先级。就绪表 的功能就在于,在进入任务切换时,以最短的时间找出处于就绪表的最高优先级。 对就绪表的6 4 个位置进行全局搜索,固然可以查找出最高优先级的位置,但效率 较低,p c o s - i i 内核对就绪表的查找,采用的是两步查找方式,具体实现如下t 在o s r d y c n p 中,任务按优先级分组,8 个任务为一组。o s r d y o w 中的每 一位表示8 组任务中每一组是否进入就绪态的任务。任务进入就绪态时, o s r d y t b l 口中的相应元素的相应位也置为1 。 由于进行就绪表中对最高优先级进行搜索时,p c o s i i 进行的是位操作,为 了进一步阐明就绪表的搜索原理,笔者在忠于p c o s i i 作者思想的前提下,提出 一个比较简单的例子,具体如下: 对6 4 个优先级进行分组,每8 个任务为一组,则获得一个8 * 8 的数组,也即 o s r d y t b l s 8 。相应的,获得数组o s r d y c n p 8 。 当o s r d y t b l 0 0 一o s r d y t b l 0 l 7 中的任意一个元素为l 时,相应地, o s r d y c n p 0 】= l ; 当o s r d y t b l 1 0 一o s r d y t b i 1 l 7 b b 的任意一个元素为1 时,相应地, o s r d y c 打p 1 】- 1 ; 当o s r d y t b l 7 0 l o s r d y t b l t 7 1 中的任意一个元素为l 时,相应地, o s r d y g r p 7 21 : 因此,以最短时问搜索o s l y t b l 【8 】【8 】中最高优先级的位置,可以通过以下 两步获得: s t e p1 搜索o s r d y c a v 0 卜0 s 砥i 娜呻【7 】,获得最高优先级所在的组号,设 为o s r d y g f p x ; s t e p2 搜索o s r d y t b l x 0 】一o s r d y t b l x 7 1 ,获得最高优先级所在的位 置。 对应于数组的就绪表,请参看图2 2 : 1 4 第二章实时操作系统uc o s - i i 内核分析 一一 i w l 一一 2 2 4 任务调度 图2 - 2 就绪表 f i g 2 - 2 t a b l eo f p r e p a r e df a c t

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论