当前位置:首页 >> 信息与通信 >>

基于Hi3510处理器和Linux的嵌入式WebServer的研究和实现_图文

维普资讯 http://www.cqvip.com

第 2 1卷

第 8期 

电 脑 开 发 与 应 用 

文 章 编 号 :0 35 5 2 0 )80 4 —3 1 0 — 8 0( 0 8 0 — 0 5 0  

基 于 Hi5 0处 理 器 和 L n x的嵌入 式 We  evr的研 究 和 实现  31 iu bS r e
Re e r h a   m pl m e a i n o   he Em b dd d W e   e v r s a c   nd I e nt t o   f t   e e  bS r e 

b s d o   nu   nd Pr c s o   f H i 51   a e   n Li x a   o e s r o   3 0
王 升 旭 

( 北京 大 学软件 与微 电子学 院  北 京  1 0 8 ) 0 0 3  【 摘  要】论 述 了在基 于嵌 入 式 L n x操 作 系统 和 海 思 Hi5 0处 理器 的嵌入 式 系统 中W e  ev r Tht d网络  iu 3i bS re ( t p 服 务器 )的 实现方 法 , 过 C I程序 , 户可 以动态地 访 问 W e  ev r 采 用 目标 板 启 动时 自动运 行 Thtd服  通 G 用 bS re 。 tp 务器 的方法 ,用 户 可 以方便地 访 问服 务器 的资源 。这 种嵌 入 式 We  ev r方 案可 以广 泛地 应用 在远 程监 控 、智  bSre
能家 居等 应用 领域 ,具 有广 泛 的应 用前 景 。   【 关键 词】 嵌入 式 Ln x操 作 系统 ,Hi5 0处理 器 ,Th td网络 服务 器 ,C   iu 31 tp GI
中图分类号 :   文 献 标 识 码 :A  
ABS TRACT  Thi p e  ha  d s us e  t  i pl m e a i  o  t  e be de  W e  Se v r s ap r s ic s d he m e nt ton f he m d d b r e  ba e  on sd  Li x  nd he nu a  t  pr e s     oc s or of

Hi 5 O Th o g   3 l . r u h CGI( mmo   t wa  n e f c ) c in sc u d d n mia l  ii W e   e v r Th s p p rh sa o t d t e me h d Co n Ga e y I t r a e , l t  o l  y a c l v st e y   b S r e . i a e   a   d p e  h   t o    

o a tma ial  u nn  Th t d We   e v r f u o tc l r n ig y tp   b S r e wh n h   be t e o r i sa td p,a d l n s a  f xb y vst h   e   e  t e o jci  b a d s tre  u v   n  ci t c n l il  ii e e  t e W b
S r e . i k n   f W e   e v rs h me h sa q i   rg tp o p c  n   a   e a p id i   a i u  i l e v r Th s i d o   b S r e   c e   a     u t b i h   r s e ta d c n b   p l  n v r sfed,s c   sr mo e mo i ra d   e e o u h a   e t  n t   n   o
c nt o  y t m , hom eaut o r ls s e   omaton p odu t . i  r c s 

KEYW ORDS e e d d l u   p r tn   y t m , p o e s ro   3 1 , Th t d we   e v r   mb d e   i x o e a i g s s e n r c s o   fHi 5 0 t p   b s r e ,CGI ( o C mmo   t wa   n e fc ) n Ga e y I t r a e  

随着 互联 网在全 球 的飞 速发 展 , 网络技 术 广泛 应 

基 础 , 硬件 可裁 剪 的专用 计算 机 系统 。 软 由于本身 的 硬  件 资 源 有 限 , 以嵌 入式 网络 服 务 器 的开 发 设计 应 尽  所
可能 的优 化代 码 , 节省 系统 资 源 , 其是 宝 贵 的硬 件 资  尤 源 。在嵌 入式 L n x系统 中 , iu 比较 常用 的 we b服务 器  有 B a Htp 、 t d和 mii td等几 种 。 o 、 td Tht p n  p Ht  

用 于 各种 企业 和 工 业 系统 , 来 越 多 的 信息 化 产 品 需  越
要 能 够 接入 互 联 网并 且 可 以通 过 We b页 面进 行 远 程  访 问 和控制 。 入式 We  ev r 适合 嵌 入式设 备 的  嵌 bS re 是 we  ev r 大 小及 功能 主 要 取 决 于其 运 行 的系 统 环  b S re , 境及 嵌入 式设 备 。本文 分 析 了嵌 入 式 We b技 术 , 究  研

Thtd是 AC t p ME公 司设 计 的一 款 比较 精 巧 的开  源 We b服 务器 。 的初衷 是 提供 一款 简单 、 巧 、 移  它 小 易 植 、 速 和 安 全 的 HTT 服 务 器 , 事 实 上 , t d 快 P 而 Tht   p 也 正 是这 样 一 款 服务 器 。它 在 Unx系统 上 运行 的二  i 进 制代 码 程 序 , 仅仅 4 0 B左 右 , 同类 W e 0k 在 b服 务 器  中应该 是相 当精 巧 的 。 可移 植 性方 面 , 能够 在几 乎  在 它 所 有 的 Unx系统 上 和 已 知 的操 作 系 统 上 编 译 和 运  i
行。  

了 Thtd在嵌 入式 系统 中的移 植方 法 , tp 实现 了嵌 入式 
w e  ev r b S re 。本 文 的 硬 件 资 源 是 采 用 海 思 公 司 的  Hi5 0 处 理 器 , 3 1 采 用 双 核 架 构 , 成 了  31 Hi5 0 集 ARM9 6 JS和高性 能 DS ARM9 6 JS是芯 片 的  2E — P。 2E — 主控 处 理器 , 责 控制 芯 片 各 个模 块 的工 作 以及 运 行  负

操 作 系统 、 网络协 议 、 应用 软件 等 。 S 系统 主要 负 责  DP
视音 频编 解码 业务 处 理 , 过协 处 理 器 配 合视 频 编 解  通

码模 块共 同完成 H. 6 / 2 3 H. 6 2 1 H. 6 / 2 4的编解 码 。  

1 1 T t d网络 服务 器 的体 系结构  .  ht p Tht d服 务 器 处 理 用户 请 求 并 返 回数 据 给浏 览  t p
器 。若 用户 要 动态 的访 问服 务 器 , Thtd服务 器 调  则 t p

l 嵌 人 式 W e  ev r的技 术 分 析  bS re
随着 Itre nen t的发展 , 不 同的计 算机 系统 上 。 在 运 
行 着 不 同 的 W W W 服 务 器 , ah Ap c e是 最 流 行 的 W e   b

用 存 储 在服 务 器 中的 C I 序 。它 的体 系结 构 如 图 1 G 程  
所示。  

服务 器端 软件 之 一 。但 Ap c e服 务 器 要 占用 很 大 的  ah
系统 资源 , 于在 资源 有 限的嵌 入式 系统 中 , 对 显然 是 不 

1 2 C 程 序 设 计  .  GI 1 2 1 C I和 W W W 的 工 作 原 理  . .  G C (o GIC mmo   twa n efc ) 外 部 扩 展 应  nGae yI tra e 是

合 适的 。 入 式 系统 是 以应 用为 中心 , 嵌 以计算 机技 术 为 
*   20 一22 0 7 l — O收 到 , 0 8 0 — 5 回  20 —61 改

* * 基金 项 目 : 京 中盛 益 华 科 技 有 限 公 司 研 发 资 助 项 目 ( 防 监 控 项 目 )现 已推 广 到 上 海 、 京 、 州 等 地 。   北 安 , 北 广  
* * *王 升 旭 , , 9 1年生 , 士 研 究 生 , 究 方 向 : 件 与 微 电子 。 男 18 硕 研 软  

维普资讯 http://www.cqvip.com

基 于 Hi5 0 理 器 和 Ln x的嵌 入 式 We  evr的研 究 和 实 现  31 处 iu bS re

那 么 就 只能 选用 P T方 法 。GE 方 法 通 过 附 加 在  OS T
We  

浏  览  器 

提交 数 据 

URL后 面 的参 数发 送请 求信 息 。 这些参 数将 被放 在环  境 变量 QUE   S RI 中传 给 c 程 序 。 RY T NG GI   ②P T 方法  Os 浏览 器将 数据 从 一个 表单 传给服 务 器时 一般采 用 
作 系统 及应 用 程序 

返 回 页 面 

P T方法, os 而且 在发 送 的数 据超 过 10 4   2 B时必 须 采  用 P T 方法 。当使用 P T 方法 时 , b服务 器 向  os oS we C 程 序 的标 准输入 S GI TDI 传 送 数 据 。发 送 的数 据  N 长 度存 在 环境 变 量 C ONTE   L NG NT E TH 中 , 且 , 并  
P T 方 法 的数 据 格 式 为 : OS  
v ra l 1 v le 8v ra l2 au 2 t  a ib e 一 au 1  ̄a ib e 一v l e  ̄ec

嵌 入 式 硬 件 平 台  图 1 I tx网 络 服 务 器 的 体 系 结 构     ht t l

用 程序 与 www 服务 器 交 互 的一个 标 准接 口。按 照  C 标 准编 写 的外 部 扩展 应用 程序 能够 处理客 户端 浏  GI 览 器输 入 的数 据 , 而完成 客户 端与 服务 器 的交 互 、 从 实 
现 动态 We b技术 。在 C 规 范 中定义 了 We GI b服务 器 

C 程序 必须 检 查 R QUE T ME H0D环 境  GI E S  T
变量 以确定 是 否采 用 了 P T 方法 , 决 定是 否 要读  0S 并
取 S TDI   N。

如何 向扩展 应 用 程序 发 送 消息 , 收 到 扩展 应 用 程序  在 的信 息后又 如何 进行 处理 等具 体操 作 。 过 C 可 以  通 GI

( ) 接 UR 3直 L加 参数 传递 方法  直 接 URL加参 数 传递 方 法是 一 种 不使 用 表单 就  可 向 C I 送信息 的方法 。 G 传 该方 法将 信 息直接 追 加在 
UR L地址 后 面 , 息 和 UR 信 L之 间用 问号 “ ” 隔 。 ?分  

提 供 静 态 HTML 网 页 无 法 实 现 的 功 能 , 如 基 于  比
We b的搜索 引擎 、 于 we 基 b的数 据库访 问 等等 。   HT TP协议 是 www 的基 础 , 现 了基 于 客 户/ 实   服 务 器 的 B S结 构 。 当服 务 器 监 听 到 客 户 端 的请 求  /
时 , 建 一个 子进程 为 用户 的连 接服务 。 据请求 的不  创 根

2 基 于 Ln x 和 Hi5 0 的 嵌 入 式 w e    iu 31 b
S re ev r的实 现 
2 1 编 译 T t d服 务 器 程 序  . ht p

同 , 务 器返 回 HTML文 件 或 者 通 过 c I调 用外 部  服 G 应 用程 序 , GI C 扩展 程 序 进行 信 息 处 理并 将 结 果 返 回 

服务 器 , 务 器对 信 息 进行 分 析 , 将 结果 以 we 服 并 b页 
面 的方 式返 回给 客户 端 。  
1 2 2 C 扩展 程序 的编写  . .   GI

嵌 入 式系 统通 常 为一个 资源 受 限 的系统 。直接 在  嵌 入 式 系统 的硬件 平 台 上 编写 软 件 比较 困难 , 时 甚  有 至是不 可 能 的 。 目前 , 般采 用 的办 法是 , 一 先在 通用计  算 机 上 编写 程序 , 后 , 然 通过 交 叉 编译 , 生成 目标 平 台  上 可运 行 的二进 制代 码 , 最后 下载 到 目标 平 台上 运行 。   进 入 到 T tp h td软 件 包 目录下 , 先 利 用 c niu e命  首 of r g 令 编译 , 然后 修 改 目录下 的 ma ei k fe文 件 , 到 c l 找 c— 
g c这 行 , 它 相 应 的修 改 成 C c 把 C—am— cicl u — r u l —n x  b i

服 务 器程 序 可 以通 过 三种 途 径 接 收信 息 : 境 变  环 量 、 令行 和标 准输 入 。 体 在设 计 中应用 什么 方法 由  命 具
< F M > 标 签 的 ME oR THOD 属 性 来 决 定 。 在 

“ T ME HOD- GE 时 , c 程 序 传递 表单 编 码 信  - - T” 向 GI

息 的正常做 法是 通过 命令 来进 行 的 。大 多数 表单 编码  信 息都 是通过 QUE Y s I G 的环 境变量 来传 递  R   TR N
的 。如 果 “ THO ME D—P T” 表单 信 息 将通 过 标 准  OS ,

g c 然后 用 ma e命 令 编译 ( k ) 编 译 成 功 后 就 生  c, k ma e ,
成 一 个可运 行 在 ARM 下 的 T t d的可 执行 文件 。 ht p  
2 2 编 译 CGI程 序  .

输入来 读 取 。 有一 种不 使用 表单 就可 以 向 c 传送  还 GI 信 息 的方 法 , 就 是 把 信 息 直 接 追 加 在 UR 那 L地 址 后  面 , 息 和 URL之 间用 问号“ ” 隔 即可 。 信 ?分  

C 程序 核 心部 分描 述如 下 : GI  
c l— a o ( e e v , t i g t n ( CONTENT ,


LE NG TH ));  

C 常 用信 息交 换方 法具 体介 绍如 下 : GI  
④ GE 方 法  T

fr x= 0;l o( c && ( fo ( ti ) ; ! e f sdn ) X+ + )   {  

G T 方法 是对 数 据 的一个 请求 , 来 获取 静态 文  E 用 本信 息 。当使 用 GE 方法 时 , GI 序将 会从 环境 变  T c 程 量 QUE Y S I 中获 取数 据 。为 了处理来 自客  R TR NG 户 端 的请求 , GI C 必须 对 QUE   TR NG 中 的字 符  RY I 串进 行 分析 。当需要 从 服务 器获 取数据 并且 不改 变服  务 器 上 的数 据 时 , 该 选 用 GE 方 法 ; 是 , 果 请  应 T 但 如 求 中包 含 的字 符 串超 过 了一 定 长 度 , 般 是 10 4   一   2 B,

e ti / ] vl f k wod sdn ’. & 1;/ 标 准 输  nr s- . a— ma e r (ti,S’ e) /从 e x , 入 中读 取 一 组 数 据  pu ts ae e ti I3 v 1;/ 数 据 中 的 ” ” 次 变 成  lsop c (nr sx .a) /将 e + 再
空 格 

u ecp  ule ti / ] v1;/ 数 据 中 用 特 殊 方 法 标  nsae r(nr s x . a) / 将 e- 识 的 特 殊 字 符 还 原  e ti / ]n m nr s x . a e— ma e r (nr sx .a ,一 ’;/ e- k wod e ti I3 v l’ ) / 将  e

读 取 数 据 分 解 为 变 量 名 和 变 量 值 

维普资讯 http://www.cqvip.com

第2卷 1

第 8 期 

电 脑 开 发 与 应 用 

地址 为 1 2 1 8 1 . 4 。 目标 板 上 启 动 T tp 9 . 6. 02 4 h td服 务  在 lu i x控 制 台下 , 过 ¥>am- cicl u —c  n 通 r ul -n xgc b i


器 , 任 意 一 个 we 在 b浏 览 器 上 输人 1 2 1 8 1 . 4 , 9 . 6 . 0 2 4 
可 看 到 T tp h td服 务 器 上 的 网 页 如 图 2所 示 。  

Otsc i etg.  etg  sc ie编译 生成 C 程序 。 t GI  

2 3 目标 板 启 动 时 自 动 运 行 T t d服 务 器  .  ht p

在 ARM 上 运 行 . tp 之 前 ,还 要 修 改  Tht d
t t d c n 这个 配 置文 件 。它 主要 完成 对 Th td运  ht .o f p t p

4 小  结 
嵌 人 式 We   ev r从 本 质上 来 说 就 是 一段 能 响  bSre 应 We b浏览 器请 求 的程 序 。实 现 We b服 务 器主要 是  为 了使 用 ww 浏 览 器 , 样 用户 就可 以在 ww 浏 览  w 这 w 器 中设 置嵌 人 式 设 备工 作 参 数 , 过 局 域 网或 广 域 网  通
访 问和 控 制嵌 人 式 系统 设 备 , 活 的监 控 嵌 人 式设 备  灵 的运 行状 态 。用本 文提 供 的方 法实 现嵌 人式 系统 中的  we  ev r 通 用 性 强 , 式灵 活 , bS re , 形 易于 根 据 需要 方 便 

行 的端 口号 、 ev r 目录 、 gf e 、 t 和 c i 件  S re 根 l  i s hml g 文 o l
目录 及可 读写 的 目录 的属性 的设 置 。修 改 之 后 ,在 文 

件 系 统/ s/o a/ u r le lwww 目录 下 分 别 建 立 c i i、o   g- n lg b 目 录 , 拷 贝 前 面 编 译 的 Thtd 执 行 文 件 、 并 tp  
t t d cn 文 件 分 别  ̄ /bn和 /t/ht d目录 ; h t .o f p ] 1si ec ttp 拷  贝编译 好 的 c i 序到 / s/o a/ ww/g— i g程 u rlclw c ibn目录 ;  

将 相 关 we b网 页 文 件 放 在 / s/o a/ w 目录 下 ; u rlelww  
最 后 , 自 启 动 脚 本 中 加 人 / bn t t dC /t/ 在 s i/ht — ec  p t t d t t d c n 。这样 , 重新 上 电启 动 目标板 时 , ht /h t .o f p p 再   Thtd服务 器也 就 自动运 行 了 。 tp  
一一… ’ … ’   蝉  

的 修 改默认 的 we b页 面 , 够 在嵌 人 式平 台上 高效 率  能
的运行 。 种嵌 人式 we  ev r的实现 方案 可 以广泛  这 bS re

地 应用 于 网络 管理 、 程视 频 监 控 、 能 家居 等 领 域 , 远 智  
具 有广 泛 的应用 前 景 。  
参 考 文 献 

张为描;酣_ 表 m●一   单l述  1 本g, . ,i  蚴 名.■  嚣 文n一   用h   一 o放 t■
ht l m 

[ ] 海 思 Hi5 0处 理 器 用 户 手 册 [ ] R vs n . . . 1  31 M . e io 1 3 2 海  i
恩公 司,06 20.  

[] 马 忠 梅 , 善 平 , 2  李 康  慨 . ARM& I UX 嵌 入 式 系 统  LN 教 程 [ ] 北 京 : 京 航 空 航 天 大 学 出 版社 ,0 4 M . 北 20.   -   1 3 0 R iy.B i ig E ed d Ln x S se   M ] 3   el l ul n   mb d e  iu   ytmsE . d  
Cha er 1 20 . pt   0, 04 

[ ] 李 善 平 , 文 峰 . iu 4  刘 L n x与 嵌 入 式 系 统 [ ] 北 京 : 华  M . 清
大 学 出 版 社 , 0 3  20.

( 上接 第 3 2页)  
e   nd

4 结 束 语 
本 文 以 C i tS re l n / ev r结 构 , Dep i7 0作 开  e 用 lh  .

I @p r me e 4 0 F aa tr  ̄  
be n gi 
I e t I t  C ns r  n o


发 工具 , 数据 库技 术 完成 的收 费信 息管 理 系统 , 用 具有 
Ta l Co u b e( l m


nna e m C1。 Co um n l
—  

n me a C2, )Va u s Da a v l e ,Da a v l e , ) … l e ( t   a u C1 t   a u C2 …  

界 面友 好 、 信息 安 全等 应 用特 点 。依 靠 c/ s结 构 设计  的 收 费 系 统 , 用 科 技 化 、 息 化 对 高 校 收 费 进 行 管  利 信 理 , 高其 管理 科 学 化 、 低 成本 、 高工 效 是其 显 见  提 降 提
的 优势 , 这也 正 是本 系统 设计 所 追求 的 目标 。  
参 考 文 献 

i @ @ e rr f ro <> Og t  R L M /   o o P OB E /测 试 、 回滚 
e   nd c m m i t a c to   o t r ns a i n  
rt n 0 e ur    

P R0BIE :/  M /回滚 
Ro l a k t a s c i n lb c   r n a to  
r t n    e ur 1

[] 余 1 

晨 , 文 炬 . QL S re  00 培 训 教 程 E ] 北  李 S   evr2 0 M .

京 : 华 大学 出 版 社 ,0 1 清 20.  

G0 

[] 储启 明 , 2  周  旭 . ep i 典 型 实 例 开 发 篇 [ ] 北 京 : D lh 7   M .  
清 华 大 学 出版 社 ,0 3 20.  

在 系 统 依 靠 计 算 机 运 转 带 来 收 费 过 程 方 便 的 同  时, 也要 预 防因计算 机 、 网络 事 故而 使信 息数 据损 失 的  风 险 。 于 资金信 息 的特殊 性 , 鉴 防止 出现 不 可预见 的意  外, 在收 费 系  中增 加 了数 据库 备份 工作 , 以提 高抗 击  风 险的能 力 , 证信 息数 据 的安 全 。 保  

E 3 US 3  A.Se eTe er, a i   ahc .De h 6开 发  tv  i i X v rP ceo x a e l i p 
人 员 指 南 [ ] 北 京 : 械 工 业 出 版 社 ,0 3 M . 机 20.  

[ 3 张大 年 , 4  廖智 勇. ep i D lh 数据 库应 用开 发技 术 与实 例 
[ . 京 : 华 大 学 出版 社 , 02 M] 北 清 20.