发布新日志

  • Nokia工程模式完整中文说明(1)

    2008-05-27 10:49:13

    适用型号:5110,5130,6110,6130,6138,6150,3210,8210,8850
    .简介 
      Nokia的工程模式名称为\"Net monitor\" Net monitor这个选项只能透过特殊开启方式的手机使用者接口呈现(其开启过程不拟讨论一般标准的手机是无法看到的,其选项画面是\"罗赖把\"和铁锤和手机相当符合工程模式的意味.Net monitor为常驻,不需再输入任何密码
      使用Net monitor是为了确认GSM900/1800网络的执行情形及参考某些手机内有用的信息 51xx/6110/6138,为第10选项,6150为第11选项,分组画面皆同. Net monitor51xx/6110/6138,共有88个画面,(V 5.0X版后亦为89画面) 615089个画面,19个画面部分称为\"Operator Net monitor\",至于包含后面部份 的画面则为\"R&D Net monitor\",编号前面的画面以系统网络的功能为主,后面则以该手机内软硬件数据为主
      使用Net monitor的手机并非精准的仪器,所以要注意以下几点︰ 所看到的数值只是近似值(例如︰在画面1345中的RSSI因为软件不是随时更新的,所以呈现的数值不一定符合现实情况中已改 变的数值.也因此,这本手册上所介绍的数值也会因为软件的更新而有 所不同,仅供作参考用 某些使用者界面和手机所附的使用手册说明有所不同 
      有些性能表现会比标准的手机来的不同 一般GSM行动电话系统工程人员所常用部份为Operator Net monitor , 因此本说明将以该部份为主此后本系列文章以笔者的5130/6150画面及操作法为主.其它机型若有不同之处, 再另行说明.笔者才疏学浅\,忝颜编写说明,若有谬误遗落之处,盼各界先进不吝指正
    .基本操作说明
      启动了Net monitor后,手机使用上没有什么太大的不同,除了一些画面上的不同。 Net monitor是所谓的指示性软件(soft indicator) 意思是它只有在屏幕上不须显示其它功能时才会出现。 例如,当开始拨电话时,Net monitor就会消失, 直到电话拨完,电话号码消失,而Net monitor才又重新出现在屏幕上
      Net monitor包含两种模式︰ 执行模式(execute mode)和数据显示模式(data display mode)
      执行模式是依照以上的启动方法进入,是一次显示一种的形式, 若要在执行模式下进行另一种的测试时,则必须重新启动Net monitor选项然后再进入该选项一次例如画面14,(51xx才有)17,18(6110/6138),19等等。 而数据显示模式中,可以在主画面中看到测试的值,例如频道(channel)Power Level Cell ID.利用上下键可轻松的转换测试项目,而不必再利用到menu 但是在资料显示模中,有的画面虽然看得到,但不能进行任何执行或设定。
    2-1.选择画面 
    先按\"菜单\",然后用上下键移动画面至Net monitor选项.
    选到该选项后,选择\"进入\",此时画面将变成:
    |Test | | Test | 
    |---------------| |---------------|
    | 01 |  | 01| |---------------| 
    |---------------| |
    确认 | | 确认 清除|
    (51xx系列) (61xx系列)
    在空格处键入欲进入的画面数值,11就键入11后选择\"确认\". 
    若欲离开所处画面,\"菜单\"\"返回\"离开要再进入其它画面则再重新选择Net monitor,同前述方法进入该画面
    亦可使用上下键寻找欲进入之画面.
    如欲离开则输入\"00\" 严重警告:千万不要在此画面中填入241,否则Net monitor将永久关闭
    直到再次使用特殊方式开启.若为拥有R&D Net monitor 填入242将会永久关闭19画面后之资料.
    请使用者小心
    2-2.收发电话 如同一般发收话操作方法.通话中亦可参照2-1节切换画面
    唯来电显示及来电分组图案(6系列only)因画面显示信息之必要而暂时不能查阅
    2-3.画面显示 
    当手机处于使用Net monitor,画面显示格式如下:
    ========================================== 
    1 01<-工程模式画面编号 23:14<----时间显示
    702 -81 xxx<------
    0 1 x xxxx<------该画面显示资料区
    38 39<------
    CCCH <------
    菜单<--------功能选择
    ==========================================
    收讯格数和电池电量显示皆固定于原本位置.
    当有系统警告讯息时,会暂时跳离该画面,显示警告讯息.
    以提醒使用者,随即将恢复工程模式画面.
    2-4.在线求助(Online Help)
    Net monitor的画面繁多,加上几乎皆以数字表示,易让使用者迷惑.
    此时使用者可按*键不放,画面将切换为该画面字段的缩写或代号.
    以供使用者查阅.此求助画面将停留至使用者再次长按*键始离开.
    (51xx系列 V5.00~5.02online help)
    .Net monitor画面说明
    Net monitor中可看到以下的信息(以前19个画面为例)
    画面01︰使用中基地台和频道的信息
    画面02︰更多有关使用中基地台和频道的信息
    画面03︰使用中基站和邻近两个最强的频道的信息
    画面04︰邻近第三、四、五个频道的信息
    画面05︰邻近第六、七、八个频道的信息
    画面06︰可用及不可用网络选择的显示
    画面07︰使用中频道的系统信息
    画面08:无资料
    画面09:无资料
    画面10︰显示呼叫重复间隔的数值,TMSI,周期性位置更新的时间(periodic
    location update timer),AFCAGC等信息
    画面11︰国家识别码,网络代码,基地台编号等信息
    画面12︰加密状况(ciphering)、跳频(hoppingDTX状态及IMSI侦测状况的相关信息
    画面13DTX状态的显示
    画面14:画面指示的切换(61xx)
    画面15:无资料
    画面16:无资料
    画面17︰切换BTS_TEST(Lock Channel)状态
  • NOKIA工程模式详细介绍

    2008-05-27 10:23:10

    正文

        许多朋友都听说过工程模式,但对工程模式究竟如何开启又有哪些作用就不太清楚了,这里我以nokia手机工程模式为例给大家介绍一下工程模式的开启和使用技巧。      几乎所有的nokia手机都有工程模式,(经测试,nokia的5110、5130、6110、6130、6138、6150、3210、8210、8850、6210、3310、8250均具备工程模式)不过它是隐藏在菜单中,需要特殊的方法打开工程模式后你才能看见。  net monitor在51××/6100中共有88个画面(如6100软件版本在v5.0以后则为89个画面),6150则为89个画面,而8210则编号为140的画面,实际上有些为空,但总的比6150多。前19个画面称为operator net monitor,以系统网络功能为主;后面的则被称为r&d net monitor,以手机内软硬件的资料为主.注:诺基亚8210工程模式有140个画面

        注意:很多朋友都以为工程模式能修改手机功能或增强信号,其实,工程模式只能显示gsm900/1800网络的执行情形或显示手机内某些有用信息作为参考用,不能修改手机功能或增强手机信号,同时,由于手机本身并非精确的仪器,所有显示的数值仅是近似值,而且因为现在的网络技术不断更新,而手机软件是原先设计的,可能也会有不符的情况发生,因此切记,工程模式仅能作参考使用。   

    一、nokia工程模式的打开

      nokia的工程模式在菜单中显示为“net monitor”,中文手机也是如此,net monitor直译就是“网络监视器”,也比较符合实际。工程模式开启后为常驻,不需再输入任何密码,当然你也可以通过开启的方法再把其关闭。工程模式的选项画面是螺丝刀和铁锤,相当符合工程模式的意味 。目前能开启nokia工程模式的软件很多,如著名的 logo manager就可以通过数据线或笔记本自带的红外线打开工程模式,功能十分强大。另外有一个专门用于数据线开启工程模式的小程序94xft.exe,不过只能在dos下使用。用logo manager很直观,用数据线或者红外线把手机和电脑连好后,按一下钮就开启工程模式   手机良伴作为手机发烧友的装备也越来越流行,但原来的软件中并不能开启工程模式,双扬公司也专门为手机良伴提供了一个开启工程模式的小程序,名为netmon.exe,不过只对具备红外线功能的诺基亚手机有用。  运行netmon.exe,可选择对应机型并有打开field test mode和engineer mode以及关闭三项操作,其中field test mode只能打开1-19个画面,而engineer mode则可打开全部89个画面。netmon可以打开engineer mode和field test mode,也可以关闭   

    二、工程模式简介

      工程模式打开后,手机使用上没有什么太大的不同,只是手机上会有些不同的画面,这些画面并不会影响你使用手机, 即它只会在屏幕上不须显示其他功能时才会出现。例如,当开始拨电话时,net monitor就会消失,直到电话拨完,电话号码消失,而工程模式的信息才会出现在屏幕上(注意,在显示工程模式信息时,来电显示、分组图标、通话时间不会被显示出来)。 

       net monitor包含两种模式:资料显示模式(data display mode)和执行模式(execute mode)。进入资料模式的方法是在菜单选项中按上下键切换到net monitor,按确认进入。在资料显示模式中,可以在主画面中看到测试的值,例如channel(频道),power level,cell id等,利用上下键可轻松的转换测试项目(左上角的数字就是表示显示的是第几个画面),而不必再回到菜单选项。但是在资料显示模式中,有的画面虽然看得到,但不能进行任何执行或设定。执行模式是在工程模式直接输入数字的启动方法进入,是一次显示一种的形式,若要在执行模式下进行另一种的测试时,则必须重新启动net monitor选项,然后再进入该选项一次,如我们下面要讲到的输入18进入开关背景灯的画面等等。   

    三、工程模式常用指令

       1.离开工程模式 输入00,确认  2.关闭工程模式 输入241,确认(注意,这种方式将关闭工程模式直到你再次用特殊方法打开)  3.显示在线帮助信息 在工程模式中,按住*键不放,画面将切换到该画面栏位的缩写或代号,并有简短的帮助信息供使用者查阅,此求助画面将停留至使用者再次长按*键始离开。(注意51xx系列的v5.00~5.02版本无在线帮助信息)   4.常用画面  在net monitor中可看到每个画面代表的信息(以前19个画面为例):   画面01:使用中基地台和频道的信息  画面02:更多有关使用中基地台和频道的信息  画面03:使用中基站和邻近两个最强的频道的信息  画面04:邻近第三、四、五个频道的信息  画面05:邻近第六、七、八个频道的信息  画面06:可用及不可用网路选择的显示  画面07:使用中频道的系统信息  画面08:无资料  画面09:无资料  画面10:显示呼叫重复间隔的数值,tmsi,周期性位置更新的时间(periodic  location update timer),afc,agc等信息  画面11:国家识别码,网路代码,基地台编号等信息  画面12:加密状况(ciphering)、跳频(hopping)dtx状态及imsi侦测状况的相关信息  画面13:dtx状态的显示  画面14:画面指示的切换(61xx无)   画面15:无资料  画面16:无资料  画面17:切换bts_test(lock channel)状态  画面18:切换背景灯光的关闭(6110/6138无)   画面19:切换基站限制的可用状态(toggle cell barred status)

  • TD-SCDMA 移动通信原理英文缩写对照

    2008-05-26 16:23:34

    英文缩写对照
    3G-MSC 3rd Generation Mobile Switching Centre 第三代移动交换中心
    3G-SGSN 3rd Generation Serving GPRS Support Node 第三代服务GPRS 的节点
    3GPP 3rd Generation partnership project 3 代合作项目
    AAL2 ATM Adaptation Layer type 2 ATM 适配层2
    AAL5 ATM Adaptation Layer type 5 ATM 适配层5
    ACIR Adjacent Channel Interference Ratio 邻道干扰比
    ACLR Adjacent Channel Leakage power Ratio 邻道泄漏功率比
    ACS Adjacent Channel Selectivity 邻道选择性
    210
    ALCAP Access Link Control Application Part 接入链路控制应用部分
    AMC Adapt Modulation Coding 自适应调制编码
    ARQ Automatic Repeat Request 自动重复请求
    ASN.1 Abstract Syntax Notation One 抽象语义描述1
    ATM Asynchronous Transfer Mode 异步传输模式
    AuC Authentication Centre 鉴权中心
    BCH Broadcast Channel 广播信道
    BCCH Broadcast Control Channel 广播控制信道
    BER Bit Error Rate 误比特率
    BGCF Breakout Gateway Control Function 突破网关控制功能
    BSC     Base Station Controller 基站控制器
    BSS     Base Station Subsystem 基站子系统
    BTS     Base Transceiver Station 基站收发机
    CC Call Control 呼叫控制
    CCCH Common Control Channel 公共控制信道
    CCH Control Channel 控制信道
    CCPCH ` Common Control Physical Channel 公共控制物理信道
    CDMA Code Division Multiple Access 码分多址
    CDMA TDD CDMA Time Division Duplex 码分多址 时分双工
    CFN Connection Frame Number 连接帧号
    CM Connection Management 连接管理
    CN Core Network 核心网
    CQI Channel Quality Indicator 信道质量指示
    CRC Cyclic Redundancy Check 循环冗余检验
    CRNC Controlling Radio Network Controller 控制的无线网络控制器
    CS Circuit Switched 电路交换
    CSCF Call Server Control Function 呼叫服务器控制功能
    DCA Dynamic channel allocation 动态信道分配
    DCCH Dedicated Control Channel 专用控制信道
    DCH Dedicated Transport Channel 专用传输信道
    DL Downlink 下行链路
    DOA Direction Of Arrival 到达方向
    DPCH Dedicated Physical Channel 专用物理信道
    DRNC Drift Radio Network Controller 漂移无线网络控制器
    DRNS Drift RNS 漂移RNS
    DS CDMA Direct Spreading CDMA 直接扩频码分多址
    DSCH Down-link Shared Channel 下行共享信道
    DTCH Down-link Traffic Channel 下行业务信道
    DwPCH Downlink Pilot Channel 下行导频信道
    DwPTS Downlink Pilot Time Slot 下行导频时隙
    EIR Equipment Identity Register 设备标识寄存器
    EP Elementary Procedure 基本过程
    FACH Forward Access Channel 前向接入信道
    211
    FDD Frequency Division Duplex 频分双工
    FFS For Further Study 进一步研究
    FP Frame Protocol 帧协议
    FPACH Fast Physical Access Channel 快速物理接入信道
    FT Frame Type 帧类型
    GGSN    Gateway GPRS Support Node GPRS 网关支持节点
    GMM GPRS Mobility Management GPRS 移动性管理
    GMSC Gateway MSC 网关移动业务中心
    GPRS    General Packet Radio Service 通用分组无线业务
    GPS Global Positioning System 全球定位系统
    GRR GPRS Radio Resources GPRS 无线资源
    GSM Global System for Mobile Communication 全球移动通信系统
    GTP GPRS Tunneling Protocol GPRS 隧道协议
    HARQ Hybrid Automatic Repeat Request 混合自动重复请求
    HFN Hyper Frame Number 超帧号
    HLR     Home Location Register 归属位置寄存器
    HSDPA High Speed Downlink Packet Access 高速下行分组接入
    HSS Home Subscriber Server 归属用户服务器
    IMSI International Mobile Subscriber Identity 国际移动用户标识码
    IMT-2000 International Mobile Telecommunications 2000
    国际电联命名3 代移动通信系统
    IP Internet Protocol 因特网协议
    IS-2000 IS-95 Evolution Standard (cdma2000) cdma2000
    ITU International Telecommunication Union 国际电联
    L1 Layer 1 层1
    L2 Layer 2 层2
    LAN Local Area Network 本地网络
    LMU Location Measurement Unit 位置测量单元
    MAC Medium Access Control 媒质接入控制
    MAP Mobile Application Part 移动应用部分
    MC CDMA Multiple Carrier CDMA 多载波码分多址
    MC TDMA Multiple Carrier TDMA 多载波时分多址
    ME     Mobile Equipment 移动设备
    MGCF Media Gateway Control Function 媒体网关控制功能
    MGW Media Gateway 媒体网关
    MIB Master Information Block 控制信息块
    Mcps Mega Chip Per Second 每秒兆Chip
    MM Mobility Management 移动性管理
    MPLS MultiProtocol Label Switching 多协议标签交换
    MRF Media Resource Function 媒体资源功能
    MRFC Media Resource Function Controller 媒体资源功能控制器
    MRFP Media Resource Function Processor 媒体资源功能处理器
    MSC     Mobile Services Centre 移动业务中心
    212
    MTP Message Transfer Part 消息传输部分
    MTP3-B Message Transfer Part level 3 3 级消息传输部分
    M3UA MTP3 User Adaptation Layer MTP3 用户适配层
    NAS Non Access Stratum 非接入层
    NBAP NodeB Application Part Node B 应用部分
    O&M Operation and Maintenance 操作维护
    PC Power Control 功率控制
    PCCH Paging Control Channel 寻呼控制信道
    PCCPCH Primary Common Control Physical Channel 基本公共控制物理信道
    PCH Paging Channel 寻呼信道
    PDSCH Physical Downlink Shared Channel 物理下行链路共享信道
    PLMN Public Land Mobile Network 公共陆地移动网
    PPP Point-to-Point Protocol 点对点协议
    PRACH Physical Random Access Channel 物理随机接入信道
    PS Packet Switched 分组交换
    PSTN Public Swithed Telephone Network 公共电话交换网络
    PUSCH Physical Uplink Shared Channel 物理上行链路共享信道
    QAM Quadrature Amplitude Modulation 正交幅度调制
    QE Quality Estimate 质量评估
    QPSK QuadriPhase Shift Keying 四相移键控
    QoS Quality of Service 业务质量
    R-SGW Roaming Signalling Gateway 漫游信令网关
    RAB Radio access bearer 无线接入承载
    RACH Random Access Channel 随即接入信道
    RANAP Radio Access Network Application Part 无线接入网应用部分
    RAT Radio Access Technology 无线接入技术
    RL Radio Link 无线链路
    RLC Radio Link Control 无线链路控制
    RNC Radio Network Controller 无线网络控制器
    RNS Radio Network Subsystem 无线网络子系统
    RNSAP Radio Network Subsystem Application Part 无线网络子系统应用部分
    RNTI Radio Network Temporary Identity 无线网络临时识别
    RR Radio Resources 无线资源
    RRC Radio Resource Control 无线资源控制
    RSVP Resource ReserVation Protocol 资源保留协议
    RTCP Real Time Control Protocol 实时控制协议
    RTP Real Time Protocol 实时协议
    SA Service Area 服务区域
    SABP service area broadcast protocol 服务区广播协议
    SAP Service Access Point 服务接入点
    SBM Subnetwork Bandwidth Management 子网带宽管理
    SC TDMA Single Carrier TDMA 单载波时分多址
    SSCF Service Specific Co-ordination Function 特定业务协调功能
    213
    SCCP Signalling Connection Control Part 信令连接控制部分
    SCH Synchronization Channel 同步信道
    SCCPCH Secondary Common Control Physical Channel 辅助公共控制物理信道
    SCP Service Control Point 业务控制点
    SCTP Simple Control Transmission Protocol 简单控制传输协议
    SFN System Frame Number 系统帧号
    SGSN    Serving GPRS Support Node GPRS 服务支持节点
    SIB System Information Block 系统信息块
    SIM     Subscriber Identity Module 用户识别模块
    SLF Subscrīption Location Function 签约位置功能
    SM Session Management 会话管理
    SRNC Serving Radio Network Controller 服务无线网络控制
    SRNS Serving RNS 服务RNS
    SS7 Signalling System No. 7 7 号信令系统
    SSCF Service Specific Co-ordination Function 具体业务协调功能
    SSCF-NNI Service Specific Coordination Function – Network Node Interface
    具体业务协调功能网元接口
    SSCOP Service Specific Connection Oriented Protocol 特定业务面向连接协议
    .STM Synchronous Transfer Mode 同步传输模式.
    T-SGW Transport Signalling Gateway 传输信令网关
    TB Transport Block 传输块
    TBS Transport Block Set 传输块集
    TCP Transfer Control Protocol 传输控制协议
    TDD Time Division Duplex 时分双工
    TDMA Time Division Multiple Access 时分多址接入
    TD-SCDMA Time Division Synchronous CDMA 时分同步--码分多址接入
    TFC Transport Format Combination 传送格式组合
    TFCI Transport Format Combination Indicator 传送格式组合指示
    TFCS Transport Format Combination Set 传送格式组合集
    TFI Transport Format Indicator 传送格式指示
    TFS Transport Format Set 传送格式集
    ToA Time of arrival 到达时间
    TPC Transmit Power Control 发射功率控制
    TSN Transmission Sequence Number 传输序列号
    TTI Transmission Time Interval 传输时间间隔
    UDP User Datagram Protocol 用户数据报协议
    UE User Equipment 用户设备
    UL Uplink 上行链路
    UMTS Universal Mobile Telecommunication System 陆地移动通信系统
    UpPTS Uplink Pilot Time slot 上行导频时隙
    UpPCH Uplink Pilot Channel 上行导频信道
    USCH Up-link Shared Channel 上行共享信道
    USIM     UMTS Subscriber Identity Module UMTS 用户识别模块
    214
    UTRAN UMTS Terrestrial Radio Access Network UMTS 陆地无线接入网
    VC Virtual Circuit 虚电路
    VLR     Visitor Location Register 访问位置寄存器
    WAP Wireless Application Protocol 无线应用协议
    WCDMA Wideband Code Division Multiple Access 宽带cdma
    WG Working Group 工作组
    WWW World Wide Web 万维网
    XRES EXpected user RESponse 期待的用户响应

  • Adobe Acrobat Reader快捷键

    2008-05-26 15:47:25

    选择工具

     
    手形 【H】
    文本选择工具 【V】
    放大工具 【Z】
    缩小工具 【Shift】+【Z】
    隐藏的文本选择工具:栏选择、图形选择、表选择 【Shift】+【V】
    图像选择 【G】

    导览

     
    上一屏 【Pageup】
    下一屏 【Pagedown】
    临时选择手形工具 【空格】
    第一页 【home】
    最后一页 【end】
    上一页 【←】
    下一页 【→】
    向上滚动 【↑】
    向下滚动 【↓】
    显示/隐藏全屏 【Ctrl】+【L】
    跳至页面 【Ctrl】+【N】
    上一页 【←】
    跳至上一视图 【Alt】+【←】
    跳至下一视图 【Alt】+【→】
    下一页 【→】
    跳至上一文档 【Alt】+【Shift】+【←】
    跳至下一文档 【Alt】+【Shift】+【→】
    第一页 【Shift】+【Ctrl】+向上箭头
    最后一页 【Shift】+【Ctrl】+【↓】
    下一标签 【Ctrl】+【Tab】
    • 功能键   
     
    帮助 【F1】
    显示/隐藏书签 【F5】
    下一窗格 【F6】
    显示/隐藏工具栏 【F8】
    在导览窗格中,跳至文档视图并保持导览窗格打开 【Shift】+【F6】
    下一窗口 【Ctrl】+【F6】
    显示/隐藏缩略图 【F4】
    显示/隐藏菜单栏 【F9】
  • 编辑文档   
  •  
    全部选定 【Ctrl】+【A】
    复制 【Ctrl】+【C】
    缩放到 【Ctrl】+【M】
    打开 【Ctrl】+【O】
    打印 【Ctrl】+【P】
    退出 【Ctrl】+【Q】
    旋转页面 【Ctrl】+【R】
    粘贴 【Ctrl】+【V】
    关闭 【Ctrl】+【W】
    剪切 【Ctrl】+【X】
    撤消 【Ctrl】+【Z】
    适合窗口 【Ctrl】+【0】
    实际大小 【Ctrl】+【1】
    适合宽度 【Ctrl】+【2】
    适合可见 【Ctrl】+【3】
    放大 【Ctrl】+【+】
    缩小 【Ctrl】+【-】
    临时放大 【Ctrl】+【空格】
    切换脚本 【Ctrl】+【F1】
    全部不选 【Shift】+【Ctrl】+【A】
    页面设置 【Shift】+【Ctrl】+【P】
    另存为 【Shift】+【Ctrl】+【S】
    校样颜色 【Ctrl】+【Y】
    顺时钟旋转 【Shift】+【Ctrl】+【+】
    逆时钟旋转 【Shift】+【Ctrl】+【-】
  • 窗口   
  •  
    查找 【Ctrl】+【F】
    再次查找 【Ctrl】+【G】
    文档小结对话框 【Ctrl】+【D】
    首选项对话框 【Ctrl】+【K】
    层叠 【Shift】+【Ctrl】+【J】
    水平平铺 【Shift】+【Ctrl】+【K】
    垂直平铺 【Shift】+【Ctrl】+【L】
    关闭全部 【Alt】+【Ctrl】+【W】
  • ARP攻击原理及类型

    2008-05-23 11:52:18

    在局域网中,通过ARP协议来完成IP地址转换为第二层物理地址(即MAC地址)的。ARP协议对网络安全具有重要的意义。通过伪造IP地址和MAC地址实现ARP欺骗,能够在网络中产生大量的ARP通信量使网络阻塞。
    ARP协议是“Address Resolution Protocol”(地址解析协议)的缩写。在局域网中,网络中实际传输的是“帧”,帧里面是有目标主机的MAC地址的。在以太网中,一个主机要和另一个主机进行直接通信,必须要知道目标主机的MAC地址。但这个目标MAC地址是如何获得的呢?它就是通过地址解析协议获得的。所谓“地址解析”就是主机在发送帧前将目标IP地址转换成目标MAC地址的过程。ARP协议的基本功能就是通过目标设备的IP地址,查询目标设备的MAC地址,以保证通信的顺利进行。
    每台安装有TCP/IP协议的电脑里都有一个ARP缓存表,表里的IP地址与MAC地址是一一对应的,如下
    主机 IP地址 MAC地址
    A 192.168.16.1 aa-aa-aa-aa-aa-aa
    B 192.168.16.2 bb-bb-bb-bb-bb-bb
    C 192.168.16.3 cc-cc-cc-cc-cc-cc
    D 192.168.16.4 dd-dd-dd-dd-dd-dd
    我们以主机A(192.168.16.1)向主机B(192.168.16.2)发送数据为例。当发送数据时,主机A会在自己的ARP缓存表中寻找是否有目标IP地址。如果找到了,也就知道了目标MAC地址,直接把目标MAC地址写入帧里面发送就可以了;如果在ARP缓存表中没有找到相对应的IP地址,主机A就会在网络上发送一个广播,目标MAC地址是“FF.FF.FF.FF.FF.FF”,这表示向同一网段内的所有主机发出这样的询问:“192.168.16.2的MAC地址是什么?”网络上其他主机并不响应ARP询问,只有主机B接收到这个帧时,才向主机A做出这样的回应:“192.168.16.2的MAC地址是bb-bb-bb-bb-bb-bb”。这样,主机A就知道了主机B的MAC地址,它就可以向主机B发送信息了。同时它还更新了自己的ARP缓存表,下次再向主机B发送信息时,直接从ARP缓存表里查找就可以了。ARP缓存表采用了老化机制,在一段时间内如果表中的某一行没有使用,就会被删除,这样可以大大减少ARP缓存表的长度,加快查询速度。
    从上面可以看出,ARP协议的基础就是信任局域网内所有的人,那么就很容易实现在以太网上的ARP欺骗。对目标A进行欺骗,A去Ping主机C却发送到了DD-DD-DD-DD-DD-DD这个地址上。如果进行欺骗的时候,把C的MAC地址骗为DD-DD-DD-DD-DD-DD,于是A发送到C上的数据包都变成发送给D的了。这不正好是D能够接收到A发送的数据包了么,嗅探成功。
    A对这个变化一点都没有意识到,但是接下来的事情就让A产生了怀疑。因为A和C连接不上了。D对接收到A发送给C的数据包可没有转交给C。
    做“man in the middle”,进行ARP重定向。打开D的IP转发功能,A发送过来的数据包,转发给C,好比一个路由器一样。不过,假如D发送ICMP重定向的话就中断了整个计划。
    D直接进行整个包的修改转发,捕获到A发送给C的数据包,全部进行修改后再转发给C,而C接收到的数据包完全认为是从A发送来的。不过,C发送的数据包又直接传递给A,倘若再次进行对C的ARP欺骗。现在D就完全成为A与C的中间桥梁了,对于A和C之间的通讯就可以了如指掌了。

    ARP(Address Resolution Protocol)是TCP/IP协议中用来解析网络节点地址的底层协议。网络中流传的ARP病毒或恶意软件利用ARP机制进行地址欺骗。最常见的ARP问题可以分为如下三种类型:
    1) 网关或服务器IP欺骗:利用ARP机制,冒用局域网中的网关或其他服务器IP地址,把正常应该传给网关或服务器的数据流引向进行ARP欺骗的计算机,从而造成网络中断或时断时续,或数据丢失。
    2) 隐蔽盗用IP:利用ARP机制,在对方不知情的情况下盗用他人IP,进行恶意网络活动,由此可进行各种侵权操作。
    3) 强行占用IP:利用ARP机制,攻击他人IP,最终达到占用他人IP,由此进行各种恶意或侵权操作。

  • GSM 01.02 规范

    2008-05-23 10:28:39

    ETSI TS 101 622 V6.0.1 (2001-02)
    Technical Specification
    Digital cellular telecommunications system (Phase 2+);
    General descrīption of a GSM Public Land Mobile
    Network (PLMN)
    (GSM 01.02 version 6.0.1 Release 1997)
    GLOBAL SYSTEM FOR
    MOBILE COMMUNICATIONS
    R
    (GSM 01.02 version 6.0.1 Release 1997)
    ETSI
    2 ETSI TS 101 622 V6.0.1 (2001-02)
    Reference
    DTS/SMG-010102Q6
    Keywords
    Digital cellular telecommunications system,
    Global System for Mobile communications (GSM)
    ETSI
    650 Route des Lucioles
    F-06921 Sophia Antipolis Cedex - FRANCE
    Tel.: +33 4 92 94 42 00 Fax: +33 4 93 65 47 16
    Siret N° 348 623 562 00017 - NAF 742 C
    Association à but non lucratif enregistrée à la
    Sous-Préfecture de Grasse (06) N° 7803/88
    Important notice
    Individual copies of the present document can be downloaded from:
    http://www.etsi.org
    The present document may be made available in more than one electronic version or in print. In any case of existing or
    perceived difference in contents between such versions, the reference version is the Portable Document Format (PDF).
    In case of dispute, the reference shall be the printing on ETSI printers of the PDF version kept on a specific network drive
    within ETSI Secretariat.
    Users of the present document should be aware that the document may be subject to revision or change of status.
    Information on the current status of this and other ETSI documents is available at http://www.etsi.org/tb/status/
    If you find errors in the present document, send your comment to:
    editor@etsi.fr
    Copyright Notification
    No part may be reproduced except as authorized by written permission.
    The copyright and the foregoing restriction extend to reproduction in all media.
    © European Telecommunications Standards Institute 2001.
    All rights reserved.
    ETSI
    (GSM 01.02 version 6.0.1 Release 1997) 3 ETSI TS 101 622 V6.0.1 (2001-02)
    Contents
    Intellectual Property Rights ..........................................................................................................................4
    Foreword.....................................................................................................................................................4
    1 Scope.................................................................................................................................................5
    1.1 References ................................................................................................................................................. 5
    1.2 Abbreviations........................................................................................................................................... 12
    2 General............................................................................................................................................13
    3 Services ...........................................................................................................................................13
    4 System Architecture, Entities And Functions ....................................................................................14
    4.1 The Mobile Station (MS)........................................................................................................................... 14
    4.2 The Base Station System (BSS) ................................................................................................................. 15
    4.3 The Mobile-services Switching Centre (MSC) ........................................................................................... 15
    4.4 The Home Location Register (HLR) .......................................................................................................... 15
    4.5. The Visitor Location Register (VLR) ......................................................................................................... 15
    4.6. Group Call Register (GCR)........................................................................................................................ 16
    4.7. Operation and Maintenance Centre (OMC) ................................................................................................ 16
    4.8. System architecture, interworking and interfaces........................................................................................ 16
    5 Subsystems of a GSM PLMN...........................................................................................................16
    5.1 The Base Station System (BSS) ................................................................................................................. 17
    5.2 The Switching and Management Subsystems (SMSS) ................................................................................ 18
    5.3 Operation and maintenance subsystem....................................................................................................... 18
    6 Other aspects ...................................................................................................................................19
    6.1 Signalling................................................................................................................................................. 19
    6.2 Transmission plan .................................................................................................................................... 20
    6.3 Technical descrīption of services and facilities........................................................................................... 20
    6.4 Coding aspects and information processing................................................................................................ 20
    6.5 Interworking............................................................................................................................................. 20
    Annex A (informative): Document change history ..........................................................................22
    History ......................................................................................................................................................23
    (GSM 01.02 version 6.0.1 Release 1997)
    ETSI
    4 ETSI TS 101 622 V6.0.1 (2001-02)
    Intellectual Property Rights
    IPRs essential or potentially essential to the present document may have been declared to ETSI. The information
    pertaining to these essential IPRs, if any, is publicly available for ETSI members and non-members, and can be found
    in ETSI SR 000 314: "Intellectual Property Rights (IPRs); Essential, or potentially Essential, IPRs notified to ETSI in
    respect of ETSI standards", which is available from the ETSI Secretariat. Latest updates are available on the ETSI Web
    server (http://www.etsi.org/ipr).
    Pursuant to the ETSI IPR Policy, no investigation, including IPR searches, has been carried out by ETSI. No guarantee
    can be given as to the existence of other IPRs not referenced in ETSI SR 000 314 (or the updates on the ETSI Web
    server) which are, or may be, or may become, essential to the present document.
    Foreword
    This Technical Specification (TS) has been produced by ETSI Technical Committee Special Mobile Group (SMG).
    The present document specifies GSM Public Land Mobile Network (PLMN). It contains a definition and a summarised
    descrīption of the elements comprised in the network, and their functions and the associated performance objectives
    within the digital cellular telecommunications system (Phase 2/Phase 2+).
    The present document is a TC-SMG approved GSM technical specification version 5, which contains GSM Phase 2+
    enhancements/features to the version 4 GSM technical specification. The ETS from which this Phase 2+ GTS has
    evolved is Phase 2 GSM ETR 99 (GSM 01.02 version 4.0.1).
    GTS are produced by TC-SMG to enable the GSM Phase 2+ specifications to become publicly available, prior to
    submission for the formal ETSI standards approval procedure to become European Telecommunications Standards
    (ETS). This ensures the earliest possible access to GSM Phase 2+ specifications for all Manufacturers, Network
    operators and implementors of the Global System for Mobile communications.
    The contents of the present document are subject to continuing work within TC-SMG and may change following formal
    TC-SMG approval. Should TC-SMG modify the contents of the present document it will then be republished by ETSI
    with an identifying change of release date and an increase in version number as follows:
    Version 6.x.y
    where:
    6 indicates Release 1997 of GSM Phase 2+
    y the third digit is incremented when editorial only changes have been incorporated in the specification;
    x the second digit is incremented for all other types of changes, i.e. technical enhancements, corrections,
    updates, etc.
    The specification from which the present document has been derived was originally based on CEPT documentation,
    hence the presentation of the present document may not be entirely in accordance with the ETSI rules.
    Reference is made within the present document to GSM-TSs (note).
    NOTE: TC-SMG has produced documents which give the technical specifications for the implementation of the
    digital cellular telecommunications system. Historically, these documents have been identified as GSM
    Technical Specifications (GSM-TSs). These TSs may have subsequently become I-ETSs (Phase 1), or
    ETSs/ETSI Technical Reports (ETRs) (Phase 2). TC-SMG has also produced ETSI GSM TSs which give
    the technical specifications for the implementation of Phase 2+ enhancements of the digital cellular
    telecommunications system. These version 6.x.x GSM Technical Specifications may be referred to as
    GTSs.
    ETSI
    (GSM 01.02 version 6.0.1 Release 1997) 5 ETSI TS 101 622 V6.0.1 (2001-02)
    1 Scope
    The present document gives a general descrīption of a GSM Public Land Mobile Network (PLMN). It contains a
    definition and a summarised descrīption of the elements comprised in the network, and their functions and the
    associated performance objectives. The services and facilities that the network can offer to its users, are also described
    as well as the general lines of signalling procedures, operation and maintenance.
    Since the present document includes information spread throughout all GSM specifications the present document can
    serve as guide.
    The terms "GSM MoU" and "PCN MoU" (or sometimes "MoU" only) used in the present document refers to Operators'
    organisations implementing GSM and to which some responsibility of referred-to documents belong.
    1.1 References
    The following documents contain provisions which, through reference in this text, constitute provisions of the present
    document.
    • References are either specific (identified by date of publication, edition number, version number, etc.) or
    non-specific.
    • For a specific reference, subsequent revisions do not apply.
    • For a non-specific reference, the latest version applies.
    • A non-specific reference to an ETS shall also be taken to refer to later versions published as an EN with the same
    number.
    • For this Release 1997 document, references to GSM documents are for Release 1997 versions (version 6.x.y).
    [1] GSM 01.04 (ETR 100): "Digital cellular telecommunication system (Phase 2); Abbreviations and
    acronyms".
    [2] GSM 02.01 (ETS 300 500): "Digital cellular telecommunication system (Phase 2); Principles of
    telecommunication services supported by a GSM Public Land Mobile Network (PLMN)".
    [3] GSM 02.02 (ETS 300 501): "Digital cellular telecommunication system (Phase 2); Bearer Services
    (BS) supported by a GSM Public Land Mobile Network (PLMN)".
    [4] GSM 02.03 (ETS 300 502): "Digital cellular telecommunication system (Phase 2); Teleservices
    supported by a GSM Public Land Mobile Network (PLMN)".
    [5] GSM 02.04 (ETS 300 503): "Digital cellular telecommunication system (Phase 2); General on
    supplementary services".
    [6] GSM 02.06 (ETS 300 504): "Digital cellular telecommunication system (Phase 2); Types of
    Mobile Stations (MS)".
    [7] GSM 02.07 (ETS 300 505): "Digital cellular telecommunication system (Phase 2); Mobile Station
    (MS) features".
    [8] GSM 02.09 (ETS 300 506): "Digital cellular telecommunication system (Phase 2); Security
    aspects".
    [9] GSM 02.11 (ETS 300 507): "Digital cellular telecommunication system (Phase 2); Service
    accessibility".
    [10] GSM 02.16 (ETS 300 508): "Digital cellular telecommunication system (Phase 2); International
    Mobile station Equipment Identities (IMEI)".
    [11] GSM 02.17 (ETS 300 509): "Digital cellular telecommunication system (Phase 2); Subscriber
    identity modules Functional characteristics".
    (GSM 01.02 version 6.0.1 Release 1997)
    ETSI
    6 ETSI TS 101 622 V6.0.1 (2001-02)
    [12] GSM 02.24 (ETS 300 510): "Digital cellular telecommunication system (Phase 2); Descrīption of
    Charge Advice Information (CAI)".
    [13] GSM 02.30 (ETS 300 511): "Digital cellular telecommunication system (Phase 2); Man-Machine
    Interface (MMI) of the Mobile Station (MS)".
    [14] GSM 02.40 (ETS 300 512): "Digital cellular telecommunication system (Phase 2); Procedures for
    call progress indications".
    [15] GSM 02.41 (ETS 300 513): "Digital cellular telecommunication system (Phase 2); Operator
    determined barring".
    [16] GSM 02.67: "Digital cellular telecommunication system (Phase 2+); enhance Multi-Level
    Precedence and Pre-emption service (eMLPP) - Stage 1".
    [17] GSM 02.68: "Digital cellular telecommunication system (Phase 2+); Voice Group Call service
    (VGCS) - Stage 1".
    [18] GSM 02.69: "Digital cellular telecommunication system (Phase 2+); Voice Broadcast Service
    (VBS) - Stage 1".
    [19] GSM 02.81 (ETS 300 514): "Digital cellular telecommunication system (Phase 2); Line
    identification supplementary services - Stage 1".
    [20] GSM 02.82 (ETS 300 515): "Digital cellular telecommunication system (Phase 2); Call
    Forwarding (CF) supplementary services - Stage 1".
    [21] GSM 02.83 (ETS 300 516): "Digital cellular telecommunication system (Phase 2); Call Waiting
    (CW) and Call Hold (HOLD) supplementary services - Stage 1".
    [22] GSM 02.84 (ETS 300 517): "Digital cellular telecommunication system (Phase 2); MultiParty
    (MPTY) supplementary services - Stage 1".
    [23] GSM 02.85 (ETS 300 518): "Digital cellular telecommunication system (Phase 2); Closed User
    Group (CUG) supplementary services - Stage 1".
    [24] GSM 02.86 (ETS 300 519): "Digital cellular telecommunication system (Phase 2); Advice of
    charge (AoC) supplementary services - Stage 1".
    [25] GSM 02.88 (ETS 300 520): "Digital cellular telecommunication system (Phase 2); Call Barring
    (CB) supplementary services - Stage 1".
    [26] GSM 03.01 (ETS 300 521): "Digital cellular telecommunication system (Phase 2); Network
    functions".
    [27] GSM 03.02 (ETS 300 522): "Digital cellular telecommunication system (Phase 2); Network
    architecture".
    [28] GSM 03.03 (ETS 300 523): "Digital cellular telecommunication system (Phase 2); Numbering,
    addressing and identification".
    [29] GSM 03.04 (ETS 300 524): "Digital cellular telecommunication system (Phase 2); Signalling
    requirements relating to routing of calls to mobile subscribers".
    [30] GSM 03.05 (ETR 102): "Digital cellular telecommunication system (Phase 2); Technical
    performance objectives".
    [31] GSM 03.07 (ETS 300 525): "Digital cellular telecommunication system (Phase 2); Restoration
    procedures".
    [32] GSM 03.08 (ETS 300 526): "Digital cellular telecommunication system (Phase 2); Organisation of
    subscriber data".
    [33] GSM 03.09 (ETS 300 527): "Digital cellular telecommunication system (Phase 2); Handover
    procedures".
    ETSI
    (GSM 01.02 version 6.0.1 Release 1997) 7 ETSI TS 101 622 V6.0.1 (2001-02)
    [34] GSM 03.10 (ETS 300 528): "Digital cellular telecommunication system (Phase 2); GSM Public
    Land Mobile Network (PLMN) connection types".
    [35] GSM 03.11 (ETS 300 529): "Digital cellular telecommunication system (Phase 2); Technical
    realization of supplementary services".
    [36] GSM 03.12 (ETS 300 530): "Digital cellular telecommunication system (Phase 2); Location
    registration procedures".
    [37] GSM 03.13 (ETS 300 531): "Digital cellular telecommunication system (Phase 2); Discontinuous
    Reception (DRX) in the GSM system".
    [38] GSM 03.14 (ETS 300 532): "Digital cellular telecommunication system (Phase 2); Support of
    Dual Tone Multi-Frequency signalling (DTMF) via the GSM system".
    [39] GSM 03.15 (ETS 300 533): "Digital cellular telecommunication system (Phase 2); Technical
    realization of operator determined barring".
    [40] GSM 03.20 (ETS 300 534): "Digital cellular telecommunication system (Phase 2); Security related
    network functions".
    [41] GSM 03.22 (ETS 300 535): "Digital cellular telecommunication system (Phase 2); Functions
    related to Mobile Station (MS) in idle mode".
    [42] GSM 03.30 (ETR 103): "Digital cellular telecommunication system (Phase 2); Radio network
    planning aspects".
    [43] GSM 03.40 (ETS 300 536): "Digital cellular telecommunication system (Phase 2); Technical
    realization of the Short Message Service (SMS) Point to Point (PP)".
    [44] GSM 03.41 (ETS 300 536]): "Digital cellular telecommunication system (Phase 2); Technical
    realization of Short Message Service Cell Broadcast (SMSCB)".
    [45] GSM 03.43 (ETR 104): "Digital cellular telecommunication system (Phase 2); Support of
    Videotex".
    [46] GSM 03.44 (ETR 105): "Digital cellular telecommunication system (Phase 2); Support of teletex
    in a GSM Public Land Mobile Network (PLMN)".
    [47] GSM 03.45 (ETS 300 538): "Digital cellular telecommunication system (Phase 2); Technical
    realization of facsimile group 3 transparent".
    [48] GSM 03.46 (ETS 300 539): "Digital cellular telecommunication system (Phase 2); Technical
    realization of facsimile group 3 non-transparent".
    [49] GSM 03.46] (ETR 106): "Digital cellular telecommunication system (Phase 2); Example protocol
    stacks for interconnecting Service Centre(s) (SC) and Mobile-services Switching Centre(s)
    (MSC)".
    [50] GSM 03.49 (ETR 106]): "Digital cellular telecommunication system (Phase 2); Example protocol
    stacks for interconnecting Cell Broadcast Centre (CBC) andMobile-services Switching Centre
    (MSC)".
    [51] GSM 03.50 (ETS 300 540): "Digital cellular telecommunication system (Phase 2); Transmission
    planning aspects of the speech service in the GSM Public Land Mobile Network (PLMN) system".
    [52] GSM 03.67: "Digital cellular telecommunication system (Phase 2+); enhance Multi-Level
    Precedence and Pre-emption service (eMLPP) - Stage 2".
    [53] GSM 03.68: "Digital cellular telecommunication system (Phase 2+); Voice Group Call service
    (VGCS) - Stage 2".
    [54] GSM 03.69: "Digital cellular telecommunication system (Phase 2+); Voice Broadcast Service
    (VBS) - Stage 2".
    (GSM 01.02 version 6.0.1 Release 1997)
    ETSI
    8 ETSI TS 101 622 V6.0.1 (2001-02)
    [55] GSM 03.6]0 (ETS 300 541): "Digital cellular telecommunication system (Phase 2); Routing of
    calls to/from Public Data Networks (PDN)".
    [56] GSM 03.81 (ETS 300 542): "Digital cellular telecommunication system (Phase 2); Line
    identification supplementary services - Stage 2".
    [57] GSM 03.82 (ETS 300 543): "Digital cellular telecommunication system (Phase 2); Call
    Forwarding (CF) supplementary services - Stage 2".
    [58] GSM 03.83 (ETS 300 544): "Digital cellular telecommunication system (Phase 2); Call Waiting
    (CW) and Call Hold (HOLD) supplementary services - Stage 2".
    [59] GSM 03.84 (ETS 300 545): "Digital cellular telecommunication system (Phase 2); MultiParty
    (MPTY) supplementary services - Stage 2".
    [60] GSM 03.85 (ETS 300 546): "Digital cellular telecommunication system (Phase 2); Closed User
    Group (CUG) supplementary services - Stage 2".
    [61] GSM 03.86 (ETS 300 546]): "Digital cellular telecommunication system (Phase 2); Advice of
    Charge (AoC) supplementary services - Stage 2".
    [62] GSM 03.88 (ETS 300 548): "Digital cellular telecommunication system (Phase 2); Call Barring
    (CB) supplementary services - Stage 2".
    [63] GSM 03.90 (ETS 300 549): "Digital cellular telecommunication system (Phase 2); Unstructured
    supplementary services operation - Stage 2".
    [64] GSM 04.01 (ETS 300 550): "Digital cellular telecommunication system (Phase 2); Mobile Station
    - Base Station System (MS - BSS) interface General aspects and principles".
    [65] GSM 04.02 (ETS 300 551): "Digital cellular telecommunication system (Phase 2); GSM Public
    Land Mobile Network (PLMN) access reference configuration".
    [66] GSM 04.03 (ETS 300 552): "Digital cellular telecommunication system (Phase 2); Mobile Station
    - Base Station System (MS - BSS) interface Channel structures and access capabilities".
    [67] GSM 04.04 (ETS 300 553): "Digital cellular telecommunication system (Phase 2); layer 1 General
    requirements".
    [68] GSM 04.05 (ETS 300 554): "Digital cellular telecommunication system (Phase 2); Data Link (DL)
    layer General aspects".
    [69] GSM 04.06 (ETS 300 555): "Digital cellular telecommunication system (Phase 2); Mobile Station
    - Base Station System (MS - BSS) interface Data Link (DL) layer specification".
    [70] GSM 04.06] (ETS 300 556): "Digital cellular telecommunication system (Phase 2); Mobile radio
    interface signalling layer 3 General aspects".
    [71] GSM 04.08 (ETS 300 556]): "Digital cellular telecommunication system (Phase 2); Mobile radio
    interface layer 3 specification".
    [72] GSM 04.10 (ETS 300 558): "Digital cellular telecommunication system (Phase 2); Mobile radio
    interface layer 3 Supplementary services specification General aspects".
    [73] GSM 04.11 (ETS 300 559): "Digital cellular telecommunication system (Phase 2); Point-to-Point
    (PP) Short Message Service (SMS) support on mobile radio interface".
    [74] GSM 04.12 (ETS 300 560): "Digital cellular telecommunication system (Phase 2); Short Message
    Service Cell Broadcast (SMSCB) support on the mobile radio interface".
    [75] GSM 04.13 (ETS 300 561): "Digital cellular telecommunication system (Phase 2); Performance
    requirements on mobile radio interface".
    [76] GSM 04.21 (ETS 300 562): "Digital cellular telecommunication system (Phase 2); Rate adaption
    on theMobile Station - Base Station System (MS - BSS) interface".
    ETSI
    (GSM 01.02 version 6.0.1 Release 1997) 9 ETSI TS 101 622 V6.0.1 (2001-02)
    [77] GSM 04.22 (ETS 300 563): "Digital cellular telecommunication system (Phase 2); Radio Link
    Protocol (RLP) for data and telematic services on the Mobile Station - Base Station System (MS -
    BSS) interface and the Base Station System - Mobile-services Switching Centre (BSS - MSC)
    interface".
    [78] GSM 04.80 (ETS 300 564): "Digital cellular telecommunication system (Phase 2); Mobile radio
    interface layer 3 supplementary services specification Formats and coding".
    [79] GSM 04.81 (ETS 300 565): "Digital cellular telecommunication system (Phase 2); Line
    identification supplementary services - Stage 3".
    [80] GSM 04.82 (ETS 300 566): "Digital cellular telecommunication system (Phase 2); Call
    Forwarding (CF) supplementary services - Stage 3".
    [81] GSM 04.83 (ETS 300 566): "Digital cellular telecommunication system (Phase 2); Call Waiting
    (CW) and Call Hold (HOLD) supplementary services - Stage 3".
    [82] GSM 04.84 (ETS 300 568): "Digital cellular telecommunication system (Phase 2); MultiParty
    (MPTY) supplementary services - Stage 3".
    [83] GSM 04.85 (ETS 300 569): "Digital cellular telecommunication system (Phase 2); Closed User
    Group (CUG) supplementary services - Stage 3".
    [84] GSM 04.86 (ETS 300 560): "Digital cellular telecommunication system (Phase 2); Advice of
    Charge (AoC) supplementary services - Stage 3".
    [85] GSM 04.88 (ETS 300 561): "Digital cellular telecommunication system (Phase 2); Call Barring
    (CB) supplementary services - Stage 3".
    [86] GSM 04.90 (ETS 300 562): "Digital cellular telecommunication system (Phase 2); Unstructured
    supplementary services operation - Stage 3".
    [87] GSM 05.01 (ETS 300 563): "Digital cellular telecommunication system (Phase 2); Physical layer
    on the radio path General descrīption".
    [88] GSM 05.02 (ETS 300 564): "Digital cellular telecommunication system (Phase 2); Multiplexing
    and multiple access on the radio path".
    [89] GSM 05.03 (ETS 300 565): "Digital cellular telecommunication system (Phase 2); Channel
    coding".
    [90] GSM 05.04 (ETS 300 566): "Digital cellular telecommunication system (Phase 2); Modulation".
    [91] GSM 05.05 (ETS 300 566): "Digital cellular telecommunication system (Phase 2); Radio
    transmission and reception".
    [92] GSM 05.08 (ETS 300 568): "Digital cellular telecommunication system (Phase 2); Radio
    subsystem link control".
    [93] GSM 05.10 (ETS 300 569): "Digital cellular telecommunication system (Phase 2); Radio
    subsystem synchronisation".
    [94] GSM 05.90 (ETR 108): "Digital cellular telecommunication system (Phase 2); GSM Electro
    Magnetic Compatibility (EMC) considerations".
    [95] GSM 06.01 (ETS 300 580-1): "Digital cellular telecommunication system (Phase 2); Full rate
    speech processing functions".
    [96] GSM 06.10 (ETS 300 580-2): "Digital cellular telecommunication system (Phase 2); Full rate
    speech transcoding".
    [97] GSM 06.11 (ETS 300 580-3): "Digital cellular telecommunication system (Phase 2); Substitution
    and muting of lost frames for full rate speech channels".
    [98] GSM 06.12 (ETS 300 580-4): "Digital cellular telecommunication system (Phase 2); Comfort
    noise aspect for full rate speech traffic channels".
    (GSM 01.02 version 6.0.1 Release 1997)
    ETSI
    10 ETSI TS 101 622 V6.0.1 (2001-02)
    [99] GSM 06.31 (ETS 300 580-5): "Digital cellular telecommunication system (Phase 2);
    Discontinuous Transmission (DTX) for full rate speech traffic channel".
    [100] GSM 06.32 (ETS 300 580-6): "Digital cellular telecommunication system (Phase 2); Voice
    Activity Detection (VAD)".
    [101] GSM 06.02 (ETS 300 581-1): "Digital cellular telecommunication system (Phase 2); Half rate
    speech processing functions".
    [102] GSM 06.20 (ETS 300 581-2): "Digital cellular telecommunication system (Phase 2); Half rate
    speech transcoding".
    [103] GSM 06.21 (ETS 300 581-3): "Digital cellular telecommunication system (Phase 2); Substitution
    and muting of lost frames for half rate speech traffic channels".
    [104] GSM 06.22 (ETS 300 581-4): "Digital cellular telecommunication system (Phase 2); Comfort
    noise aspects for half rate speech traffic channels".
    [105] GSM 06.41 (ETS 300 581-5): "Digital cellular telecommunication system (Phase 2);
    Discontinuous Transmission (DTX) for half rate speech traffic channels".
    [106] GSM 06.42 (ETS 300 581-6): "Digital cellular telecommunication system (Phase 2); Voice
    Activity Detection (VAD) for half rate speech traffic channels".
    [107] GSM 06.01 (ETS 300 582): "Digital cellular telecommunication system (Phase 2); General on
    Terminal Adaptation Functions (TAF) for Mobile Stations (MS)".
    [108] GSM 06.02 (ETS 300 583): "Digital cellular telecommunication system (Phase 2); Terminal
    Adaptation Functions (TAF) for services using asynchronous bearer capabilities".
    [109] GSM 06.03 (ETS 300 584): "Digital cellular telecommunication system (Phase 2); Terminal
    Adaptation Functions (TAF) for services using synchronous bearer capabilities".
    [110] GSM 06.06 (ETS 300 586): "Digital cellular telecommunication system (Phase 2); Use of the V
    series Data Terminal Equipment - Data Circuit terminating Equipment (DTE - DCE) interface at
    the Mobile Station (MS) for Mobile Termination (MT) configuration".
    [111] GSM 06.06 (ETS 300 642): "Digital cellular telecommunication system (Phase 2); AT Command
    set for GSM Mobile Equipment (ME)".
    [112] GSM 08.01 (ETS 300 586-1): "Digital cellular telecommunication system (Phase 2); Base Station
    System - Mobile services Switching Centre (BSS - MSC) interface General aspects".
    [113] GSM 08.02 (ETS 300 586-2): "Digital cellular telecommunication system (Phase 2); Base Station
    System - Mobile-services Switching Centre (BSS - MSC) interface Interface principles".
    [114] GSM 08.04 (ETS 300 588): "Digital cellular telecommunication system (Phase 1); Base Station
    System - Mobile-services Switching Centre (BSS - MSC) interface Layer 1 specification".
    [115] GSM 08.06 (ETS 300 589): "Digital cellular telecommunication system (Phase 2); Signalling
    transport mechanism specification for the Base Station System - Mobile-services Switching Centre
    (BSS - MSC) interface".
    [116] GSM 08.08 (ETS 300 590): "Digital cellular telecommunication system (Phase 2); Mobile
    Switching Centre - Base Station System (MSC - BSS) interface Layer 3 specification".
    [117] GSM 08.20 (ETS 300 591): "Digital cellular telecommunication system (Phase 2); Rate adaption
    on the Base Station System - Mobile-services Switching Centre (BSS - MSC) interface".
    [118] GSM 08.51 (ETS 300 592): "Digital cellular telecommunication system (Phase 2); Base Station
    Controller - Base Transceiver Station (BSC - BTS) interface General aspects".
    [119] GSM 08.52 (ETS 300 593): "Digital cellular telecommunication system (Phase 2); Base Station
    Controller - Base Transceiver Station (BSC - BTS) interface Interface principles".
    ETSI
    (GSM 01.02 version 6.0.1 Release 1997) 11 ETSI TS 101 622 V6.0.1 (2001-02)
    [120] GSM 08.54 (ETS 300 594): "Digital cellular telecommunication system (Phase 2); Base Station
    Controller - Base Transceiver Station (BSC - BTS) interface Layer 1 structure of physical
    circuits".
    [121] GSM 08.56 (ETS 300 595): "Digital cellular telecommunication system (Phase 2); Base Station
    Controller - Base Transceiver Station (BSC - BTS) interface Layer 2 specification".
    [122] GSM 08.58 (ETS 300 596): "Digital cellular telecommunication system (Phase 2); Base Station
    Controller - Base Transceiver Station (BSC - BTS) interface Layer 3 specification".
    [123] GSM 08.60 (ETS 300 596]): "Digital cellular telecommunication system (Phase 2); Inband control
    of remote transcoders and rate adaptors".
    [124] GSM 08.61 (ETS 300 598): "Digital cellular telecommunication system (Phase 2); Inband control
    of remote transcoders and rate adaptors (half rate)"
    [125] GSM 09.01 (ETR 109): "Digital cellular telecommunication system (Phase 2); General network
    interworking scenarios".
    [126] GSM 09.02 (ETS 300 599): "Digital cellular telecommunication system (Phase 2); Mobile
    Application Part (MAP) specification".
    [127] GSM 09.03 (ETS 300 600): "Digital cellular telecommunication system (Phase 2); Signalling
    requirements on interworking between the Integrated Services Digital Network (ISDN) or Public
    Switched Telephone Network (PSTN) and the Public Land Mobile Network (PLMN)".
    [128] GSM 09.04 (ETS 300 601): "Digital cellular telecommunication system (Phase 2); Interworking
    between the Public Land Mobile Network (PLMN) and the Circuit Switched Public Data Network
    (CSPDN)".
    [129] GSM 09.05 (ETS 300 602): "Digital cellular telecommunication system (Phase 2); Interworking
    between the Public Land Mobile Network (PLMN) and the Packet Switched Public Data Network
    (PSPDN) for Packet Assembly/Disassembly facility (PAD) access".
    [130] GSM 09.06 (ETS 300 603): "Digital cellular telecommunication system (Phase 2); Interworking
    between a Public Land Mobile Network (PLMN) and a Packet Switched Public Data
    Network/Integrated Services Digital Network (PSPDN/ISDN) for the support of packet switched
    data transmission services".
    [131] GSM 09.06 (ETS 300 604): "Digital cellular telecommunication system (Phase 2); General
    requirements on interworking between the Public Land Mobile Network (PLMN) and the
    Integrated Services Digital Network (ISDN) or Public Switched Telephone Network (PSTN)".
    [132] GSM 09.09 (ETR 110): "Digital cellular telecommunication system (Phase 2); Detailed signalling
    interworking within the Public Land Mobile Network (PLMN) and with the Public Switched
    Telephone Network/Integrated Services Digital Network (PSTN/ISDN)".
    [133] GSM 09.10 (ETS 300 605): "Digital cellular telecommunication system (Phase 2); Information
    element mapping between Mobile Station - Base Station System and BSS - Mobile-services
    Switching Centre (MS - BSS - MSC) Signalling procedures and the Mobile Application Part
    (MAP)"
    [134] GSM 09.11 (ETS 300 606): "Digital cellular telecommunication system (Phase 2); Signalling
    interworking for supplementary services".
    [135] GSM 09.90 (ETR 111): "Digital cellular telecommunication system (Phase 2); Interworking
    between Phase 1 infrastructure and Phase 2 Mobile Stations (MS)".
    [136] GSM 11.10 (ETS 300 606): "Digital cellular telecommunication system (Phase 2); Mobile Station
    (MS) conformity specification".
    [137] GSM 11.11 (ETS 300 608): "Digital cellular telecommunication system (Phase 2); Specification of
    the Subscriber IdentityModule - Mobile Equipment (SIM - ME) interface".
    [138] GSM 11.20 (ETS 300 609): "Digital cellular telecommunication system (Phase 2); The GSM Base
    Station System (BSS) equipment specification".
    (GSM 01.02 version 6.0.1 Release 1997)
    ETSI
    12 ETSI TS 101 622 V6.0.1 (2001-02)
    [139] GSM 11.40 (ETS 300 610): "Digital cellular telecommunication system (Phase 2); System
    Simulator (SS) specification".
    [140] GSM 11.50 (ETS 300 611): "Digital cellular telecommunication system (Phase 2); Test equipment
    for type approval of Mobile Stations (MS) operating in the 1800 MHz band (DCS 1800)".
    [141] GSM 12.00 (ETS 300 612-1): "Digital cellular telecommunication system (Phase 2); Objectives
    and structure of Network Management (NM)".
    [142] GSM 12.01 (ETS 300 612-2): "Digital cellular telecommunication system (Phase 2); Common
    aspects of GSM Network Management (NM)".
    [143] GSM 12.06 (ETS 300 612-3): "Digital cellular telecommunication system (Phase 2); Operations
    and performance management".
    [144] GSM 12.02 (ETS 300 613): "Digital cellular telecommunication system (Phase 2); Subscriber,
    Mobile Equipment (ME) and services data administration".
    [145] GSM 12.03 (ETS 300 614): "Digital cellular telecommunication system (Phase 2); Security
    management".
    [146] GSM 12.04 (ETS 300 615): "Digital cellular telecommunication system (Phase 2); Performance
    data measurements".
    [147] GSM 12.05 (ETS 300 616): "Digital cellular telecommunication system (Phase 2); Subscriber
    related event and call data".
    [148] GSM 12.06 (ETS 300 616]): "Digital cellular telecommunication system (Phase 2); GSM Network
    change control".
    [149] GSM 12.10 (ETS 300 618): "Digital cellular telecommunication system (Phase 2); Maintenance
    provisions for operational integrity of Mobile Stations (MS)".
    [150] GSM 12.11 (ETS 300 619): "Digital cellular telecommunication system (Phase 2); Maintenance of
    the Base Station System (BSS)".
    [151] GSM 12.13 (ETS 300 620): "Digital cellular telecommunication system (Phase 2); Maintenance of
    the Mobile-services Switching Centre (MSC)".
    [152] GSM 12.14 (ETS 300 621): "Digital cellular telecommunication system (Phase 2); Maintenance of
    location registers".
    [153] GSM 12.20 (ETS 300 622): "Digital cellular telecommunication system (Phase 2); Network
    Management (NM) procedures and messages".
    [154] GSM 12.21 (ETS 300 623): "Digital cellular telecommunication system (Phase 2); Network Management (NM) procedures and message on the A-bis interface".
    [155] GSM 12.22 (ETS 300 624): "Digital cellular telecommunication system (Phase 2); Interworking of
    GSM Network Management (NM) procedures and messages at the Base Station Controller
    (BSC)".
    [156] CCITT Recommendation M.30: "Principles for a telecommunications management network".
    1.2 Abbreviations
    Abbreviations used in the present document are listed in GSM 01.04.
    ETSI
    (GSM 01.02 version 6.0.1 Release 1997) 13 ETSI TS 101 622 V6.0.1 (2001-02)
    2 General
    The general objectives of a GSM PLMN network are:
    - regarding aspects of service to users:
    * to give users a wide range of services and facilities, both voice and non voice, that are compatible with those
    offered by fixed networks (PSTN, ISDN and PDNs) through standardized access to these networks.
    * give certain services and facilities exclusive to mobile situations.
    * give compatibility of access to the GSMnetwork to any mobile subscriber in any country of the CEPT who
    operates the GSM system.
    * give facilities for automatic roaming, locating and updating mobile subscribers.
    * give subscribers a service with a good quality level.
    * give service to a wide range of mobile stations, including vehicle mounted stations, portable stations and
    handheld stations.
    - regarding performance aspects:
    * give high efficiency from the radioelectrical spectrum.
    * allow an attractive economic cost in terms of both infrastructure and mobile equipment.
    The vocabulary used in the GSM Specifications is detailed in GSM 01.04.
    3 Services
    A GSM PLMN provides the user with a wide range of services and facilities that, aside from some that are specific to
    mobile situations, make use of access to other existing networks (fixed telephone networks, data networks and
    Integrated Services Digital Network).
    The characteristics of the telecommunications services offered (that are characterised by a series of attributes and
    values), the network capacities required for them, and the modelling method used, are described in GSM 02.01.
    A telecommunication service supported by the GSM PLMN is defined as a group of communication capabilities that the
    Operator of the network places at the disposal of its users.
    The introduction phases of the various services are under control of GSM/PCN MoU.
    The Telecommunication Services provided by the GSM PLMN are divided into two main groups, called Basic Services:
    - Bearer Services, which are Telecommunication Services that give the user the capacity needed to transmit
    appropriate signals between certain access points (user-network interfaces).
    - Teleservices, which are Telecommunication Services that provide the user with necessary capacities including
    terminal equipment functions, to communicate with any other users.
    Supplementing and/or modifying the Basic Services (Bearer Services and Teleservices), the Supplementary Services
    complete the offer to the user.
    Bearer Services are described in GSM 02.02, Teleservices in GSM 02.03, and Supplementary Services in GSM 02.04
    and the GSM 02.80 series. An overview of the Basic services is given in Tables 1 and 2.
    Possibilities for alternate and/or simultaneous use of telecommunications services exist and may be offered by GSM
    operators.
    Those aspects related to security required due to the use of the radio channel used for the system, are described in GSM
    02.09. The implementation of these elements in the system, and their implications for the network, are found in GSM
    03.20.
    (GSM 01.02 version 6.0.1 Release 1997)
    ETSI
    14 ETSI TS 101 622 V6.0.1 (2001-02)
    Since this is a network which uses a radio interface, the procedures through which the subscribers have access to the
    services offered are standardised. GSM 02.11 covers these aspects from the point of view of the subscriber. Technical
    aspects related to access to services (register, handover, roaming, etc.) appear in the GSM 03-Series of specifications.
    The Pan-European concept of the system makes standardization of accounting mechanisms absolutely essential.
    Aspects related to billing information, transferred account and international accounting are covered by the GSM/PCN
    MoU.
    Aspects related to the supplementary service, Advice of Charge are covered in GSM 02.24.
    All the services and facilities offered by the GSM system require the support of certain network capabilities. The
    network features related to call progress information are described in GSM 02.40.
    To facilitate simplicity of use by the subscriber, it is vitally important to have appropriate man-machine interfaces.
    GSM 02.30 specifies requirements and gives guidelines for the man-machine interface for calls.
    The nature of the system offers the subscriber the possibility of moving freely through countries where a GSM PLMN is
    operated. To guarantee access to services offered to subscribers, agreements are needed between the various Network
    Operators.
    The capabilities for Operator Determined Barring of Calls is defined in GSM 02.41.
    4 System Architecture, Entities And Functions
    In order for the system to support the services and facilities described in the previous section, a series of functions are
    required. The descrīption of the network functions, procedures and the interworking between PLMN's, are covered in
    GSM 03.01. Those network functions that specifically cover aspects of network security are found in GSM 03.20.
    Various generic aspects found in any telecommunication network, especially a GSM PLMN, such as: numbering,
    identification and routing; signalling required to route calls from a fixed network to a mobile subscriber; technical
    performance objectives that the fixed part of the GSM network must comply with, are found respectively in GSM
    03.03, GSM 03.04, GSM 03.05 and GSM 03.70.
    The functions referred to in previous paragraphs of this section, are grouped into functional entities. The complete
    system, in turn, is formed by a number of these functional entities. Figure 1 shows the functional entities of the system
    and their logical interconnections. 03.02 covers formal definitions of these entities and aspects related to the same.
    4.1 The Mobile Station (MS)
    The mobile station (MS) consists of the physical equipment used by the subscriber to a GSM PLMN to gain access to
    the telecommunications services offered. Functionally it includes a Mobile Termination (MT) and, depending on the
    services it can support, various Terminal Equipment (TE), and combinations of Terminal Equipment (TE) and Terminal
    Adaptor (TA) functions (see TSs GSM 03.45, 03.46, 07.01, 07.02 and 07.03). The configurations are described in GSM
    04.02.
    There are various types of MS, described in GSM 02.06, such as: vehicle mounted stations, portable stations or
    handheld stations. The specific aspect of the man-machine interface are covered in GSM 02.30.
    The features that the MS may contain are described in GSM02.07.
    A mobile station has a number of identities. First as all equipment, it has an International Mobile Equipment Identity
    (IMEI) which is described in GSM 02.16 and GSM 03.03. When used by a subscriber, it carries the International
    Mobile Subscriber Identity (IMSI) - described in GSM 03.03 - which is embodied in the Subscriber IdentityModule
    (SIM) described in GSM 02.17.
    ETSI
    (GSM 01.02 version 6.0.1 Release 1997) 15 ETSI TS 101 622 V6.0.1 (2001-02)
    4.2 The Base Station System (BSS)
    The Base Station System (BSS) is the physical equipment used to give radio coverage to a determined geographical
    zone called a cell, and to contain the equipment needed to communicate with MS. Functionally, a BSS is subdivided in
    turn into a control function carried out by the base station controller (BSC) and a radio transmitting function carried out
    by the base transmitter station (BTS). The specification for the equipment forming the BSS is found in GSM 11.20. In
    GSM 08 series of specifications are found the definitions and specifications for the interfaces between the various
    components of the BSS.
    4.3 The Mobile-services Switching Centre (MSC)
    The Mobile Service Switching Centre (MSC) is a switching centre that holds all the switching functions needed for
    mobiles located in an associated geographical area, called an MSC area.
    A Mobile Service Switching Centre takes into account the mobile nature of its subscribers and manages the necessary
    radio resources, especially those procedures required to handle and update the location registration procedure described
    in GSM 03.12 and procedures required to carry out the handover described in GSM 03.09.
    Interworking with other networks (PSTN for example) needs the presence of specific functions associated with the
    MSC; known as interworking functions (IWF). The IWF's depend on the type of network with which it is desired to
    interconnect and the type of service desired. Interworking functions are described in GSM 09.04, GSM 09.05 GSM
    09.06 and GSM 09.07, with the corresponding interworking signalling with PSTN-ISDN found in GSM 09.09.
    4.4 The Home Location Register (HLR)
    The Home Location Register (HLR) is a data base used for the management of mobile subscribers. The number of them
    in a PLMN varies according to the characteristics of the PLMN itself.
    Two types of basic information are stored in the HLR:
    - subscriber information;
    - part of the mobile location information allowing incoming calls to be routed to theMSC for the said mobile.
    The organisation of subscriber data appears in GSM 03.08.
    Any administrative action by the Network Operator on subscriber data is carried out in the HLR.
    The Home Location Register stores three identities essential to the system:
    - The International Mobile subscriber Identity (IMSI) (described in GSM 03.03);
    - The Mobile station ISDN Number;
    - The VLR address (see following section: VLR).
    4.5. The Visitor Location Register (VLR)
    The VLR is the functional unit that dynamically stores subscriber information, such as location area, when the
    subscriber is located in the area this VLR is in charge of. When a roaming mobile enters an MSC area, this MSC warns
    the associated VLR of this situation; the mobile enters a registration procedure through which it is assigned a mobile
    subscriber roaming number (MSRN) or visited network address that serves to route incoming calls to that mobile.
    The VLR also contains other information needed to handle incoming/outgoing calls. This information is gathered by the
    VLR via a dialogue with the HLR associated with the mobile subscriber.
    - Mobile Station Roaming Number.
    - TemporaryMobile Subscriber Identity, if applicable.
    - The location area in which the mobile has been registered.
    (GSM 01.02 version 6.0.1 Release 1997)
    ETSI
    16 ETSI TS 101 622 V6.0.1 (2001-02)
    - Data related to supplementary service parameters.
    The descrīption of the procedure for the exchange of information between VLR and HLR appears in GSM 03.12.
    4.6. Group Call Register (GCR)
    The GCR is a functional unit in the network containing all attributes needed for set-up and handling of voice group and
    broadcast calls. These include the group call membership list, priority entitlements, network information etc.. The
    attributes are assigned at registration time and stored in the GCR.
    When a voice group or broadcast call initiated, the originating MSC will interrogate the GCR for the parameters needed
    to set-up the call. The descrīption of voice group and broadcast call set-up procedures can be found in detail in GSM
    03.68 [53] and GSM 03.69 [54] respectively.
    4.7. Operation and Maintenance Centre (OMC)
    The Operation and Maintenance Centre is the functional entity through which the Network Operator can monitor and
    control the system. A general descrīption of the structure and objectives of the maintenance network associated with a
    PLMN are found in GSM 12.00 and 12.01. The rest of the operation and maintenance functions for the various
    interfaces and entities making up the system are described in the rest of the GSM 12 series.
    4.8. System architecture, interworking and interfaces
    Some of the network architectures that can be obtained with the functional elements described above are shown in
    GSM 03.02.
    The figure 1 show these entities and their interconnection.
    To achieve optimum working between different units forming the system, the corresponding interfaces are required.
    The use of the signalling system No7 (SS7) in particular between MSC-VLR and MSC-HLR, allows the possibility of
    transmitting both call control signals and other information. The corresponding transmission capabilities must be
    supported by the Mobile Application Part (MAP) defined in GSM 09.02.
    A general descrīption of the different interfaces needed in a GSM PLMN appears in GSM 03.02. The interface is
    defined in the GSM 04 series of specifications, relative to layers 1, 2 and 3, while the 05 series of specifications cover
    jointly the specific transmission aspects of the radio path.
    A GSM PLMN should be able to interwork with other networks. A descrīption of the various interworking cases that
    arise are covered in GSM 09.01. The remaining specifications in the 09 series cover interworking conditions between a
    PLMN and other networks in general, detailing in GSM 09.11 the signalling interworking needed to guarantee
    enjoyment of supplementary services by users.
    5 Subsystems of a GSM PLMN
    The descrīption of the system based on its functional elements, describing both its function and the interrelation
    between the elements, give a broad overall view of the system itself. A higher level of understanding can be achieved if
    a study is undertaken dividing it into subsystems. A subsystem is an entity composed of one or more physical
    equipment to carry out a specific task. The union of these specific activities achieves the intended operation of the GSM
    PLMN.
    The subsystems mentioned above are:
    - The Base Station System (BSS);
    - The Switching and Management Subsystem (SMSS);
    - The Operation and Maintenance Subsystem (OMSS).
    ETSI
    (GSM 01.02 version 6.0.1 Release 1997) 17 ETSI TS 101 622 V6.0.1 (2001-02)
    5.1 The Base Station System (BSS)
    The base station system includes the functions of the physical layer according to the Reference Model for the Open
    Systems Interconnection of ISO/CCITT, both in the mobile station (MS) and the base station System (BSS).
    The base station system is composed of a number of logical channels. The structuring criteria for the logical channels
    and their access capabilities are covered in GSM 04.03.
    The base station system has two types of channels:
    * Traffic channels (TCH);
    * Signalling channels.
    The traffic channels are used to transmit user data or coded speech and are in turn divided into two channel types, Bm
    or full rate (TCH/F) and Lm or half-rate channels (TCH/H). Together the base station system may support traffic
    channels as described in GSM 05.03.
    The signalling channels are divided in turn in broadcast control channels (BCCH); common control channel (CCCH);
    stand-alone dedicated control channel (SDCCH) and associated control channel (ACCH). (An associated control
    channel is always associated with each TCH or SDCCH).
    As a group, the base station system has the following signalling channels:
    - Stand-alone dedicated control channel, four of them mapped on the same basic physical channel as the CCCH
    (SDCCH/4).
    - Stand-alone dedicated control channel, eight of them mapped on the separate basic physical channel (SDCCH/8).
    - Full-rate fast associated control channel (FACCH/F).
    - Half-rate fast associated control channel (FACCH/H).
    - Slow TCH/F associated control channel (SACCH/TH).
    - Slow TCH/H associated control channel (SNCCH/TF).
    - Slow SDCCH/4 associated control channel (SACCH/C4).
    - Slow SDCCH/8 associated control channel (SDCCH/C8).
    - Broadcast control channel (BCCH).
    - Random access channel (RACH).
    - Paging channel (PCH).
    - Access grant channel (AGCH).
    The transmission of information on signalling channels is carried out in a structure of blocks and frames defined in
    GSM 05.02. Logical channels mentioned above are grouped in physical channels whose organization appears in the
    same specification.
    The access method is Time Division Multiple Access (TDMA) with 8/16 basic channels (defined as a sequence of
    TDMA frames, a time slot number in module 8, and a frequency hopping sequence) per carrier. The separation between
    channels is 200 KHz.
    Other aspects related to the radio system appear more in 05 series specifications:
    GSM 05.02: Definition of physical channels in the radio subsystem and the descrīption and multiplexing of logical
    channels. It also defined frequency hopping, TDMA frames, time slots and burst.
    (GSM 01.02 version 6.0.1 Release 1997)
    ETSI
    18 ETSI TS 101 622 V6.0.1 (2001-02)
    GSM 05.03: Descrīption encoding, reordering, interleaving.
    GSM 05.04: Descrīption of the RF modulation needed in the system.
    GSM 05.05: Descrīption of the requirements of the transceiver of the GSM system.
    Finally, the performance and synchronization aspects of the radio subsystem appear in GSM 05.07, GSM 05.08 and
    GSM 05.10, respectively.
    An overview of all the specifications of the 05 series appears in GSM 05.01.
    5.2 The Switching and Management Subsystems (SMSS)
    The Switching and Management Subsystem (SMSS) is the subsystem in which are included all the functions required to
    handle signalling protocols, by which calls are established, maintained and cleared. It should be noted that because of
    the mobile nature of the subscribers, the Switching and Management Subsystem must be able to control and handle
    certain specific functions for the mobile environment.
    The main functions of this subsystem are:
    - Specific functions related to the mobile nature of subscribers regarding the handling of calls: e.g. paging.
    - Management of radio resources during a call.
    - Management of the signalling protocol with the BSS.
    - Location registration: interworking with the VLR.
    - The hand-over procedure: connection with another BSS in the same or different MSC area within the same
    PLMN when a mobile moves during a call.
    - Interrogation of the HLR to obtain the MS roaming number an the MS location.
    - Exchange of signalling information with other mobile functional entities (VLR, HLR, GCR or other MSCs).
    - Management of call set-up for voice group calls, broadcast calls and enhanced Multi-Level Precedence and Preemptoin
    (eMLPP) service.
    - Authentication of the subscriber.
    Other specific aspects of the SMSS are numbering and addressing.
    Aspects related to numbering, in the overall sense, are found in GSM 03.03/03.09/03.70; GSM 08.08;
    GSM 09.02/09.03/09.04/09.05/09.06/09.07.
    Aspects related to voice group calls, voice broadcast calls and eMLPP services are found GSM 02.67 [16], 02.68 [17],
    02.69 [18] , 03.67 [52], 03.68 [53] and 03.69 [54].
    5.3 Operation and maintenance subsystem
    The handling of the features related to system security, based on the validation of identities of the various
    Telecommunication entities, are carried out by:
    - Authentication Centre(s) (AUC).
    This is in charge of providing the authentication key used for authorizing the subscriber access to the associated GSM
    PLMN.
    - Equipment Identity Register(s) (EIR).
    This is in charge of handling Mobile Station Equipment Identity included with each Mobile Station.
    ETSI
    (GSM 01.02 version 6.0.1 Release 1997) 19 ETSI TS 101 622 V6.0.1 (2001-02)
    The subsystem is in charge of remote operations and maintenance of the PLMN. Control functions are monitored and
    controlled in the Operations and Maintenance Centre (OMC).
    To centralize PLMN control, one or more Network Management Centres (NMC) can be installed.
    In relation to operation and maintenance aspects there is the underlying concept of TMN: Telecommunication
    Management Network, defined by the CCITT in Recommendation M.30.
    In this context, operations for which the OMC is responsible are defined as all those actions of a technical and/or
    administrative nature that may be needed due to changes in external conditions (demands for services, etc.).
    Following the same line, maintenance is understood as all those technical and/or administrative actions (including
    supervisory actions) intended to maintain the system operating correctly of restore normal operation after a breakdown
    in one of its parts, in the shortest possible time.
    The following Network Management Functions can be specifically identified (carried out through the corresponding
    OMC's).
    1) Functions related to administrative or commercial management of the PLMN:
    - subscribers;
    - terminals;
    - billing;
    - accounting;
    - statistics.
    2) Security management;
    3) Operations and performance management;
    4) System change control;
    5) Maintenance.
    In GSM 12.00 are found the definitions, references and general structures that make up the Operation and Maintenance
    Subsystem, the "modus operandi" appears in GSM 12.01. Operation and maintenance aspects for the various functional
    entities composing a PLMN are covered in GSM 12.10. The remaining aspects relating to the Operation and
    Maintenance Centre are described in GSM 12.02/12.07.
    6 Other aspects
    Described in this section are concrete aspects of the system that, although mentioned in previous sections, merit specific
    treatment because of their importance.
    6.1 Signalling
    Signalling used in the GSM system consists of two very different parts. The first is a specific system signal at levels 1, 2
    and 3 and is applied to the radio pathMS-BTS.
    The rest of the signalling in the system is based on the pertinent CCITT Recommendations (Signalling system No7).
    The various interfaces between MS and BS are described in the GSM 04 series.
    (GSM 01.02 version 6.0.1 Release 1997)
    ETSI
    20 ETSI TS 101 622 V6.0.1 (2001-02)
    6.2 Transmission plan
    The transmission plan drawn up in GSM 03.50 covers two basic parts of voice services. The first of them proposes
    certain network configurations, giving information on the parameter reference values to be taken into account for
    connections to achieve a determined service quality. The second part refers to transmission performance, giving the
    essential characteristics to be complied with between the mobile interface and the PLMN, and between the latter and the
    PSTN.
    GSM 03.50 defines in general terms the interfaces: radio interface, PLMN-PSTN connection interface and MSC-MSC
    connection interface. Also covered here are generic reference values for different parameters intervening in
    transmission/reception (delays, losses, etc.).
    6.3 Technical descrīption of services and facilities
    The descrīption of the services and facilities provided by the system is given in the specifications mentioned in section
    2. However, the technical descrīption which involves not only specific parameters of the service itself, but other overall
    ones for the system are described in separate specification.
    Supplementary services are described in GSM 02.04 (general descrīption) and 02.8x-series, while technical realizations
    are given in GSM 03.11 (gen.) and 03.8x-series. Advance speech call items such as Voice Group Call, Voice Broadcast
    Call and enhanced Multi-Level Precedence and Pre-emption (eMLPP) are described in GSM 02.67 [16],
    GSM 02.68 [17], GSM 02.69 [18], GSM 03.67 [52], GSM 03.68 [53] and GSM 03.69 [54].
    The rest of the 03 series of describe the technical aspects of other services. Particularly, GSM 03.30 give the general
    basis for the planning of a radio network for the system, a key part of the implementation of a GSM PLMN.
    6.4 Coding aspects and information processing
    The functions that must be carried out by the Speech Codec within the system, are described in GSM 06.01. The rest of
    06 series covers other aspects related to speech coding.
    The adaptation aspects of terminals in mobile stations (MSs) needed to use the telecommunications service provided by
    the system, are described and detailed in GSM 04.21 and in the 05 and 07 series of the GSM specifications.
    6.5 Interworking
    Interworking of the GSM PLMN network with other telecommunication networks, is covered by 09 series of the GSM
    specification.
    Table 1: Teleservices
    Telephony
    Emergency Calls
    Short Message Mobile Terminated Point-to-Point
    Short Message Mobile Originated Point-To-Point
    Short Message Cell Broadcast
    Alternate Speech and Facsimile Group 3
    Automatic Facsimile Group 3
    Voice Group Call Service
    Voice Broadcast Service
    ETSI
    (GSM 01.02 version 6.0.1 Release 1997) 21 ETSI TS 101 622 V6.0.1 (2001-02)
    Table 2: Bearer Services
    Data Circuit Duplex Asynchronous 300 - 9600 bit/s (T/NT)
    Data Circuit Duplex Synchronous 1200 - 9600 bit/s (T/NT)
    PAD Access Circuit Asynchronous 300 - 9600 bit/s (T/NT)
    Data Packet Duplex Synchronous 2400 - 9600 bit/s (T/NT)
    Alternate Speech/Data (T/NT)
    Speech followed by Data (T/NT)
    BSS
    MS
    MS
    EIR
    MSC
    MSC
    OMC
    HLR
    VLR
    AUC
    Radio
    Interface
    MSC-BSS
    Interface
    Interface with
    the fixed networks
    PDN
    PSTN
    ISDN
    BSS
    Physical connection
    Shows relationships
    MS: Mobile Station VLR: Visited Location Register
    BSS: Base Station System OMC: Operation and Maintenance Centre
    MSC: Mobile services Switching Centre EIR: Equipment Identity Register
    HLR: Home Location Register AUC: Authentication Centre
    Figure 1
    (GSM 01.02 version 6.0.1 Release 1997)
    ETSI
    22 ETSI TS 101 622 V6.0.1 (2001-02)
    Annex A (informative):
    Document change history
    Change history
    SMG No. TDoc.
    No.
    CR. No. Section
    affected
    New
    version
    Subject/Comments
    SMG#17 149/96 A002r1 5.3, 6.3 5.0.0 Addition of handling for VBS and VCGS
    Nov. 1998 6.0.0 Upgraded to version 6.0.0
    Nov. 1998 6.0.1 Editorially corrected to R97
    ETSI
    (GSM 01.02 version 6.0.1 Release 1997) 23 ETSI TS 101 622 V6.0.1 (2001-02)
    History
    Document history
    V6.0.1 February 2001 Publication

  • Win XP中装备电脑保护神“UPS”

    2008-05-22 15:00:04

    电脑还需要保护神?也许你不需要,但据笔者所知,确有不少朋友因为种种原因不能用上稳定的电压或是在使用电脑时经常断电。所以,笔者建议这些朋友、特别是使用电脑从事重要工作的朋友,最好为你的电脑装备上UPS!UPS也称为“不间断电源”,它是连接在计算机和电源之间以保证电流不受干扰的设备。它使用电池保持计算机在断电之后仍能正常运行一段时间,通常对电压过大和电压太低都提供保护。确可称之为电脑忠实的保护神!

      下面,笔者就以Windows XP为例(注:Windows 9X/Me/2000/NT系统均可参照)阐述一下安装、配置和使用电脑保护神“不间断电源(UPS)”的有关技巧。

      一、安装UPS设备

      在Windows XP中安装UPS设备必须以管理员或Administrators组成员身份登录才能完成。请你按照制造商的说明书进行UPS设备的物理安装。
      1.首先打开“控制面板”中的电源选项。
      2.然后在“UPS”选项卡上单击“选择”。
      3.再在“UPS选择”对话框的“选择制造商”下单击计算机所连UPS的制造商。
      4.接下来在“选择型号”下单击计算机所连UPS的型号。
      5.最后在“端口”下单击连接UPS的串行端口,然后单击“完成”即可。
      当你需要打开“电源选项”时,依次单击“开始”→“控制面板”→“性能和维护”,然后单击“电源选项”即可。在“控制面板”中使用“电源选项”可以调整计算机硬件配置所能支持的任何电源管理选项。由于这些选项在不同的计算机之间有很大的差异,所以笔者在这里所描述的选项可能会与你见到的不同。“电源选项”会自动检测计算机上的可用信息,并只显示你可以控制的选项。

      二、配置简单信号传输的UPS设备

      仍然必须以管理员或Administrators组成员身份登录才能完成该过程。

      1.首先打开“控制面板”中的电源管理。
      2.在“UPS”选项卡上单击“选择”。
      3.然后在“UPS选择”对话框的“选择制造商”下选择“一般”。
      4.接下来在“选择型号”中选择“自定义”。
      5.再在“端口”中选择连接UPS设备的COM端口,然后单击“下一步”。
      6.最后在“UPS接口配置”对话框中正确设置UPS信号极性:电源故障/起用电池;电力不足;UPS关闭。
      7.单击“完成”即可。

      三、配置UPS设备

      以管理员或Administrators组成员身份登录才能完成该过程。
      1.首先打开“控制面板”中的电源选项。
      2.在“UPS”选项卡上单击“配置”。
      3.然后在“UPS配置”对话框中更改下面的一项或多项设置:

      (1)启用所有通知

      如果想要Windows配置不间断电源(UPS)设备在计算机切换到UPS电源时显示警告信息,请选择此复选框。可以指定在显示最初电源故障警告消息之前等待的秒数以及在显示后续电源故障消息之前必须经过的秒数。

      (2)严重警报

      如果想让计算机使用UPS电源运行一段指定的时间后,Windows再发出严重警报,那么请选中“严重警报前,电池使用的分钟数”复选框。如果希望当UPS激活临界电源警报时Windows运行程序或任务,请选中“当出现警报时,运行这个程序”复选框。单击“配置”,在“UPS系统关闭程序”对话框中,在“运行”中,键入UPS关闭计算机前要运行的程序或任务,或单击“浏览”搜索程序或任务。在“日程安排”选项卡上自定义适当的任务安排。在“设置”选项卡中,适当自定义已计划任务的完成、空闲时间和电源管理的设置。在“下一步,指示计算机去做”列表中,单击在电源严重短缺警报发生时想让计算机进入的系统状态。如果您想在计算机关机时也让UPS关闭,那么请您选中“最后,关上UPS”复选框。要打开“电源选项”,请依次单击“开始”、“控制面板”、“性能和维护”,然后单击“电源选项”。命令文件必须驻留在Systemroot\System32文件夹而且包含下列某种扩展名:.exe、.com、.bat或.cmd。不能指定导致显示对话框的命令文件,因为需要用户输入的对话框将阻碍系统正常关闭。

      注意:命令文件必须在30秒内完成运行,如果运行时间超过30秒将会威胁到Windows完成正常关闭系统的功能。

      配置好UPS选项后,一定要对UPS配置进行测试以确认计算机具备掉电保护功能。  用于配置UPS服务的选项取决于安装在系统上的特定UPS硬件。不正确的设置可能会导致不需要的UPS硬件操作。有关设置的详细信息请查阅你的UPS设备说明文档。

      四、测试UPS设备配置

      首先断开电源与UPS设备的连接来模拟断电,等UPS电池达到最低级别电量,此时系统应该开始关闭。恢复UPS设备的电源,检查“事件查看器”中的系统日志,确保准确无误地记录了所有的操作。在执行类似该测试之前,请保存并关闭所有打开的文档和程序。当断开电源与UPS设备之间的连接后,连接到UPS设备的计算机和外围设备将会继续运行,并在屏幕上显示一条警告信息。如果UPS的服务被配置为运行命令文件,请确保文件在30秒之内执行。如果无法在30秒内完成运行将会危及计算机的安全关机,这一点务必请你注意!

      五、使用UPS服务

      一旦为计算机购买了不间断电源(UPS),你就可以利用UPS服务为计算机的“控制面板”中的“电源选项”来设置此操作选项。在“电源选项”中的“UPS”选项卡,允许你控制计算机上UPS服务的工作方式。UPS设置是否可用将取决于你系统上安装的特定UPS硬件。这些设置可能包括如下选项:

      1.连接UPS设备的串行端口。
      2.触发UPS设备发送信号的条件,如设备停电、电池电量不足和UPS设备的远程关机。
      3.在电源发生故障后维护电池电源、重新充电,以及发送报警消息的时间间隔。

      六、删除UPS设备

      当你因某种原因需要删除UPS设备时,还是必须以管理员或Administrators组成员身份登录才能完成该过程。
      1.请打开“控制面板”中的电源选项。
      2.在“UPS”选项卡上单击“选择”。
      3.然后在“UPS选择”对话框的“选择制造商”下单击“无”。
      4.最后关闭计算机重新启动即可删除UPS设备。

  • shutdown命令集

    2008-04-30 17:47:16

    用法: shutdown [-i | -l | -s | -r | -a] [-f] [-m \\computername] [-t xx] [-c ¨comment¨] [-d up:xx:yy] 没有参数 显示此消息(与 ? 相同) -i 显示 GUI 界面,必须是第一个选项 -l 注销(不能与选项 -m 一起使用) -s 关闭此计算机 -r 关闭并重启动此计算机 -a 放弃系统关机 -m \\computername 远程计算机关机/重启动/放弃 -t xx 设置关闭的超时为 xx 秒 -c ¨comment¨ 关闭注释(最大 127 个字符) -f 强制运行的应用程序关闭而没有警告 -d [u][p]:xx:yy 关闭原因代码 u 是用户代码 p 是一个计划的关闭代码 xx 是一个主要原因代码(小于 256 的正整数) yy 是一个次要原因代码(小于 65536 的正整数) 打开“运行“对话框,输入命令”at 23:00 shutdown -s -t 60“(表示到23:00后再等60秒关机,这可以由你自己设定),其实这是一个”关机‘的计划任务,你可以看到,输完命令回车后在计划任务里添加了一项. Windows XP系统通过一个名为Shutdown.exe的程序来完成关机操作(位置在Windows\System下),一般情况下XP的关机是由关机程序shutdown.exe来实现的,关机的时候调用shutdown.exe。由此可知要阻止强行关机就是要取消对shutdown.exe的调用。 shutdown.exe -a 取消关机 shutdown.exe -f 强行关闭应用程序。 shutdown.exe -m \\计算机名 控制远程计算机。 shutdown.exe -i 显示图形用户界面,但必须是Shutdown的第一个参数。 shutdown.exe -l 注销当前用户。 shutdown.exe -r 关机并重启。 shutdown.exe -t时间 设置关机倒计时。 shutdown.exe -c¨消息内容¨ 输入关机对话框中的消息内容(不能超127个字符)。 比如你的电脑要在23:00关机,可以选择“开始→运行”,输入“at 23:00 Shutdown -s”,这样,到了23点,电脑就会出现“系统关机”对话框,默认有30秒钟的倒计时并提示你保存工作。如果你想以倒计时的方式关机,可以输入“Shutdown.exe -s -t 3600”,这里表示60分钟后自动关机,“3600”代表60分钟。 如果想取消的话,可以在运行中输入“shutdown -a”。另外输入“shutdown -i”,则可以打开设置自动关机对话框,对自动关机进行设置。
  • CDMA系统中的用户识别卡(UIM)和空中激活技术(OTA)

    2008-04-30 13:48:40

    什么是UIM卡 ?
    UIM(User Identity Model)用户识别模块,是由中国联通公司倡导并得到国际CDMA组织(CDG)支持的移动通信终端用户识别及加密技术。它支持专用的鉴权加密算法和OTA技术(Over The Air),可以通过无线空中借口方式对卡上的数据进行更新和管理。UIM卡的功能类似于全球通(GSM)手机中使用的SIM卡,可进行用户的身份识别及通信加密,还可以存储电话号码、短信息等用户个人信息。同时UIM卡采用了SIM卡一卡一号的便利使用方式,用户只需拥有一张属于个人的UIM卡,插入任何一步配有UIM卡接口的手机即可应用。
    大唐电信科技股份有限公司微电子公司宣布,该公司具有全部自主知识产权的移动通信CDMA手机UIM卡专用芯片DTT4C18A已研制成功。

    用户识别卡(UIM)
    在CDMA系统的原始设计中,用户识别信息是直接存储在移动终端中的,并没有一个与移动终端可以分离的存储用户信息的功能实体。虽然一些运营者和制造商希望在CDMA系统中也能有一个与GSM系统中的SIM卡类似的设备以实现机卡分离,但这种思想一直没有成为主流思想。直到中国联通公司声明希望在CDMA手机上实现SIM卡的功能,才极大地加快了在CDMA系统中实施UIM卡的进程。UIM卡的标准化工作由3GPP2(第三代伙伴计划2)负责进行。目前,这项工作已经接近完成。

    根据UIM卡标准,CDMA系统的UIM卡将采用与GSM系统相同的物理结构、电气性能和逻辑接口,并将在SIM卡的基础上,根据CDMA系统的要求,增加相关的参数和命令,以实现CDMA系统的功能。换句话说,UIM卡可以理解为是SIM卡针对CDMA系统的功能扩展。换个角度来说,无论是SIM卡还是UIM卡,都是基于IC卡技术的,不同的蜂窝系统就是在IC卡中存储与自己系统有关的信息。

    CDMA系统在UIM卡中存储的信息可以分为三类:
    一是用户识别信息和鉴权信息,主要是IMSI号码和CDMA系统的专有的鉴权信息,其中包括A-Key、SSD-A和SSD-B。
    第二类是业务信息, CDMA系统中与业务有关的信息存储在HLR中,这类信息在UIM卡中并不多,主要有短消息状态等信息。
    第三类是与移动台工作有关的信息,包括优选的系统和频段,归属区标识(SID、NID组)等参数。除上述保证系统正常运行的信息以外,用户也可以在UIM卡中存储自己使用的信息,如电话号码本等。

    这样,采用UIM卡以后,CDMA系统就可以象GSM系统一样,放开移动台的销售,使用户可以自由地选择不同样式的移动台。运营者的运作方式也将与GSM的运营者一样,仅需要设立销售网点销售UIM卡。

    空中激活技术(OTA)
    空中激活技术是CDMA系统自身的原始设计之一。从技术角度来说,空中激活是一种空中写码技术。这种技术通过空中接口将移动台正常工作所需要的信息输入到移动台中。从服务角度来说,空中激活技术是一种销售电信业务的手段,采用这项技术的运营者允许用户使用自备机入网。用户自己购买了移动台后,可以用这个移动台打电话接入运营者的中心,向服务人员说明自己需要的业务种类等内容,服务人员在确认用户需求以后,使用OTA技术通过空中接口向移动台写入必要的信息。然后,就可以正常使用新加入的业务了。

    一个新用户使用OTA技术开通服务的基本过程包括以下步骤:
    1.一个新的用户首先使用自己购买的手机拨打一个特殊的号码(例如:*FC XX)。其中FC表示特定的业务号码,这里是OTA。XX表示系统选择码,用户可以通过它选择一个运营者。
    2.移动台分析号码,根据FC确定用户要求执行OTA,移动台根据XX重新搜索CDMA的导频信道,在选定运营者的网络中登记,并发起呼叫。
    3.MSC将呼叫接到客户服务中心。
    4.服务人员应答呼叫,并了解用户的业务需求以及付费方法。
    5.确认用户信息以后,系统开始自动向移动台输入数据的过程。这个过程可能包括:了解移动台能力;启动加密过程,保证后面的数据传输安全;传输用户识别信息;初始化鉴权信息;相关漫游信息和其他数据等。
    6.在成功地传输了上述数据后,用户可以结束这次呼叫,移动台重新激活,就正常使用了。
    OTA技术通过空中接口写入移动台的信息是保证蜂窝信息运行所必须的信息。这些信息与UIM卡中存储的信息基本相同。当然,用户自己存储的信息(如电话号码本等)是不可能通过OTA输入移动台的,这也是OTA的一个缺点,因为用户在更换手机时只好重新输入自己的电话号码本。

    总的说来,用户识别卡(UIM)和空中激活技术(OTA)都能实现电信服务与电信终端相分离。在这两种技术支持下,用户都可以在任意移动终端销售商处购买手机,因而用户可以按照自己的爱好自由选择手机的功能、价格和外观等特性;制造商可以直接面向用户推销产品,而不必经过运营者的中介;运营者也可以降低手机销售的成本和风险。这无疑对各方都是有好处的。

    另外,由于这两种技术在实现方式上的不同,也就适合于不同的社会背景。

    中国移动和中国联通都已经采用了GSM技术,虽然运营者仍然需要投资建立一定数量的销售网点以销售UIM卡,但运营者在运营GSM网络时已经建立了这些网点,所以这并不是新的投资。OTA技术虽然可以使运营者尽可能少地建立销售网点,但它的实现是建立在高效的客户服务中心的基础上的。这也是我国运营者与美国运营者最大的区别之一,我国的运营者在客户服务中心的建设方面还很薄弱。另外,由于用户是通过电话接入客户服务中心的,因此,只能使用信用卡作为付费手段,而信用卡在我国普及率也不高。同时,UIM卡还有其他附加的功能,例如:存储电话号码本或短消息;更换手机特别方便,可以借用别人的手机等。这些特点大得人心,也符合我国用户的习惯。因此可以说,UIM卡比较适合我国的国情,而OTA技术比较适合于美国的运营者。

  • 无法切换输入法解决方法

    2008-04-25 08:48:32

    病毒破坏致不能切换输入法的解决办法

    丢失无法切换

    近期陆续接到语言栏丢失无法切换输入法的用户咨询。按照网上传统的修改语言选项的方法通常无法处理。

    产生该现象的原因:

    病毒利用映像劫持技术劫持了输入法相关文件ctfmon.exe,导致语言栏出故障。

    处理方案:

    1.升级毒霸2008与金山清理专家到最新版本后全盘杀毒处理掉病毒。

    2.手工删除注册表表中病毒写入的劫持。如图所示:

    3.依次打开【控制面板】——【区域和语言选项】——【语言】——【详细信息】——【高级】——去掉“关闭高级文字服务”前的小勾。如图所示:

    4.重启计算机。

    检查语言栏设置

    5.如桌面右下脚依然没有语言栏图标的话,检查【语言栏设置】中是否勾选了在桌面上显示。如图所示:

    附件中的“输入法劫持清除工具v1.0”的脚本为劫持清理脚本,可修正病毒对毒霸相关文件以 及输入法文件的劫持。仅建议遇到此问题且不会操作注册表的用户尝试使用。该脚本对于近期主要劫持输入法的病毒文件soundman.exe写入的启动项, 将路径信息修改数据为:papa令其无法随机加载。

    注:病毒文件soundman.exe与部分声卡相关文件同名,即使同名正常文件无法启动或不存在亦不影响电脑发声。该脚本工具在当前目录下释放的相关文件可以手工删除。

    小结:

    也许是病毒作者也越来越觉得普通用户通过网络搜索与反病毒论坛求援的方式可以将自己苦心编写的赚钱工具较为便捷地解决掉吧,病毒对于系统文件以及日常使用功能的破坏意图也越来越明显。谨以此文帮助在毒霸论坛寻求相关帮助却无法输入中英文关键字的朋友。

  • 手机测试相关介绍

    2008-04-09 19:36:02

    手机测试是一个很大的题目,涉及到硬件测试和软件测试,还有结构的测试,比如抗压,抗摔,抗疲劳,抗低温高温等,结构上的设计不合理,会造成应力集中,使得本身外壳变形,对于翻盖手机,盖子失效,还有其他严重问题。硬件测试一般都有严格的物理电气指标,也有专门的仪器,这里的仪器,不在多说,一般如果是专业的测试人员,不会对词陌生吧。
    手机测试,一般是指软件测试,这个一方面也说明了软件在手机上的重要行。一方面也说明手机测试的难度。因为期他得测试都有明确的指标,严格的操作规程,还有各种仪器。下面说的手机测试一般都是手机软件测试,以后不在重复说明。
    在说明手机测试之前,我觉得应该了解一下什么是嵌入市操作系统,这是个时髦的名词,虽然我们已经被嵌入市操作系统的产品所包围,但是却不一定能说清楚,什么是嵌入式操作系统,而学校的课堂上,讲的也不多,所以很多人对此感到云山舞罩。
    简单的说,一个嵌入市操作系统就是为完成某中特定功能而专门开发的操作系统。这个操作系统的功能很明确,不象大型操作系统,范围广泛,大千世界,尽在其中,而嵌如操作系统只为完成某一项或者几项功能。
    再说一下手机的特殊性,也就是要求对响应时间达到一定限制范围。也就是所谓的实时操作系统,如果一个电话不能在90秒内接听,那么对方会挂掉。而你的操作系统还没反映过来,那么这个操作系统无疑是失败的,这是对嵌如操作系统实时性的要求。
    作为一个测试人员,你必须了解这些,可能对一些软件开发人员,他不必很在意这些方面,因为他只要了解自己模块的入口说明和 出口说明就可以。但是测试人员不行。高级测试人员应该了解嵌入操作系统的特点,这个系统不象WINDOWS,有图形界面可以输入输出,也不象D OS用命令行模式,所有这些,都需要自己编写一个编辑器,编写一个交互界面,编写一个输入输出界面,在WINDOWS中,利用一些API和一些M FC,不用考虑硬件的问题,因为系统已经完成,而WINDOWS是讲究和硬件分离的,因为这样可以保护系统不受侵入。而在嵌入市系统里面。这一些都要求和硬件息戏相关。手机测试中,软件出现的故障不一定是由于软件的错误,也可能是由于没有考虑到硬件和软件没有完美的结合。
    因此我们在了解操作系统同时,也要了解一下其他的手机硬件性能,比如CPU ,比如存储器。
    CPU的处理运算能力是以MIPS来衡量的,当然越快越好,但是也是和成本相关的,我不知道现在MOTOROLA T39的CPU,但是,因为是PDA,又是手写屏幕,所以菜单特别的慢。关于存储器需要专门做出说明,因为这里 的存储器很特别,不象PC,手机没有硬盘!
    嵌入时系统的编程语言一般有C,而且也是最多的,也有其他语言。比如C++在最开始时候是用 汇编的,但是汇编难懂,而且也不容易移植,渐渐的被C代替,不过即使如此,在启动程序时候,要启动板子,也就是电路板时候,还是需要用一些汇编语言完成。
    作为一个嵌入市系统的程序,和在PC上运行着的程序没有任何不同,唯一不同可能是在PC上运行的程序,你可以看到结果——如果你用输出语句的话,而在这里,你是看布道结果的。除非你加上L CD硬件,然后编写了LCD驱动程序,然后再编写显示 程序。编写嵌入市程序,一切都要自己解决。
    我们的手机如果不是认为把电源切断的话,或者在电源消耗到一定程度的话,是会一直在使用的,所以,手机程序是一直在运转的,就是说一直在循环,这个,对于了解嵌入市程序,应该是个好材料——嵌入式程序就是一个无限循环的程序,除非关掉电源和电源因素,这里也有一个测试点:硬件中断是最高级的,它会终止你的程序,即使你现在的程序级别很高,比如通话,如果没电了,一切会o ver.
    手机程序就是在一个无限循环的程序,什么时候跳出这个无限循环?你关机吧,如果感到不高兴,把电池卸下来,因为有可能进入死循环,而关机键失效了,——只好通过取下电池了。
    这里要专门说明一下存储器,因为很多手机毛病都和存储有关,而且很多问题都和存储相关,计算机的存储是关键,而手机更是关键,因为计算机有硬盘作为存储,而手机所有的都在存储器里
    存储器分为几类,RAM 随机存储器,ROM随机只读存储器还有现在出现一些的闪存,以及电子可编程存储和非易失存储起。一个一个到来 。RAM 随机存储器,其中又有SRAM(静态RAM)DRAM(动态RAM),
    SRAM,只要只要电源开着,就会保存,我们打电话,有些最后拨打的号码,暂时是存在SRAM中的,不会立刻写入通话记录。只有正常关机,才会写入,如果取电池的话,是不会写入手机的通话记录的,如果在通话记录中出现了已经拨打电话,但是没有记录的情况,那么有可能和这个存储器有关,可能是你的软件上错误,也可能是硬件。DRAM在手机上用的不多,因为保留数据时间很短。从价格上看,SRAM是非常昂贵的,而DRAM相比很便宜。
    ROM也有几种,PROM可编程ROM 和EPROM可擦除可编程ROM。两者区别是,PROM是一次性的,也就是软件灌入后,这个就完蛋了,这种是早期的产品,现在已经不可能使用了,而E PROM则是通用的存储器,这些存储器不符和手机软件产品,一般使用ROM少。
    其他FLASH。这是近来手机采用最多的存储器,这种存储起结合了ROM和RAM的长处,但是不属RAM也不属于ROM。手机大量采用的NVRAM 非易失存储器。 和SRAM属性差不多,EEPROM 电子可擦出可编程存储器 。闪存,ROM的后代。手机软件一般放在EEPROM中,EPROM是通过紫外光的照射,擦除原先的程序,而EEPROM是通过电子擦出,当然价格也是很高的,而且写入时间很长,写入很慢,所以前面提到的电话号码,一般先放在S RAM中,不是马上写入EEPROM,因为当时有很重要工作要做——通话,如果写入,漫长的等待是让用户忍无可忍的。 NVRAM 是一个很特别的存储器,它和SRAM相类似,但是价格却高很多,由于一些数据实在重要,断电后必须保持这些数据,所以只能存放在这里,一般和个人信息有关的数据会放在这里,比如和S IM卡相关数据。容量大小也只有几百字节。
    闪寸存储器是所有手机的首选,综合了前面的所有优点,不会断电丢失数据(NVRAM)快速读取,电子可擦出可编程(EEPROM)所以现在手机大量采用。
    说了这么多存储器,可能比较糊涂了,这么多存储器,究竟采用哪中呢,在手机发展中,各种存储器都用过,至于现在,各种手机采用的存储器是不同的,这个和成本相关,各种存储器价格不一样,本着性价比最优组合,由设计者决定,有些是可选的,有些是必须的,是手机方案决定的,我们了解只是各种存储性能,特点,在测试中判断错误原因。
    -----------------------------------------------
    手机协议站软件的白盒测试
    手机软件测试单从测试的内容来看,包括上面的MMI和底下的PROTOCOL。由于MMI的灵活性,和各个厂家的个性化,以及手机本身的用户不同。MMI的侧重点也就不同,在基本通话、短消息、数据功能完成的基础上可以五花八门,所以测试的重点不同。测试方法各不相同。 但是协议就不同了,协议是统一的,虽然你实现方法可以不同,但是完成的功能必须相同,和MMI不同,虽然都是聊天,但是有些用短消息
    聊天,有些用PUSH聊天,而协议软件有一个遵守的规范——ETSI指定的协议规范,有统一的命令规范和统一的标准。消息(术语,不是软件编程里的消息,是通信术语)是固定的嘛。 针对协议的测试,因为有标准可循,有规范可仪,所以软件测试就很多工具,公司也多,自动化测试要自动话,否则,按照人的测试能力,谁也无法保证其绝对可靠性,也没有这么大的人力去仔细做测试。
    一般对于白盒测试是比较严格的,而且也是耗费人力的,所以常采用自动化测试工具。这样节省人力、缩短测试时间。至于谁家的工具比较好,涉及各取所需吧,也涉及到成本问题。你如果想购买某产品,会给你一个DEMO版本,给你一个月的评价时期,这个评估版本让你熟悉其产品的优劣也让你熟悉其操作。测试工具一般都有二次开发功能,也就是可以自己编写脚本,针对不同的软件平台做一些改动,这样可以根据自己的需要编写测试CASE测试用列。当然即使是全部用自动化测试,你心理还是没底,你还是要仔细去看代码。分析流程,读懂其含义,一个很小的问题,出错保护没有作好,一般这个问题最多,出错保护机制没有作好,会造成崩溃这样严重的问题。 这是针对协议代码的白盒测试 。如果你是对购买来的协议进行测试,一般有仪器,模拟一个网络基站,进行测试,不过这样的仪器非常昂贵,而且测试人员要对ETSI协议比较熟悉。 我没有直接参加针对协议的白盒测试,不过对评估般的测试软件曾经PRACTISE,可测试覆盖率,我很奇怪的是,一般打点(跟踪)也是需要消耗CPU时间的这样程序效率就降低了,而我要测试程序的效率等项目就要考虑CPU,而且程序的工作运转必须和CPU息息相关,而现在CPU 在保证程序RUN同时,还要进行打点,是否测试出的指数和实际不符和呢,是否没有达到真实的水平呢?而它这个产品(水牛)介绍说,一般不占用CPU时间,我想了很长时间没有想通后想咨询,告之这是他们的专利,无可奉告。由于这种测试工具是针对平台,所以如果你平台不支持的,也就没有办法使用了。还有集成测试等等,在软件的介绍中有详细说明,不再详细说明。 对协议进行白合测试,我想对你的要求就是:熟悉相关的协议,否则白扯;熟悉开发的语言,否则免谈。
    --------------------------------------------
    1 计算机工业的分类
    以往我们按照计算机的体系结构、运算速度、结构规模、适用领域,将其分为 大型计算机、中型机、小型机和微计算机,并以此来组织学科和产业分工,这 种分类沿袭了约40年。近10年来随着计算机技术的迅速发展,实际情况产生了 根本性的变化,例如70年代末定义的微计算机演变出来的个人计算机(PC),如
    今已经占据了全球计算机工业的90%市场,其处理速度也超过了当年大、中型计 算机的定义。随着计算机技术和产品对其它行业的广泛渗透,以应用为中心的 分类方法变得更为切合实际,也就是按计算机的嵌入式应用和非嵌入式应用将 其分为嵌入式计算机和通用计算机。 通用计算机具有计算机的标准形态,通过装配不同的应用软件,以类同面目出 现并应用在社会的各个方面,其典型产品为PC;而嵌入式计算机则是以嵌入式系统的形式隐藏在各种装置、产品和系统中。
    2 嵌入式系统(Embedded Systems)
    嵌入式系统被定义为:以应用为中心、以计算机技术为基础、软件硬件可裁剪、 适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。 嵌入式计算机在应用数量上远远超过了各种通用计算机,一台通用计算机的外部 设备中就包含了5-10个嵌入式微处理器,键盘、鼠标、软驱、硬盘、显示卡、显 示器、Modem、网卡、声卡、打印机、扫描仪、数字相机、USB集线器等均是由嵌 入式处理器控制的。在制造工业、过程控制、通讯、仪器、仪表、汽车、船舶、 航空、航天、军事装备、消费类产品等方面均是嵌入式计算机的应用领域。
    参考资料:http://www.cntesting.com/bbs/?u=9224
  • 手机操作系统介绍

    2008-04-09 19:29:04

    一、Windows Mobile系列手机操作系统

    Windows mobile 系列操作系统是在微软计算机的Windows操作系统上变化而来的,因此,它们的操作界面非常相似,熟悉计算机Windows系列操作系统的朋友一看到Windows Mobile系列的操作系统就一般会认得它是出于微软之手。Windows Mobile系列操作系统具有功能更强大,多数具备了音频、视频文件播放、上网冲浪、MSN聊天、电子邮件收发等功能。而且,支持该操作系统的智能手机多数都采用了英特尔嵌入式处理器,主频比较高,另外,采用该操作系统的智能手机在其它硬件配置(如内存、储存卡容量等)上也较采用其它操作系统的智能手机要高出许多,因此性能比较强劲,操作起来速度会比较快。但是,此系列手机也有一定的缺点,如因配置高、功能多而产生耗电量大、电池续航时间短、硬件采用成本高等缺点。Windows Mobile系列操作系统包括SmartPhone以及Pocket PC Phone两种平台。Pocket PC phone主要用于掌上电脑型的智能手机,而SmartPhone则主要为单手智能手机提供操作系统。

    (1) SmartPhone操作系统

    Microsoft Smartphone是微软基于Microsoft Windows CE内核开发的、为智能手机提供的一种操作系统,与使用手写笔来进行操作的智能手机不同的是,基于该操作系统的手机无需借助手写笔,只需用手机提供的键盘就能完成几乎所有的操作,因此,使用该操作系统的手机用户只需一只手操作即可。基于Smartphone操作系统的智能手机与其它微软操作系统的智能手机在功能上并没有很大区别,多数具有MP3播放、MSN聊天、电子邮件收发等功能,无需借助手写笔来进行操作,携带方便。目前支持该操作系统的智能手机有神达Mio 8390和多普达565等.

    (2) Pocket PC Phone操作系统

    Pocket PC Phone 是目前我们最为常见的微软智能手机操作系统,目前市面上绝大多数基于微软操作系统的智能手机都采用了这一操作系统,例如我们熟悉的联想ET180、ET560、多普达696、大显 CU928、多普达等智能手机即采用了此操作系统。与微软Smartphone不同的是,该操作系统主要借助手写笔来完成大部分的操作。

    二、Symbian开放式操作系统

    Symbian操作系统提供了灵活的应用界面(UI)框架,不但使开发者得以快速掌握必要的技术,同时还使手机制造商能够推出不同界面的产品。Symbian系统手机可以采用多种应用界面形式:一类在设计上很类似当前最常见的手机,即主要通过键盘进行输入的手机;另一类是使用手写笔进行操作;还有一类是既有键盘又有触摸屏的手机,它具有较大的屏幕和较小的键盘。不同的输入方式和外观设计会对各款手机的主要用途产生很大的影响。应用界面在要求上是由手机和市场决定的。有了Symbian操作系统,手机制造商和第三方开发者就可以为上述各类手机开发出独具特色的应用界面,例如:

    (1) 采用数字键盘的手机(Symbian s60)

    此类手机需要灵活的应用界面,方便用户使用导航键(Joystick)、软按键或转点通键(Jogdial)操作,诺基亚3650和N-Gage也就是代表他们采用了Series 60应用界面。如诺基亚 6600;诺基亚 7610; 诺基亚 6670等;

    (2) 采用触摸式屏幕的手机(Symbian UIQ)

    这类手机主要采用了UIQ界面,其中以索尼爱立信P802、P908为代表。UIQ是一种可定制的基于手写笔输入的应用界面,很适合支持具有丰富多媒体功能的手机。

    (3) 采用完整键盘和超大彩色屏幕的手机(Symbian s80)

    此类手机为那些需要在办公室以外编辑信息和查看业务数据的用户提供了先进的移动通信功能。诺基亚9300—9500个人通讯器系列是此类应用界面的典型代表。

    三 、PALM手机操作系统

    PALM是3Com公司的Palm Computing部开发的一种32位的嵌入式操作系统,原本是一家生产掌上电脑及掌上电脑操作系统为主的公司,PALM智能手机所用的PALM操作系统又与PALM掌上电脑所用的操作系统非常相似,因此,基于该操作系统的手机拥有的第三方软件较多,以前用惯了PALM掌上电脑的用户能非常快速地掌握这类的智能手机。

      由于PALM一直遵循Less is More(少就是多)这一理念去设计,所以,与微软所推出操作系统要占有大量的系统资源和储存容量不同的是,它本身所占的内存极小,基于PALM操作系统编写的应用程序所占的空间也很小,通常只有几十KB,所以基于PALM操作系统的掌上电脑虽然只有几兆内存却可以运行众多的应用程序。但是,这么一来,它的功能就没那么多,当然,最近PALM似乎也意识到丰富的功能对消费者的吸引力之大,因此,PALM也似乎越来越向提供丰富的功能靠拢,“少就是多”的设计理念逐步削弱。另外,对于中国用户而言,它有一个不足之处是,它的操作系统起初在中国销售的产品仍然要使用中文外挂平台,有相当部分依然是以英文界面为主,在一定程度上影响了基于PALM操作系统的产品在中国市场的大面积进入。目前,基于PALM操作系统的手机有三星SPH-i330、Handspring Treo 650系列等。

    四、Linux手机操作系统

    与Windows Mobile系列操作系统一样,Linux手机操作系统是由计算机Linux操作系统“变化”而来的。简单地说,Linux是一套免费使用和自由传播的操作系统。它支持32位和64位处理器,在计算机领域中,主要用于配备Intel x86系列CPU的计算机,在手机领域中,较具代表性的产品有摩托罗拉A768。

    Linux具有稳定、可靠、安全等优点,有强大的网络功能。在相关软件的支持下,可实现WWW、FTP、DNS、DHCP、E-mail等服务。由于Linux具有源代码开放、这一特点非常重要,因为丰富的应用是智能手机的优越性体现和关键卖点所在。从应用开发的角度看,由于Linux的源代码是开放的,有利于独立软件开发商(ISV)开发出硬件利用效率高、功能更强大的应用软件,也方便行业用户开发自己的安全、可控认证系统。特别是当智能手机大量用作行业应用的移动终端时,Linux在手机操作系统市场中也异军突起,成为一股不容忽视的力量。目前,基于Linux手机操作系统的产品有三星mitssch-i519和摩托罗拉A768、A780、e680等。

  • 嵌入式系统介绍

    2008-04-09 19:20:36

    嵌入式系统的核心是嵌入式微处理器。嵌入式微处理器一般就具备以下4个特点:

    1)对实时多任务有很强的支持能力,能完成多任务并且有较短的中断响应时间,从而使内部的代码和实时内核心的执行时间减少到最低限度。

    2)具有功能很强的存储区保护功能。这是由于嵌入式系统的软件结构已模块化,而为了避免在软件模块之间出现错误的交叉作用,需要设计强大的存储区保护功能,同时也有利于软件诊断。

    3)可扩展的处理器结构,以能最迅速地开展出满足应用的最高性能的嵌入式微处理器。

    4)嵌入式微处理器必须功耗很低,尤其是用于便携式的无线及移动的计算和通信设备中靠电池供电的嵌入式系统更是如此,如需要功耗只有mW甚至μW级。

    嵌入式计算机系统同通用型计算机系统相比具有以下特点:  

    1.嵌入式系统通常是面向特定应用的嵌入式CPU与通用型的最大不同就是嵌入式CPU大多工作在为特定用户群设计的系统中,它通常都具有低功耗、体积小、集成度高等特点,能够把通用CPU中许多由板卡完成的任务集成在芯片内部,从而有利于嵌入式系统设计趋于小型化,移动能力大大增强,跟网络的耦合也越来越紧密。

    2.嵌入式系统是将先进的计算机技术、半导体技术和电子技术与各个行业的具体应用相结合后的产物。这一点就决定了它必然是一个技术密集、资金密集、高度分散、不断创新的知识集成系统。

    3.嵌入式系统的硬件和软件都必须高效率地设计,量体裁衣、去除冗余,力争在同样的硅片面积上实现更高的性能,这样才能在具体应用中对处理器的选择更具有竞争力。

    4.嵌入式系统和具体应用有机地结合在一起,它的升级换代也是和具体产品同步进行,因此嵌入式系统产品一旦进入市场,具有较长的生命周期。

    5.为了提高执行速度和系统可靠性,嵌入式系统中的软件一般都固化在存储器芯片或单片机本身中,而不是存贮于磁盘等载体中。

    6.嵌入式系统本身不具备自举开发能力,即使设计完成以后用户通常也是不能对其中的程序功能进行修改的,必须有一套开发工具和环境才能进行开发。  
    7.目前,嵌入式系统多用于手机等操作系统的开发。具有巨大的市场潜力.


    1.1.1 何为嵌入式系统
      嵌入式系统本身是一个相对模糊的定义。目前嵌入式系统已经渗透到我们生活中的每个角落,工业、服务业、消费电子……,而恰恰由于这种范围的扩大,使得“嵌入式系统”更加难于明确定义。
      举个简单例子:一个手持的mp3是否可以叫做是嵌入式系统呢?答案肯定是“是”。另外一个PC104的微型工业控制计算机你会认为它是嵌入式系统吗?当然,也是,工业控制是嵌入式系统技术的一个典型应用领域。然而比较两者,你也许会发现二者几乎完全不同,除了其中都嵌入有微处理器。那是否可以说嵌入着微处理器的设备就是嵌入式系统?那鼠标中也有单片机,能叫嵌入式系统嘛?
      那到底什么是嵌入式系统?莫非嵌入式系统只是一个难以定义的抽象概念?
      1.嵌入式系统的历史
      虽然嵌入式系统是近几年才风靡起来的,但是这个概念并非新近才出现。从20世纪七十年代单片机的出现到今天各式各样的嵌入式微处理器,微控制器的大规模应用,嵌入式系统已经有了近30年的发展历史。
      作为一个系统,往往是在硬件和软件交替发展的双螺旋的支撑下逐渐趋于稳定和成熟,嵌入式系统也不例外。
      嵌入式系统的出现最初是基于单片机的。70年代单片机的出现,使得汽车、家电、工业机器、通信装置以及成千上万种产品可以通过内嵌电子装置来获得更佳的使用性能:更容易使用、更快、更便宜。这些装置已经初步具备了嵌入式的应用特点,但是这时的应用只是使用8位的芯片,执行一些单线程的程序,还谈不上“系统”的概念。
      提示:最早的单片机是Intel公司的 8048,它出现在1976年。Motorola同时推出了68HC05,Zilog公司推出了Z80系列,这些早期的单片机均含有256字节的RAM、4K的ROM、4 个8位并口、1个全双工串行口、两个16位定 时 器。之后在80年代初,Intel又进一步完善了8048,在它的基础上研制成功了8051,这在单片机的历史上是值得纪念的一页,迄今为止,51系列的单片机仍然是最为成功的单片机芯片,在各种产品中有着非常广泛的应用。
      从80年代早期开始,嵌入式系统的程序员开始用商业级的“操作系统”编写嵌入式应用软件,这使得可以获取更短的开发周期,更低的开发资金和更高的开发效率,“嵌入式系统”真正出现了。确切点说,这个时候的操作系统是一个实时核,这个实时核包含了许多传统操作系统的特征,包括任务管理、任务间通讯、同步与相互排斥、中断支持、内存管理等功能。其中比较著名的有Ready System 公司的VRTX、Integrated System Incorporation (ISI)的PSOS和IMG的VxWorks、QNX公司的QNX 等。这些嵌入式操作系统都具有嵌入式的典型特点:它们均采用占先式的调度,响应的时间很短,任务执行的时间可以确定;系统内核很小,具有可裁剪,可扩充和可移植性,可以移植到各种处理器上;较强的实时和可靠性,适合嵌入式应用。这些嵌入式实时多任务操作系统的出现,使得应用开发人员得以从小范围的开发解放出来,同时也促使嵌入式有了更为广阔的应用空间。
      90年代以后,随着对实时性要求的提高,软件规模不断上升,实时核逐渐发展为实时多任务操作系统(RTOS),并作为一种软件平台逐步成为目前国际嵌入式系统的主流。这时候更多的公司看到了嵌入式系统的广阔发展前景,开始大力发展自己的嵌入式操作系统。除了上面的几家老牌公司以外,还出现了Palm OS,WinCE,嵌入式Linux,Lynx,Nucleux,以及国内的Hopen,Delta Os等嵌入式操作系统。随着嵌入式技术的发展前景日益广阔,相信会有更多的嵌入式操作系统软件出现。
          在中国嵌入式系统领域,比较认同的嵌入式系统概念是:嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。它一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等四个部分组成,用于实现对其他设备的控制、监视或管理等功能。
      2.嵌入式系统的定义
      根据IEEE(国际电机工程师协会)的定义,嵌入式系统是“控制、监视或者辅助装置、机器和设备运行的装置”(原文为devices used to control, monitor, or assist the operation of equipment, machinery or plants)。这主要是从应用上加以定义的,从中可以看出嵌入式系统是软件和硬件的综合体,还可以涵盖机械等附属装置。
      不过上述定义并不能充分体现出嵌入式系统的精髓,目前国内一个普遍被认同的定义是:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
      这个定义上,可从几方面来理解嵌入式系统:
      ◆嵌入式系统是面向用户、面向产品、面向应用的,它必须与具体应用相结合才会具有生命力、才更具有优势。因此可以这样理解上述三个面向的含义,即嵌入式系统是与应用紧密结合的,它具有很强的专用性,必须结合实际系统需求进行合理的裁减利用。
      ◆嵌入式系统是将先进的计算机技术、半导体技术和电子技术和各个行业的具体应用相结合后的产物,这一点就决定了它必然是一个技术密集、资金密集、高度分散、不断创新的知识集成系统。所以,介入嵌入式系统行业,必须有一个正确的定位。例如Palm之所以在PDA领域占有70%以上的市场,就是因为其立足于个人电子消费品,着重发展图形界面和多任务管理;而风河的Vxworks之所以在火星车上得以应用,则是因为其高实时性和高可靠性。
      ◆嵌入式系统必须根据应用需求对软硬件进行裁剪,满足应用系统的功能、可靠性、成本、体积等要求。所以,如果能建立相对通用的软硬件基础,然后在其上开发出适应各种需要的系统,是一个比较好的发展模式。目前的嵌入式系统的核心往往是一个只有几K到几十K微内核,需要根据实际的使用进行功能扩展或者裁减,但是由于微内核的存在,使得这种扩展能够非常顺利的进行。
      实际上,嵌入式系统本身是一个外延极广的名词,凡是与产品结合在一起的具有嵌入式特点的控制系统都可以叫嵌入式系统,而且有时很难以给它下一个准确的定义。现在人们讲嵌入式系统时,某种程度上指近些年比较热的具有操作系统的嵌入式系统,本文在进行分析和展望时,也沿用这一观点。
      一般而言,嵌入式系统的构架可以分成四个部分:处理器、存储器、输入输出(I/O)和软件(由于多数嵌入式设备的应用软件和操作系统都是紧密结合的,在这里我们对其不加区分,这也是嵌入式系统和Windows系统的最大区别)。
      3. 嵌入式系统中的一些重要概念
      嵌入式系统中有许多非常重要的概念:
      ◆嵌入式处理器:
      嵌入式系统的核心,是控制、辅助系统运行的硬件单元。范围极其广阔,从最初的4位处理器,目前仍在大规模应用的8位单片机,到最新的受到广泛青睐的32位,64位嵌入式CPU。
      ◆实时操作系统(Real Time Operating System):
      嵌入式系统目前最主要的组成部分。根据操作系统的工作特性,实时是指物理进程的真实时间。实时操作系统具有实时性,能从硬件方面支持实时控制系统工作的操作系统。其中实时性是第一要求,需要调度一切可利用的资源完成实时控制任务,其次才着眼于提高计算机系统的使用效率,重要特点是要满足对时间的限制和要求。
      ◆分时操作系统:
      对于分时操作系统,软件的执行在时间上的要求,并不严格,时间上的错误,一般不会造成灾难性的后果。目前分时系统的强项在于多任务的管理,而实时操作系统的重要特点是具有系统的可确定性,即系统能对运行情况的最好和最坏等的情况能做出精确的估计。
      ◆多任务操作系统:
      系统支持多任务管理和任务间的同步和通信,传统的单片机系统和DOS系统等对多任务支持的功能很弱,而目前的Windows是典型的多任务操作系统。在嵌入式应用领域中,多任务是一个普遍的要求。
      ◆实时操作系统中的重要概念:
      系统响应时间(System response time):系统发出处理要求到系统给出应答信号的时间。
      任务换道时间(Context-switching time):任务之间切换而使用的时间。
      中断延迟(Interrupt latency):计算机接收到中断信号到操作系统作出响应,并完成换道转入中断服务程序的时间。
      ◆实时操作系统的工作状态:
      实时系统中的任务有四种状态:运行(Executing),就绪(Ready),挂起(Suspended),冬眠(Dormant)。
      运行:获得CPU控制权。
      就绪:进入任务等待队列,通过调度转为运行状态。
      挂起:任务发生阻塞,移出任务等待队列,等待系统实时事件的发生而唤醒,从而转为就绪或运行。
      冬眠:任务完成或错误等原因被清除的任务,也可以认为是系统中不存在的任务。
      任何时刻系统中只能有一个任务在运行状态,各任务按级别通过时间片分别获得对CPU的访问权。
      1.1.2 嵌入式系统的特点
      这些年来掀起了嵌入式系统应用热潮的原因只要有几个方面:一是芯片技术的发展,使得单个芯片具有更强的处理能力,而且使集成多种接口已经成为可能,众多芯片生产厂商已经将注意力集中在这方面。另一方面的原因就是应用的需要,由于对产品可靠性、成本、更新换代要求的提高,使得嵌入式系统逐渐从纯硬件实现和使用通用计算机实现的应用中脱颖而出,成为近年来令人关注的焦点。
      从上面的定义,我们可以看出嵌入式系统的几个重要特征:
      1.系统内核小。由于嵌入式系统一般是应用于小型电子装置的,系统资源相对有限,所以内核较之传统的操作系统要小得多。比如Enea公司的OSE分布式系统,内核只有5K,而Windows的内核?简直没有可比性。
      2.专用性强。嵌入式系统的个性化很强,其中的软件系统和硬件的结合非常紧密,一般要针对硬件进行系统的移植,即使在同一品牌、同一系列的产品中也需要根据系统硬件的变化和增减不断进行修改。同时针对不同的任务,往往需要对系统进行较大更改,程序的编译下载要和系统相结合,这种修改和通用软件的“升级”是完全两个概念。
      3.系统精简。嵌入式系统一般没有系统软件和应用软件的明显区分,不要求其功能设计及实现上过于复杂,这样一方面利于控制系统成本,同时也利于实现系统安全。
      4.高实时性的系统软件(OS)是嵌入式软件的基本要求。而且软件要求固态存储,以提高速度;软件代码要求高质量和高可靠性。
      5.嵌入式软件开发要想走向标准化,就必须使用多任务的操作系统。嵌入式系统的应用程序可以没有操作系统直接在芯片上运行;但是为了合理地调度多任务、利用系统资源、系统函数以及和专家库函数接口,用户必须自行选配RTOS(Real-Time Operating System)开发平台,这样才能保证程序执行的实时性、可靠性,并减少开发时间,保障软件质量。
      6.嵌入式系统开发需要开发工具和环境。由于其本身不具备自举开发能力,即使设计完成以后用户通常也是不能对其中的程序功能进行修改的,必须有一套开发工具和环境才能进行开发,这些工具和环境一般是基于通用计算机上的软硬件设备以及各种逻辑分析仪、混合信号示波器等。开发时往往有主机和目标机的概念,主机用于程序的开发,目标机作为最后的执行机,开发时需要交替结合进行。
      1.1.3 嵌入式系统的分类
      由于嵌入式系统由硬件和软件两大部分组成,所以其分类也可以从硬件和软件进行划分。
      从硬件方面来讲,各式各样的嵌入式处理器是嵌入式系统硬件中的最核心的部分,而目前世界上具有嵌入式功能特点的处理器已经超过1000种,流行体系结构包括MCU,MPU等30多个系列。鉴于嵌入式系统广阔的发展前景,很多半导体制造商都大规模生产嵌入式处理器,并且公司自主设计处理器也已经成为了未来嵌入式领域的一大趋势,其中从单片机、DSP到FPGA有着各式各样的品种,速度越来越快,性能越来越强,价格也越来越低。目前嵌入式处理器的寻址空间可以从64kB到16MB,处理速度最快可以达到2000 MIPS,封装从8个引脚到144个引脚不等。
           嵌入式系统的核心是嵌入式微处理器。嵌入式微处理器一般就具备以下4个特点:

    1)对实时多任务有很强的支持能力,能完成多任务并且有较短的中断响应时间,从而使内部的代码和实时内核心的执行时间减少到最低限度。
    2)具有功能很强的存储区保护功能。这是由于嵌入式系统的软件结构已模块化,而为了避免在软件模块之间出现错误的交叉作用,需要设计强大的存储区保护功能,同时也有利于软件诊断。
    3)可扩展的处理器结构,以能最迅速地开展出满足应用的最高性能的嵌入式微处理器。
    4)嵌入式微处理器必须功耗很低,尤其是用于便携式的无线及移动的计算和通信设备中靠电池供电的嵌入式系统更是如此,如需要功耗只有mW甚至μW级。
           根据其现状,嵌入式处理器可以分成下面几类:
      ◆嵌入式微处理器(Micro Processor Unit,MPU)
      嵌入式微处理器是由通用计算机中的CPU演变而来的。它的特征是具有32位以上的处理器,具有较高的性能,当然其价格也相应较高。但与计算机处理器不同的是,在实际嵌入式应用中,只保留和嵌入式应用紧密相关的功能硬件,去除其他的冗余功能部分,这样就以最低的功耗和资源实现嵌入式应用的特殊要求。和工业控制计算机相比,嵌入式微处理器具有体积小、重量轻、成本低、可靠性高的优点。目前主要的嵌入式处理器类型有Am186/88、386EX、SC-400、Power PC、68000、MIPS、ARM/ StrongARM系列等。
      其中Arm/StrongArm是专为手持设备开发的嵌入式微处理器,属于中档的价位。
      ◆嵌入式微控制器(Microcontroller Unit, MCU)
      嵌入式微控制器的典型代表是单片机,从70年代末单片机出现到今天,虽然已经经过了20多年的历史,但这种8位的电子器件目前在嵌入式设备中仍然有着极其广泛的应用。单片机芯片内部集成ROM/EPROM、RAM、总线、总线逻辑、定时/计数器、看门狗、I/O、串行口、脉宽调制输出、A/D、D/A、Flash RAM、EEPROM等各种必要功能和外设。和嵌入式微处理器相比,微控制器的最大特点是单片化,体积大大减小,从而使功耗和成本下降、可靠性提高。微控制器是目前嵌入式系统工业的主流。微控制器的片上外设资源一般比较丰富,适合于控制,因此称微控制器。
      由于MCU低廉的价格,优良的功能,所以拥有的品种和数量最多,比较有代表性的包括8051、MCS-251、MCS-96/196/296、P51XA、C166/167、68K系列以及 MCU 8XC930/931、C540、C541,并且有支持I2C、CAN-Bus、LCD及众多专用MCU和兼容系列。目前MCU占嵌入式系统约70%的市场份额。近来Atmel出产的Avr单片机由于其集成了FPGA等器件,所以具有很高的性价比,势必将推动单片机获得更高的发展。
      ◆嵌入式DSP处理器(Embedded Digital Signal Processor, EDSP)
      DSP处理器是专门用于信号处理方面的处理器,其在系统结构和指令算法方面进行了特殊设计,具有很高的编译效率和指令的执行速度。在数字滤波、FFT、谱分析等各种仪器上DSP获得了大规模的应用。
      DSP的理论算法在70年代就已经出现,但是由于专门的DSP处理器还未出现,所以这种理论算法只能通过MPU等由分立元件实现。MPU较低的处理速度无法满足DSP的算法要求,其应用领域仅仅局限于一些尖端的高科技领域。随着大规模集成电路技术发展,1982年世界上诞生了首枚DSP芯片。其运算速度比MPU快了几十倍,在语音合成和编码解码器中得到了广泛应用。至80年代中期,随着CMOS技术的进步与发展,第二代基于CMOS工艺的DSP芯片应运而生,其存储容量和运算速度都得到成倍提高,成为语音处理、图像硬件处理技术的基础。到80年代后期,DSP的运算速度进一步提高,应用领域也从上述范围扩大到了通信和计算机方面。90年代后,DSP发展到了第五代产品,集成度更高,使用范围也更加广阔。
      目前最为广泛应用的是TI的TMS320C2000/C5000系列,另外如Intel的MCS-296和Siemens的TriCore也有各自的应用范围。
      ◆嵌入式片上系统(System On Chip)
      SoC追求产品系统最大包容的集成器件,是目前嵌入式应用领域的热门话题之一。SOC最大的特点是成功实现了软硬件无缝结合,直接在处理器片内嵌入操作系统的代码模块。而且SOC具有极高的综合性,在一个硅片内部运用VHDL等硬件描述语言,实现一个复杂的系统。用户不需要再像传统的系统设计一样,绘制庞大复杂的电路板,一点点的连接焊制,只需要使用精确的语言,综合时序设计直接在器件库中调用各种通用处理器的标准,然后通过仿真之后就可以直接交付芯片厂商进行生产。由于绝大部分系统构件都是在系统内部,整个系统就特别简洁,不仅减小了系统的体积和功耗,而且提高了系统的可靠性,提高了设计生产效率。
      由于SOC往往是专用的,所以大部分都不为用户所知,比较典型的SOC产品是Philips的Smart XA。少数通用系列如Siemens的TriCore,Motorola的M-Core,某些ARM系列器件,Echelon和Motorola联合研制的Neuron芯片等。
      预计不久的将来,一些大的芯片公司将通过推出成熟的、能占领多数市场的SOC芯片,一举击退竞争者。SOC芯片也将在声音、图像、影视、网络及系统逻辑等应用领域中发挥重要作用。
      从软件方面划分,主要可以依据操作系统的类型。目前嵌入式系统的软件主要有两大类:实时系统和分时系统。其中实时系统又分为两类:硬实时系统和软实时系统。
      实时嵌入系统是为执行特定功能而设计的,可以严格的按时序执行功能。其最大的特征就是程序的执行具有确定性。在实时系统中,如果系统在指定的时间内未能实现某个确定的任务,会导致系统的全面失败,则系统被称为硬实时系统。而在软实时系统中,虽然响应时间同样重要,但是超时却不会导致致命错误。一个硬实时系统往往在硬件上需要添加专门用于时间和优先级管理的控制芯片,而软实时系统则主要在软件方面通过编程实现时限的管理。比如Windows CE就是一个多任务分时系统,而Ucos-II则是典型的实时操作系统。
      当然,除了上述分类之外,还有许多其他分类方法,比如从应用方面分为工业应用和消费电子等,在这里就不一一累述了。
      1.2嵌入式系统的应用领域
      嵌入式系统技术具有非常广阔的应用前景,其应用领域可以包括:
      1.工业控制:
      基于嵌入式芯片的工业自动化设备将获得长足的发展,目前已经有大量的8、16、32 位嵌入式微控制器在应用中,网络化是提高生产效率和产品质量、减少人力资源主要途径,如工业过程控制、数字机床、电力系统、电网安全、电网设备监测、石油化工系统。就传统的工业控制产品而言,低端型采用的往往是8位单片机。但是随着技术的发展,32位、64位的处理器逐渐成为工业控制设备的核心,在未来几年内必将获得长足的发展。
      2.交通管理:
      在车辆导航、流量控制、信息监测与汽车服务方面,嵌入式系统技术已经获得了广泛的应用,内嵌GPS模块,GSM模块的移动定位终端已经在各种运输行业获得了成功的使用。目前GPS设备已经从尖端产品进入了普通百姓的家庭,只需要几千元,就可以随时随地找到你的位置。
      3.信息家电:
      这将称为嵌入式系统最大的应用领域,冰箱、空调等的网络化、智能化将引领人们的生活步入一个崭新的空间。即使你不在家里,也可以通过电话线、网络进行远程控制。在这些设备中,嵌入式系统将大有用武之地。
      4.家庭智能管理系统:
      水、电、煤气表的远程自动抄表,安全防火、防盗系统,其中嵌有的专用控制芯片将代替传统的人工检查,并实现更高,更准确和更安全的性能。目前在服务领域,如远程点菜器等已经体现了嵌入式系统的优势。
      5.POS网络及电子商务:
      公共交通无接触智能卡(Contactless Smartcard, CSC)发行系统,公共电话卡发行系统,自动售货机,各种智能ATM终端将全面走入人们的生活,到时手持一卡就可以行遍天下。
      6.环境工程与自然:
      水文资料实时监测,防洪体系及水土质量监测、堤坝安全,地震监测网,实时气象信息网,水源和空气污染监测。在很多环境恶劣,地况复杂的地区,嵌入式系统将实现无人监测。
      7.机器人:
      嵌入式芯片的发展将使机器人在微型化,高智能方面优势更加明显,同时会大幅度降低机器人的价格,使其在工业领域和服务领域获得更广泛的应用。
      这些应用中,可以着重于在控制方面的应用。就远程家电控制而言,除了开发出支持TCP/IP的嵌入式系统之外,家电产品控制协议也需要制订和统一,这需要家电生产厂家来做。同样的道理,所有基于网络的远程控制器件都需要与嵌入式系统之间实现接口,然后再由嵌入式系统来控制并通过网络实现控制。所以,开发和探讨嵌入式系统有着十分重要的意义。
      1.3 嵌入式系统在机电产品方面的应用
      相对于其他的领域,机电产品可以说是嵌入式系统应用最典型最广泛的领域之一。从最初的单片机到现在的工控机、SOC在各种机电产品中均有着巨大的市场。
      工业设备是机电产品中最大的一类,在目前的工业控制设备中,工控机的使用非常广泛,这些工控机一般采用的是工业级的处理器和各种设备,其中以X86的MPU最多。工控的要求往往较高,需要各种各样的设备接口,除了进行实时控制,还须将设备状态,传感器的信息等在显示屏上实时显示。这些要求8位的单片机是无法满足的,以前多数使用16位的处理器,随着处理器快速的发展,目前32位、64位的处理器逐渐替代了16位处理器,进一步提升了系统性能。采用PC104总线的系统,体积小,稳定可靠,受到了很多用户的青睐。不过这些工控机采用的往往是DOS或者Windows系统,虽然具有嵌入式的特点,却不能称作纯粹的嵌入式系统。另外在工业控制器和设备控制器方面,则是各种嵌入式处理器的天下。这些控制器往往采用16位以上的处理器,各种MCU,Arm、Mips、68K系列的处理器在控制器中占据核心地位。这些处理器上提供了丰富的接口总线资源,可以通过它们实现数据采集,数据处理,通讯以及显示(显示一般是连接LED或者LCD)。最近飞利浦和ARM共同推出32位RISC嵌入式控制器,适用于工业控制,采用最先进的0.18微米CMOS嵌入式闪存处理技术,操作电压可以低至1.2伏,它还能降低25%到30%的制造成本,在工业领域中对最终用户而言是一套极具成本效益的解决方案。美国TERN工业控制器基于Am188/186ES、i386EX、NEC V25、Am586(Elan SC520),采用了SUPERTASK实时多任务内核,可应用于便携设备、无线控制设备、数据采集设备、工业控制与工业自动化设备以及其它需要控制处理的设备。
      家电行业是嵌入式应用的另一大行业,我们传统的电视,电冰箱当然其中也嵌有处理器,但是这些处理器只是在控制方面应用。而现在只有按钮、开关的电器显然已经不能满足人们的日常需求,具有用户界面,能远程控制,智能管理的电器是未来的发展趋势。据IDG发布的统计数据表明,未来信息家电将会成长五至十倍。中国的传统家电厂商向信息家电过渡时,首先面临的挑战是核心操作系统软件开发工作。硬件方面,进行智能信息控制并不是很高的要求,目前绝大多数嵌入式处理器都可以满足硬件要求,真正的难点是如何使软件操作系统容量小、稳定性高且易于开发。Linux核心可以起到很好的桥梁作用,作为一个跨平台的操作系统,它可以支持二三十种CPU ,而目前已有众多家电业的芯片都开始做Linux的平台移植工作。1999年就登录中国的微软“维纳斯”计划给了国人一个数字家庭的概念,引导各大家电厂商纷纷投入到这场革命中来,虽然最终未能获得成功,却使信息家电深入人心。如今各大厂商仍然在努力推出适用于新一代家电应用的芯片,英特尔公司已专为信息家电业研发了名为StrongARM的ARM CPU系列,这一系列CPU本身不象X86CPU需要整合不同的芯片组,它在一颗芯片中可以包括你所需要的各项功能,即硬件系统实现了SOC的概念。美商网虎公司已将全球最小的嵌入式操作系统——QUARK成功移植到StrongARM系列芯片上,这是第一次把Linux、图形界面和一些程序进行完整移植(QUARK的内核只有143K),它将为信息家电提供功能强大的核心操作系统。相信在不久的将来,数字智能家庭必将来到我们身边。
      机器人技术的发展从来就是与嵌入式系统的发展紧密联系在一起的。最早的机器人技术是50年代MIT提出的数控技术,当时使用的还远未达到芯片水平,只是简单的与非门逻辑电路。之后由于处理器和智能控制理论的发展缓慢从50年代到70年代初期,机器人技术一直未能获得充分的发展。70年代中期之后,由于智能理论的发展和MCU出现,机器人逐渐成为研究热点,并且获得了长足的发展。近来由于嵌入式处理器的高度发展,机器人从硬件到软件也呈现了新的发展趋势。例如火星车就是一个典型例子,这个价值10亿美金的技术高密集移动机器人,采用的是美国风河公司的Vxworks嵌入式操作系统,可以在不与地球联系的情况下自主工作。1997年美国发射的“索杰纳”火星车带有机械手,可以采集火星上的各种地况,并且通过摄像头把火星上的图像发回地面指挥中心。这台火星车在火星上自主工作了3个月,充分体现了Vxworks系统的高可靠性。以索尼的机器狗为代表的智能机器宠物,可以仅仅使用8位的AVR,51单片机或者16位的DSP来控制舵机,进行图像处理,就能制造出那些人见人爱的玩具,让我们不能不惊叹嵌入式处理器强大的功能。近来32位处理器,Windows CE等32位嵌入式操作系统的盛行,使得操控一个机器人只需要在手持PDA上获取远程机器人的信息,并且通过无线通讯控制机器人的运行,与传统的采用工控机相比,要轻巧便捷的多。随着嵌入式控制器越来越微型化、功能化,微型机器人、特种机器人等也将获得更大的发展机遇。
      1.4 嵌入式系统的发展现状和发展趋势
      1.4.1 嵌入式系统的发展现状
      随着信息化,智能化,网络化的发展,嵌入式系统技术也将获得广阔的发展空间。美国著名未来学家尼葛洛庞帝99年1月访华时预言,4~5年后嵌入式智能(电脑) 工具将是PC和因特网之后最伟大的发明。我国著名嵌入式系统专家沈绪榜院士98年11月在武汉全国第11次微机学术交流会上发表的《计算机的发展与技术》一文中,对未来10年以嵌入式芯片为基础的计算机工业进行了科学的阐述和展望。1999年世界电子产品产值已超过12000亿美元,2000年达到13000亿美元,预计2005年,销售额将达18000亿美元。
      进入20世纪90年代,嵌入式技术全面展开,目前已成为通信和消费类产品的共同发展方向。在通信领域,数字技术正在全面取代模拟技术。在广播电视领域,美国已开始由模拟电视向数字电视转变,欧洲的DVB(数字电视广播)技术已在全球大多数国家推广。数字音频广播(DAB)也已进入商品化试播阶段。而软件、集成电路和新型元器件在产业发展中的作用日益重要。所有上述产品中,都离不开嵌入式系统技术。象前途无可计量的维纳斯计划生产机顶盒,核心技术就是采用32位以上芯片级的嵌入式技术。在个人领域中,嵌入式产品将主要是个人商用,作为个人移动的数据处理和通讯软件。由于嵌入式设备具有自然的人机交互界面,GUI屏幕为中心的多媒体界面给人很大的亲和力。手写文字输入、语音拨号上网、收发电子邮件以及彩色图形、图像已取得初步成效。
      目前一些先进的PDA在显示屏幕上已实现汉字写入、短消息语音发布,日用范围也将日益广阔。对于企业专用解决方案,如物流管理、条码扫描、移动信息采集等,这种小型手持嵌入式系统将发挥巨大的作用。自动控制领域,不仅可以用于ATM机,自动售货机,工业控制等专用设备,和移动通讯设备结合、GPS、娱乐相结合,嵌入式系统同样可以发挥巨大的作用。近期长虹推出的ADSL产品,结合网络,控制,信息,这种智能化,网络化将是家电发展的新趋势。
      硬件方面,不仅有各大公司的微处理器芯片,还有用于学习和研发的各种配套开发包。目前低层系统和硬件平台经过若干年的研究,已经相对比较成熟,实现各种功能的芯片应有尽有。而且巨大的市场需求给我们提供了学习研发的资金和技术力量。
      从软件方面讲,也有相当部分的成熟软件系统。国外商品化的嵌入式实时操作系统,已进入我国市场的有WindRiver、Microsoft、QNX和Nuclear等产品。我国自主开发的嵌入式系统软件产品如科银(CoreTek)公司的嵌入式软件开发平台DeltaSystem,中科院推出的Hopen嵌入式操作系统(虽然还不够完善)。同时由于是研究热点,所以我们可以在网上找到各种各样的免费资源,从各大厂商的开发文档,到各种驱动,程序源代码,甚至很多厂商还提供微处理器的样片。这对于我们从事这方面的研发,无疑是个资源宝库。对于软件设计来说,不管是上手还是进一步开发,都相对来说比较容易。这就使得很多生手能够比较快的进入研究状态,利于发挥大家的积极创造性。
      今天嵌入式系统带来的工业年产值已超过了1万亿美元,1997年来自美国嵌入式系统大会(Embedded System Conference)的报告指出,未来5年仅基于嵌入式计算机系统的全数字电视产品,就将在美国产生一个每年1500亿美元的新市场。美国汽车大王福特公司的高级经理也曾宣称,“福特出售的‘计算能力’已超过了IBM”,由此可以想见嵌入式计算机工业的规模和广度。1998年11月在美国加州举行的嵌入式系统大会上,基于RTOS的Embedded Internet成为一个技术新热点。在国内,“维纳斯计划”和“女锅计划”一度闹得沸沸扬扬,机顶盒、信息加电这两年更成了IT热点,而实际上这些都是嵌入式系统在特定环境下的一个特定应用。据调查,目前国际上已有两百多种嵌入式操作系统,而各种各样的开发工具、应用于嵌入式开发的仪器设备更是不可胜数。在国内,虽然嵌入式应用、开发很广,但该领域却几乎还是空白,只有三两家公司和极少数人员在从事这方面工作。由此可见,嵌入式系统技术发展的空间真是无比广大。
      1.4.2未来嵌入式系统的发展趋势
      信息时代,数字时代使得嵌入式产品获得了巨大的发展契机,为嵌入式市场展现了美好的前景,同时也对嵌入式生产厂商提出了新的挑战,从中我们可以看出未来嵌入式系统的几大发展趋势:
      1.嵌入式开发是一项系统工程,因此要求嵌入式系统厂商不仅要提供嵌入式软硬件系统本身,同时还需要提供强大的硬件开发工具和软件包支持。
      目前很多厂商已经充分考虑到这一点,在主推系统的同时,将开发环境也作为重点推广。比如三星在推广Arm7,Arm9芯片的同时还提供开发板和版及支持包(BSP),而WindowCE在主推系统时也提供Embedded VC++作为开发工具,还有Vxworks的Tonado开发环境,DeltaOS的Limda编译环境等等都是这一趋势的典型体现。当然,这也是市场竞争的结果。
      2.网络化、信息化的要求随着因特网技术的成熟、带宽的提高日益提高,使得以往单一功能的设备如电话、手机、冰箱、微波炉等功能不再单一,结构更加复杂。
      这就要求芯片设计厂商在芯片上集成更多的功能,为了满足应用功能的升级,设计师们一方面采用更强大的嵌入式处理器如32位、64位RISC芯片或信号处理器DSP增强处理能力,同时增加功能接口,如USB,扩展总线类型,如CAN BUS,加强对多媒体、图形等的处理,逐步实施片上系统(SOC)的概念。软件方面采用实时多任务编程技术和交叉开发工具技术来控制功能复杂性,简化应用程序设计、保障软件质量和缩短开发周期。如HP
      3.网络互联成为必然趋势。
      未来的嵌入式设备为了适应网络发展的要求,必然要求硬件上提供各种网络通信接口。传统的单片机对于网络支持不足,而新一代的嵌入式处理器已经开始内嵌网络接口,除了支持TCP/IP协议,还有的支持IEEE1394、USB、CAN、Bluetooth或IrDA通信接口中的一种或者几种,同时也需要提供相应的通信组网协议软件和物理层驱动软件。软件方面系统系统内核支持网络模块,甚至可以在设备上嵌入Web浏览器,真正实现随时随地用各种设备上网。
      4.精简系统内核、算法,降低功耗和软硬件成本。
      未来的嵌入式产品是软硬件紧密结合的设备,为了减低功耗和成本,需要设计者尽量精简系统内核,只保留和系统功能紧密相关的软硬件,利用最低的资源实现最适当的功能,这就要求设计者选用最佳的编程模型和不断改进算法,优化编译器性能。因此,既要软件人员有丰富的硬件知识,又需要发展先进嵌入式软件技术,如Java、Web和WAP等。
       5.提供友好的多媒体人机界面
      嵌入式设备能与用户亲密接触,最重要的因素就是它能提供非常友好的用户界面。图像界面,灵活的控制方式,使得人们感觉嵌入式设备就象是一个熟悉的老朋友。这方面的要求使得嵌入式软件设计者要在图形界面,多媒体技术上痛下苦功。手写文字输入、语音拨号上网、收发电子邮件以及彩色图形、图像都会使使用者获得自由的感受。目前一些先进的PDA在显示屏幕上已实现汉字写入、短消息语音发布,但一般的嵌入式设备距离这个要求还有很长的路要走。
      
      参考文献:
      《嵌入式处理器分类与现状》 吕京建 肖海桥
      《DSP发展应用纵横谈》 戴 敏
  • 手机软件测试(性能测试方法)

    2008-04-09 18:46:47

    并发测试主要是测试终端同时进行多项业务时表现出的处理能力。例如同时进行CS域语音业务和PS域下载业务,或者在MP3播放的同时进行WWW上网业务,以测试协议栈、操作系统和处理器对并发业务的支持能力。

        4. 负载测试。

        负载测试主要是验证系统的负载工作能力。系统配置不变的条件下,在一定时间内,终端在高负载情况下的性能行为表现。例如同时进行多个ftp下载,使下行传输率接近极限值,观察终端是否可以正常工作。

        二、手机性能测试的方法

        手机性能测试的方法按照自动化程度不同可分为手工测试和自动测试。

        手工测试主要是通过测试人员手动操作,并借助某些监测仪器和工具,来验证手机性能。但由于手机功能众多,并且性能测试工作量大,如果单个测试工程师靠手动按键来执行所有测试用例,花费的时间少则几小时,多则需要几天的时间,这样耗费大量测试时间的同时也容易让测试工程师产生疲倦甚至是厌倦心理,很容易造成测试的遗漏。手机测试中常碰到很多重复性高的工作,如发送数条 SMS 或者 MMS 以验证其收发成功率以及稳定性、连续进行多次呼叫、多次对文件系统进行添加删除操作、多任务多进程情况下的冲突测试以及极限测试等等,都是重复性高的工作,手动执行的话费时费力,如果能有一套自动执行的机制,将能大大提高测试的效率。

        由此产生了对手机自动化测试工具的需求。手机这种板机的MMI功能测试不同于基于PC上的MMI测试,后者借助PC平台,目前市场上已有非常多功能强大且通用的自动测试工具支持其测试,如比较典型的有Winrunner, Robot, Loadrunner等等,但这些工具通常不能兼容到象手机这种嵌入式系统中来。这就要求测试人员能够基于当前平台进行二次开发,来满足自动化测试的需求。

        手机的自动化性能测试一般分为以下几个步骤进行:

        1. 系统分析

        将系统的性能指标转化为性能测试的具体目标。通常在这一步骤里,要分析被测系统结构,结合性能指标,制定具体的性能测试实施方案。这要求测试人员对被测系统结构和实施业务的全面掌握。

        2. 建立虚拟用户脚本

        将业务流程转化为测试脚本,通常指的是虚拟用户脚本或虚拟用户。虚拟用户通过驱动一个真正的客户程序来模拟真实用户。在这一步骤里,要将各类被测业务流程从头至尾进行确认和记录,弄清这些过程可以帮助分析到每步操作的细节和时间,并能精确地转化为脚本。此过程类似制造一个能够模仿人的行为和动作的机器人过程。这个步骤非常重要,在这里将现实世界中的单个用户行为比较精确地转化为计算机程序语言。如果对现实世界的行为模仿失真,不能反映真实世界,性能测试的有效性和必要性也就失去了意义。

        3. 根据用户性能指标创建测试场景

        根据真实业务场景,对生成的测试脚本进行复制和控制,转化为满足性能测试指标的测试用例集。在这个步骤里,对脚本的执行制定规则和约束关系。具体涉及到对业务类型,并发时序等参数的设置。这好比是指挥脚本运行的司令部。这个步骤十分关键,往往需要结合用户性能指标进行细致地分析。

        4. 运行测试场景,同步监测应用性能

        在性能测试运行中,实时监测能让测试人员在测试过程中的任何时刻都可以了解应用程序的性能优劣。系统的每一部件都需要监测:协议栈,MMI应用程序,内存占用情况,驱动程序运行状态等。实时监测可以在测试执行中及早发现性能瓶颈。

        5. 性能测试的结果分析和性能评价

        结合测试结果数据,分析出系统性能行为表现的规律,并准确定位系统的性能瓶颈所在。在这个步骤里,可以利用数学手段对大批量数据进行计算和统计,使结果更加具有客观性。在性能测试中,需要注意的是,能够执行的性能测试方案并不一定是成功的,成败的关键在于其是否精确地对真实世界进行了模拟。

        在整个性能测试过程中,自动化测试工具的选择只能影响性能测试执行的复杂程度,简便一些或繁杂一些;但人的分析和思考却会直接导致性能测试的成败。所以这里着重于对性能测试思路的整理。测试工具的介绍可以参看有关自动化测试工具的资料。

  • Linux常用命令

    2008-02-21 10:53:36

    Linux 系统常用命令格式:
        command  [option]  [argument1]  [argument2]  ...
    

    其中option以“-”开始,多个option可用一个“-”连起来,如“ls -l -a” 与“ls -la”的效果是一样的。根据命令的不同,参数分为可选的或必须的;所有的命令从标准输入接受输入,输出结果显示在标准输出,而错误信息则显示在标准错误输出设备。可使用重定向功能对这些设备进行重定向。

    命令在正常执行结果后返回一个0值,如果命令出错可未完全完成,则返回一个非零值(在shell中可用变量$?查看)。 在shell scrīpt中可用此返回值作为控制逻辑的一部分。

    帮助命令:
    man  获取相关命令的帮助信息
         例如:man dir 可以获取关于dir的使用信息。
    
    info  获取相关命令的详细使用方法
          例如:info info 可以获取如何使用info的详细信息。
    
    文件操作:
    cat  显示文件内容和合并多个文件 
    clear  清屏
    chattr  改变文件属性
    chgrp  改变文件组权
    chmod  改变文件或目录的权限
    chown  改变文件的属权
    comm  比较两个已排过序的文件
    cp  将文件拷贝至另一文件
    dd  从指定文件读取数据写到指定文件
    df  报告磁盘空间使用情况
    diff  比较两个文本文件,列出行不同之处
    du  统计目录/文件所占磁盘空间的大小
    file  辨识文件类型
    emacs  功能强大的编辑环境        
    find  搜索文件并执行指定操作(find2)
    grep  按给定模式搜索文件内容
    head  显示指定文件的前若干行
    less  按页显示文件
    ln  创建文件链接
    locate  查找符合条件的文件
    more  在终端屏幕按帧显示文本文件
    mv  文件或目录的移动或更名
    rm/rmdir  删除文件/目录
    sed  利用scrīpt来处理文本文件
    sort  对指定文件按行进行排序
    tail  显示指定文件的最后部分
    touch  创建文件
    tr  转换字符
    vi  全屏编辑器
    wc  显示指定文件中的行数,词数或字符数
    which  在环境变量 $PATH 设置的目录里查找符合条件的文件
    
    压缩与备份:
    bzip2/bunzip2  .bz2文件的压缩/解压缩程序
    cpio  备份文件
    dump  备份文件系统
    gzip/gunzip  .gz文件的压缩/解压缩程序
    gzexe  压缩可执行文件
    restore 还原由倾倒(Dump)操作所备份下来的文件或整个文件系统(一个分区)
    tar  将若干文件存档或读取存档文件
    unarj  解压缩.arj文件
    zip/unzip  压缩/解压缩 zip文件
    zipinfo  列出zip压缩文件的详细信息
    
    磁盘操作:
    cd/pwd  切换目录/显示当前工作目录
    df  显示磁盘的相关信息
    du  显示目录或文件的大小
    e2fsck  检查ext2/ext3文件系统的正确性
    fdisk  对硬盘进行分区	
    fsck  检查文件系统并尝试修复错误
    losetup  设置循环设备
    ls  列出目录内容
    mkdir  创建目录
    mformat  对MS-DOS文件系统的磁盘进行格式化
    mkbootdisk  建立目前系统的启动盘
    mke2fs  建立ext2文件系统
    mkisofs  制作iso光盘映像文件
    mount/umount 加载文件系统/卸载文件系统
    quota  显示磁盘已使用的空间与限制
    sync  将内存缓冲区内的数据写入磁盘
    tree  以树状图列出目录的内容
    
    系统操作:
    alias  设置指令的别名
    chkconfig  检查,设置系统的各种服务
    clock  调整 RTC 时间
    date  显示或设置系统时间与日期
    dmesg  显示开机信息
    eval  重新运算求出参数的内容
    exit  退出目前的shell
    export  设置或显示环境变量
    finger  查找并显示用户信息
    free  显示内存状态
    hostid  显示主机标识
    hostname  显示主机名
    id  显示用户标识
    kill  删除执行中的程序或工作
    last  列出目前与过去登入系统的用户相关信息
    logout  退出系统
    lsmod  显示已载入系统的模块
    modprobe  自动处理可载入模块
    passwd  设置用户密码
    ps  process status 报告程序状况
    reboot  重启计算机
    rhwo  查看系统用户
    rlogin  远程登入
    rpm  管理Linux各项套件的程序
    shutdown  关机 
    su switch user 变更用户身份
    top  显示,管理执行中的程序
    uname  显示系统信息
    useradd/userdel	 添加用户 / 删除用户
    userinfo  图形界面的修改工具
    usermod  修改用户属性,包括用户的shell类型,用户组等,甚至还能改登录名
    w  显示目前注册的用户及用户正运行的命令
    whereis	 确定一个命令的二进制执行码,源码及帮助所在的位置
    who  列出正在使用系统的用户
    whois  查找并显示用户信息
    
    网络通信:
    arp  网地址的显示及控制
    ftp  文件传输
    lftp  文件传输
    mail  发送/接收电子邮件
    mesg  允许或拒绝其他用户向自己所用的终端发送信息
    mutt  E-mail管理程序
    ncftp  文件传输
    netstat  显示网络连接、路由表和网络接口信息
    pine  收发电子邮件,浏览新闻组
    ping  向网络上的主机发送 icmp echo request 包
    ssh  安全模式下的远程登录
    telnet  远程登录
    talk  与另一用户对话
    traceroute  显示到达某一主机所经由的路径及所使用的时间
    wget 从网络上自动下载文件
    write  向其他用户的终端写信息
    
  • 软件测试基础知识

    2008-02-20 11:27:14

    软件开发过程及软件质量保证
    1.软件开发过程的几个主要阶段:
    1)定义。明确开发的目标,软件的
    需求
    2)计划。制订软件开发所涉及到的计划。
    3)
    设计。设计、编码、编写文档等,完成要求的软件特性。
    4)稳定化。主要是
    测试和缺陷修复,确保软件的质量。
    5)安装。安装、提交完成的软件,为客户提供运行环境。
    2.几种常用的软件生命周期模型:
    1)瀑布模型。
    2)原型模型。
    3)增量模型。
    4)螺旋模型。
    软件测试人员的角度来看软件开发过程,需要注意的是:测试贯穿在整个开发过程中,而不是在某个阶段集中地做一下测试而其它阶段不用理会测试工作

    一个软件之所以被认为为质量优秀,是它内在具备了这样一些特性:
    满足用户的需求;
    合理进度、成本、
    功能关系;
    具备扩展性和灵活性,能够适应一定程度的需求变化;
    能够有效地
    处理例外的情况;
    保持成本和
    性能的平衡。

    软件质量保证(Software Quality Assurance-----SQA)是为了确保软件开发过程和结果符合预期的要求而建立的系列规程,以及依照规程和计划采取的一系列活动及其结果评审。

    软件质量保证的活动主机包括:
    技术方法的就用;
    正式技术评审的
    实施
    软件测试;
    标准的执行;
    修改的控制;
    度量;
    记录和记录保存。

    软件错误的定义:软件错误是软件产品中存在的导致期望的运行结果和实际结果间出现差异的一系列
    问题,这些问题包括故障、失效、缺陷。


    软件测试:
    软件测试就是为了发现软件中存在的错误而
    分析或执行程序的过程。具体地说,软件测试是分析程序或根据软件开发各阶段的规格说明和各程序的内部结构而精心设计出一批测试用例,并利用测试用例来运行程序,以发现程序错误的过程。

    软件测试有两个基本的功能:验证(Verification)和确认(Validation)。
    验证指保证软件正确地
    实现了特写功能的一系列活动。
    确认指保证最终的产品满足
    系统需求。
    通俗的说:验证保证产品的正确性;确认保证生产了正确的产品。

    软件测试人员应该至少具备以下两个关键领域方面的知识:
    1)软件测试技术;
    2)被测
    应用程序及其相关应用领域知识。

    理解以下的描述:
    测试能提高软件的质量,但是提高质量不能依赖测试;
    测试只能证明错误存在,不能证明错误不存在;
    测试的主要困难是不知道该
    如何进行有效地测试,也不知道什么时候能够放心的结束测试;
    每个程序员都应当测试自己的程序(份内事),但不能作为程序已通过测试的依据(所以项目需要独立的测试人员);
    80-20原则:80%的错误聚集在20%的模块中,经常出错的模块改错后还是会经常出错;
    测试应当循序渐进,不要企图一次性做完。"欲速则不达"。

    测试人员的目标和主要工作:
    目标:(1).基本目标是发现软件错误;
    (2).要尽可能早的找出软件错误;
    (3).必需确保找出的软件错误得以关闭。

    主要工作:
    1)规划测试任务
    2)设计测试(包括编写测试用例等等)
    3)建立一个合适的测试环境
    4)
    评估、获取、安装和配置自动测试工具
    5)执行测试
    6)撰写适当的测试文档

    软件测试的分类
    1.从是否需要执行被测试软件的角度分:有静态测试和动态测试。
    2.从测试是否针对软件结构和算法的角度分类分:白盒测试和黑盒测试。
    3.从测试的不同阶段分:
    单元测试、集成测试、系统测试和验收测试四个阶段。
    其中系统测试有:
    功能测试、健壮性测试、性能测试、用户界面测试、安全性测试、压力测试、可靠性测试、安装/反安装测试等等。

    针对某些功能作用的测试:
    回归测试:指错误被修正后或软件功能、环境发生变化后进行的重新测试。
    功能测试:测试软件的功能是否符合功能性需求,通常采用黑盒测试方式。
    负载测试:测试软件系统的最大负载,超出此负载软件有可能会失常。
    压力测试:与负载测试差不多,叫法不同。
    易用性测试:测试软件是否易用,主观性比较强。一般要根据用户的反馈信息来评价。
    安装与反安装测试:测试软件在"全部、部分、升级"等状况下的安装/反安装过程。
    恢复测试:测试系统从故障中恢复的能力。
    安全性测试:测试系统防止非法侵入的能力。
    兼容性测试:测试系统与其它软件、硬件兼容的能力。
    内存泄漏测试:测试软件在运行过程中是否会造成内存泄漏。
    比较测试:通过与同类产品比较,考察该产品的优点、缺点。
    Alpha测试:一种先期的用户测试,此时系统刚刚开发完成。
    Beta测试:一种后期的用户测试,此时系统已经通过内部测试,大部分错误已经改正,即将正式发行。同Alpha测试一样都由用户进行,场地不同,Alpha测试一般是把用户请到开发方的场地来测试,Beta测试是指在一个或多个用户的场所进行测试。

    测试工作的主要步骤:
    1)测试计划:测试人员要首先对需求进行分析,最终定义一个测试集合。
    2)测试设计与开发:根据软件需求、说明书完成测试用例设计并编写必要的测试驱动程序。
    3)执行测试:需要做的工作是,建立测试环境;根据前面编写的测试计划和测试用例运行测试;记录测试结果;报告软件缺陷;跟踪软件缺陷直至其被处理;分析测试结果


    PS 测试工程师职业素质
    1)责任心
    2)学习能力
    3)怀疑精神
    4)沟通能力
    5)专注力
    6)洞察力
    7)团队精神
    8)注重积累
  • 软件测试人员自身素质的培养!

    2008-02-20 11:20:48

        (1) 首先,应对软件测试感兴趣和对自己有自信,如果具备了这两点,那么在开发过程中不管遇到什么样的困难,我相信你一定能克服。 

      (2) 善于怀疑,世界上没有绝对正确的,总有错误的地方,具有叛逆心理,别人认为不可能发生的事,我却认为可能发生。别人认为是对的,我却认为不是对的。

      (3) 打破砂锅问到底的精神,对于只出现过一次的bug,一定找出原因,不解决誓不罢休。

      (4) 保持一个良好的心情,否则可能无法把测试作好。不要把生活中的不愉快的情绪带到工作中来。

      (5) 做测试时要细心,不是所有的bug都能很容易的找出,一定要细心才能找出这些bug。

      (6) 灵活一些,聪明一点,多制造一些容易产生bug的例子。

      (7) 在有条件的情况下,多和客户沟通,他们身上有你所需要的。

      (8) 设身处地为客户着想,从他们的角度去测试系统。

      (9) 不要让程序员,以“这种情况不可能发生”这句话说服你,相反,你应该去说服他,告诉他在客户心里,并不是这样的。

      (10) 考虑问题要全面,结合客户的需求、业务的流程、和系统的构架,等多方面考虑问题。

      (11) 提出问题不要复杂化,这一点和前面的有点矛盾,如果你是一新手,暂时不要管这一点,因为最终将有你的小组成员讨论解决。

      (12) 追求完美,对于新测试员来说,努力的追求完美,这对你很好,尽管有些事无法做到,但你应该去尝试。

      (13) 幽默感,能和开发小组很好的沟通是关键,试着给你的开发小组找一个“BUG杀手”,或对他们说“我简直不敢相信,你写的程序居然到现在没有找到BUG”。

      (14) 到此是不是对测试很有兴趣呢?不过我要告诉你,测试过程中有酸甜苦辣,其中的滋味只有你知道,也许你会感到枯燥,要学会放松自己,去溜冰或做你喜欢做的事,不过,别放弃,因为你的自信告诉过你“你会是很优秀的测试员”不是吗?

  • 【转】一位软件测试工程师6年的工作经验总结

    2008-02-20 10:58:55

    1 分享第一条经验:学历代表过去、能力代表现在、学习力代表未来。其实这是一个来自国外教育领域的一个研究结果。相信工作过几年、十几年的朋友对这个道理有些体会吧。但我相信这一点也很重要:重要的道理明白太晚将抱憾终生!所以放在每一条,让刚刚毕业的朋友们早点看到哈!

    2
    一定要确定自己的发展方向,并为此目的制定可行的计划。不要说什么,我刚毕业,还不知道将来可能做什么?跟着感觉走,先做做看。因为,这样的观点会通过你的潜意识去暗示你的行为无所事事、碌碌无为。一直做技术,将来成为专家级人物?向管理方向走,成为职业经理人?先熟悉行业和领域,将来自立门户?还是先在行业里面混混,过几年转行做点别的?这很重要,它将决定你近几年、十年内做什么事情才是在做正确的事情!


    3
    软件开发团队中,技术不是万能的,但没有技术是万万不能的!在技术型团队中,技术与人品同等重要,当然长相也比较重要哈,尤其在MM比较多的团队中。在软件项目团队中,技术水平是受人重视和尊重的重要砝码。无论你是做管理、系统分析、设计、编码,还是产品管理、测试、文档、实施、维护,多少你都要有技术基础。算我孤陋寡闻,我还真没有亲眼看到过一个外行带领一个软件开发团队成功地完成过软件开发项目,哪怕就一个,也没有看到。倒是曾经看到过一个高学历的牛人”(非技术型)带一堆人做完过一个项目,项目交付的第二天,项目组成员扔下一句再也受不了啦!四分五裂、各奔东西。那个项目的成功度大家可想而知了。


    4
    详细制定自己软件开发专业知识学习计划,并注意及时修正和调整(软件开发技术变化实在太快)。请牢记:如果一个软件开发人员在12年内都没有更新过自己的知识,那么,其实他已经不再属于这个行业了。不要告诉自己没有时间。来自时间管理领域的著名的三八原则告诫我们:另外的那8小时如何使用将决定你的人生成败!本人自毕业以来,平均每天实际学习时间超过2小时。


    5
    书籍是人类进步的阶梯,对软件开发人员尤其如此。书籍是学习知识的最有效途径,不要过多地指望在工作中能遇到世外高人,并不厌其烦地教你。对于花钱买书,我个人经验是:千万别买国内那帮人出的书!我买的那些家伙出的书,!00%全部后悔了,无一本例外。更气愤的是,这些书在二手市场的地摊上都很难卖掉。拥有书籍并不表示拥有知识;拥有知识并不表示拥有技能;拥有技能并不表示拥有文化;拥有文化并不表示拥有智慧。只有将书本变成的自己智慧,才算是真正拥有了它。


    6
    不要仅局限于对某项技术的表面使用上,哪怕你只是偶尔用一、二次。对任何事物不究就里是任何行业的工程师所不应该具备的素质。开发Windows应用程序,看看Windows程序的设计、加载、执行原理,分析一下PE文件格式,试试用SDK开发从头开发一个Windows应用程序;用VC++、DelphiJava.Net开发应用程序,花时间去研究一下MFCVCLJ2EE.Net它们框架设计或者源码;除了会用J2EEJBossSpringHibernate等等优秀的开源产品或者框架,抽空看看大师们是如何抽象、分析、设计和实现那些类似问题的通用解决方案的。试着这样做做,你以后的工作将会少遇到一些让你不明就里、一头雾水的问题,因为,很多东西你知其然且知其所以然


    7
    在一种语言上编程,但别为其束缚了思想。代码大全中说:深入一门语言编程,不要浮于表面。深入一门语言开发还远远不足,任何编程语言的存在都有其自身的理由,所以也没有哪门语言是包治百病灵丹妙药。编程语言对开发人员解决具体问题的思路和方式的影响与束缚的例子俯拾皆是。我的经验是:用面对对象工具开发某些关键模块时,为什么不可以借鉴CC51、汇编的模块化封装方式?用传统的桌面开发工具(目前主要有VC++Delphi)进行系统体统结构设计时,为什么不可以参考来自Java社区的IoCAOP设计思想,甚至借鉴像SpringHibernateJBoss等等优秀的开源框架?在进行类似于实时通信、数据采集等功能的设计、实现时,为什么不可以引用来自实时系统、嵌入式系统的优秀的体系框架与模式?为什么一切都必须以个人、团队在当然开发语言上的传统或者经验来解决问题???他山之石、可以攻玉


    8
    养成总结与反思的习惯,并有意识地提炼日常工作成果,形成自己的个人源码库、解决某类问题的通用系统体系结构、甚至进化为框架。众所周知,对软件开发人员而言,有、无经验的一个显著区别是:无经验者完成任何任务时都从头开始,而有经验者往往通过重组自己的可复用模块、类库来解决问题(其实这个结论不应该被局限在软件开发领域、可以延伸到很多方面)。这并不是说,所有可复用的东西都必须自己实现,别人成熟的通过测试的成果也可以收集、整理、集成到自己的知识库中。但是,最好还是自己实现,这样没有知识产权、版权等问题,关键是自己实现后能真正掌握这个知识点,拥有这个技能。


    9
    理论与实践并重,内外双修。工程师的内涵是:以工程师的眼光观察、分析事物和世界。一个合格的软件工程师,是真正理解了软件产品的本质及软件产品研发的思想精髓的人(个人观点、欢迎探讨)。掌握软件开发语言、应用语言工具解决工作中的具体问题、完成目标任务是软件工程师的主要工作,但从软件工程师这个角度来看,这只是外在的东西,并非重要的、本质的工作。学习、掌握软件产品开发理论知识、软件开发方法论,并在实践中理解、应用软件产品的分析、设计、实现思想来解决具体的软件产品研发问题,才是真正的软件工程师的工作。站在成熟理论与可靠方法论的高度思考、分析、解决问题,并在具体实践中验证和修正这些思想与方式,最终形成自己的理论体系和实用方法论。


    10
    、心态有多开放,视野就有多开阔。不要抱着自己的技术和成果,等到它们都已经过时变成垃圾了,才拿出来丢人现眼。请及时发布自己的研究成果:开发的产品、有创意的设计或代码,公布出来让大家交流或者使用,你的成果才有进化和升华的机会。想想自己2000年间开发的那些Windows系统工具,56年之后的今天,还是那个样子,今天流行的好多Windows系统工具都比自己的晚,但进化得很好,且有那么多用户在使用。并且,不要保守自己的技术和思想,尽可能地与人交流与分享,或者传授给开发团队的成员。与人交换苹果之后,每个人还是只有一个苹果;但交换思想之后,每个人都拥有两种思想,道理大家都懂,但有多少人真正能做到呢?


    11
    、尽量参加开源项目的开发、或者与朋友共同研制一些自己的产品,千万不要因为没有钱赚而不做。网络早已不再只是虚拟世界,网上有很多的开源项目、合作开发项目、外包项目,这都是涉猎工作以外的知识的绝好机会,并且能够结识更广的人缘。不要因为工作是做ERP,就不去学习和了解嵌入式、实时、通信、网络等方面的技术,反过来也是一样。如果当他别人拿着合同找你合作,你却这也不会,那也不熟时,你将后悔莫及。


    12
    、书到用时方恨少,不要将自己的知识面仅仅局限于技术方面。诺贝尔经济学奖得主西蒙教授的研究结果表明:对于一个有一定基础的人来说,他只要真正肯下功夫,在6个月内就可以掌握任何一门学问。教育心理学界为感谢西蒙教授的研究成果,故命名为西蒙学习法。可见,掌握一门陌生的学问远远没有想想的那么高难、深奥。多方吸取、广泛涉猎。极力夯实自己的影响圈、尽量扩大自己的关注圈。财务、经济、税务、管理等等知识,有空花时间看看,韬光养晦、未雨绸缪。


    13
    、本文的总结与反思:


    A
    :不要去做技术上的高手,除非你的目标如此。虽然本文是关于提高软件开发知识的建议,做技术的高手是我一向都不赞同的。你可以提高自己的专业知识,但能胜任工作即止。


    B
    :提高软件知识和技术只是问题的表面,本质是要提高自己认识问题、分析问题、解决问题的思想高度。软件专业知识的很多方法和原理,可以很容易地延伸、应用到生活的其它方面。


    C
    :在能胜任工作的基础上,立即去涉猎其它领域的专业知识,丰富自己的知识体系、提高自己的综合素质,尤其是那些目标不在技术方面的朋友。
  • 【转】测试8000薪水是这样得到的!

    2008-02-20 10:50:01

    这听起来是个很有诱惑力的话题;也的确是个很有诱惑力的话题。
    很多做测试的朋友千万次的问,测试行业能挣到高薪吗?从事测试工
    作有发展吗?我能够忍受枯燥无聊的测试工作吗?

    这里我不想谈所有问题,只谈谈如何获得高薪,获得高薪需要哪些素质,那
    些条件,多少年的工作经验等。

    我认为的测试人员分类

    测试人员在软件开发中基本由两大类:一类是起步就做测试,一类做过开发
    后来转为测试。

    最近在网上同一些朋友聊天,经常聊到测试人员是否需要开发经验这样一个话
    题。我个人认为,又开发经验更好。我也倾向于由开发经验的测试人员可以获
    得更好的发展。但这都是一个动态的过程,起步就做测试的人可能后来也慢慢
    掌握开发经验。

    测试人员的成长阶段

    测试人员基本上可以分为如下几个阶段,手工测试阶段、工具辅助阶段、定制
    工具阶段、初级管理阶段、高级管理阶段、业务测试专家(此阶段在等同于在
    管理方面发展的初级、高级管理阶段,这个阶段的测试人员熟悉测试的各个方
    面,逐步专项某个领域的测试)。

    手工测试阶段

    处于此阶段的测试人员一般是刚刚进入这一行,或者刚刚换了一个公司(新来
    的吗)。这个时候是很重要的积累时期,自动此时工具只是一个辅助,重要的
    时你要有如何测试一个软件的思想。

    工具辅助阶段

    这个阶段的测试人员对各个类型的测试都有所了解,为了提高测试效率,开始
    使用测试工具;或者为了以后的职业发展开始关注自动测试,并主动或被动的
    学习测试工具。这时候自己心里一定要有数,那些测试工具会对职业生涯有帮
    助。目前国内的测试人员都在学习一些大厂商的测试工具,这些工具的确不错
    ,但是不一定都对以后的职业发展有利。一般来说这个时候首先要确定自己在
    功能测试方向发展还是在性能测试方向发展。这样可以有针对性地学习各类别
    的工具。当让有时间和精力可以多学习一些,多多益善。另外还有一些白盒测
    试工具,如果想在白盒测试方向发展可以多多研究。

    定制工具阶段

    这是工具辅助阶段的延续,一般定制工具分为两种,一种是对第三方厂商的工具
    进行插件开发或利用工具的脚本语言开发可重用的类库;另一种是开发公司内部
    使用的工具。第二中情况难度较大,需要测试人员有较高的开发水平。一般来说
    只有在商业测试工具不能满足测试要求时才开发自己的测试工具。当然有时候不
    需要使用庞大的商业测试工具的时候也可以自己开发一些小的、能够满足测试要
    求的工具。这一般使用产品开发所使用的语言或者Perl、Python等。对于使用
    Java开发的产品可以使用BeanShell等脚本语言。

    业务测试专家

    此阶段的测试人员已经熟练的掌握了多种工具,或者已经具备了为产品定制测试
    工具的能力。这个时候的测试人员应该做长期的职业生涯考虑,如果从事某个领
    域的产品测试时间较久,可以继续深入研究此领域里的相关技术,逐步能够提出
    对产品开发有建设性的建议。一般来说这个阶段的测试人员会在产品规划的前期
    作为高级测试人员参与进去,为产品的需求搜集和设计提供建设性意见。

    初级管理阶段

    一般来说这个阶段是指你处于项目组长位置的时候。这时可以制定测试计划,组
    织组内人员编写、修改测试用例。这个阶段的人员一般一般可以考虑向业务测试
    专家方向或者高级管理人员发展。

    高级管理阶段

    经历初级管理阶段后,积累了初步的测试管理经验。这时候一般会参与测试计划
    的制定、人力资源调配、各种资源分配等。

    各阶段的薪资状况

    就目前国内市场来看,按照测试人员所在的公司类型大致可分为如下几类:

    1。国内中小企业
    2。国内大企业
    3。测试外包公司
    4。国外企业

    同一个等级的职位在不同类型的公司可能有不同的定义,比如在国内的小企业
    可能就以两个测试人员,那你可能身兼多职,既是项目组长,又是项目经理。
    国内大企业一般来说同国外的企业的职位基本对应,但是一般来说国内大企业
    的测试经理到国外的公司也只能是个测试组长。

    测试外包公司在这几个类别中是个另类,在这种公司工作,基本就是技术类,
    很少有管理类的。

     

    如何获取高薪?

    一般来说在国内的中小公司做测试一般在1500-3000人民币每月。个别也有高
    的。在国内大公司高级人员一般可以拿到6000-8000人民币每月,初级人员大
    概在3000-5000之间。外包公司给的比较多,有经验的人员可以拿到6k到8k。
    在国外的大公司工作,就目前了解,初级人员在4k到7k之间,高级人员(有
    多年的测试经验)可以到8k-10k左右。

    如果你是刚刚毕业,那么能够进入大公司或国外的大公司,可以起步较高。
    如果你有几年工作经验,那么可以进入国外大公司,逐渐往管理职位发展,不
    过一般来说这很难。不过国外的大公司,一般提供技术和管理两条路供选择。
    毕竟管理职位有限,在国外的某些大公司,有经验的技术人员和一般的管理
    人员的薪资基本持平。

  • 嵌入式软件测试的十大秘诀

    2008-02-20 10:42:28

    在嵌入式软件开发过程中,一般来说,花在测试和花在编码的时间比为3:1(实际上可能更多)。这个比例随着你的编程和测试水平的提高而不断下降,但不论怎样,软件测试对一般人来讲很重要。很多年前,一位开发人员为了对嵌入式有更深层次的理解,向Oracle询问了这样的一个问题:我怎么才能知道并懂得我的系统到底在干些什么呢? Oracle面对这个问题有些吃惊,因为在当时没有人这么问过,而同时代的嵌入式开发人员问的最多的大都围绕“我怎么才能使程序跑的更快”、“什么编译器最好”等肤浅的问题。所以,面对这个不同寻常却异乎成熟的问题,Oracle感到欣喜并认真回复了他:你的问题很有深度很成熟,因为只有不断地去深入理解才有可能不断地提高水平。并且Oracle为了鼓励这位执着的程序员,把10条关于嵌入式软件开发测试的秘诀告诉了他:

    1.懂得使用工具

    2.尽早发现内存问题

    3.深入理解代码优化

    4.不要让自己大海捞针

    5.重现并隔离问题

    6.以退为进

    7.确定测试的完整性

    8.提高代码质量意味着节省时间

    9.发现它,分析它,解决它

    10.利用初学者的思维

    这十条秘诀在业界广为流传,使很多人受益。本文围绕这十条秘诀展开论述。

    1.懂得使用工具

    通常嵌入式系统对可靠性的要求比较高。嵌入式系统安全性的失效可能会导致灾难性的后果,即使是非安全性系统,由于大批量生产也会导致严重的经济损失。这就要求对嵌入式系统,包括嵌入式软件进行严格的测试、确认和验证。随着越来越多的领域使用软件和微处理器控制各种嵌入式设备,对门益复杂的嵌入式软件进行快速有效的测试愈加显得重要。

    就象修车需要工具一样,好的程序员应该能够熟练运用各种软件工具。不同的工具,有不同的使用范围,有不同的功能。使用这些工具,你可以看到你的系统在干些什么,它又占用什么资源,它到底和哪些外界的东西打交道。让你郁闷好几天的问题可能通过某个工具就能轻松搞定,可惜你就是不知道。那么为什么那么多的人总是在折腾个半死之后才想到要用测试工具呢?原因很多,主要有两个。一个是害怕,另一个是惰性。害怕是因为加入测试用具或测试模块到代码需要技巧同时有可能引入新的错误,所以他们总喜欢寄希望于通过不断地修改重编译代码来消除bug,结果却无济于事。懒惰是因为他们习惯了使用printf之类的简单测试手段。下面来介绍一些嵌入式常用的测试工具。

    .源码级调试器[Source-level Debugger]

    这种调试器一般提供单步或多步调试、断点设置、内存检测、变量查看等功能,是嵌入式调试最根本有效的调试方法。比如VxWorks TornadoII提供的gdb就属于这一种。

    .简单实用的打印显示工具[printf]

    printf或其它类似的打印显示工具估计是最灵活最简单的调试工具。打印代码执行过程中的各种变量可以让你知道代码执行的情况。但是,printf对正常的代码执行干扰比较大(一般printf占用CPU比较长的时间),需要慎重使用,最好设置打印开关来控制打印。

    .ICE或JTAG调试器[In-circuit Emulator]

    ICE是用来仿真CPU核心的设备,它可以在不干扰运算器的正常运行情况下,实时的检测CPU的内部工作情况。像桌面调试软件所提供的:复杂的条件断点、先进的实时跟踪、性能分析和端口分析这些功能,它也都能提供。ICE一般都有一个比较特殊的CPU,称为外合(bond-out)CPU。这是一种被打开了封装的CPU,并且通过特殊的连接,可以访问到CPU的内部信号,而这些信号,在CPU被封装时,是没法“看到”的。当和工作站上强大的调试软件联合使用时,ICE就能提供你所能找到的最全面的调试功能。但ICE同样有一些缺点:昂贵;不能全速工作;同样,并不是所有的CPU都可以作为外合CPU的,从另一个角度说,这些外合CPU也不大可能及时的被新出的CPU所更换。JTAG(Joint Test Action Group)虽然它最初开发出来是为了监测IC和电路连接,但是这种串行接口扩展了用途,包括对调试的支持。AD公司为Blackfin设计的Visual Dsp++就支持高速的JTAG调试。

    .ROM监视器[ROM Monitor]

    ROM监控器是一小程序,驻留在嵌入系统ROM中,通过串行的或网络的连接和运行在工作站上的调试软件通信。这是一种便宜的方式,当然也是最低端的技术。它除了要求一个通信端口和少量的内存空间外,不需要其它任何专门的硬件。并提供了如下功能:下载代码、运行控制、断点、单步步进、以及观察、修改寄存器和内存。因为ROM监控器是操作软件的一部分,只有当你的应用程序运行时,它才会工作。如果你想检查CPU和应用程序的状态,你就必须停下应用程序,再次进入ROM监控器。

    .Data监视器[Data Monitor]

    这种监视器在不停止CPU运行的情况下不仅可以显示指定变量内容,还可以收集并以图形形式显示各个变量的变化过程。

    .OS监视器[Operating System Monitor]

    操作系统监视器可以显示诸如任务切换、信号量收发、中断等事件。一方面,这些监视器能够为你呈现事件之间的关系和时间联系;另一方面,还可以提供对信号量优先级反转、死锁和中断延时等问题的诊断。

    .性能分析工具[Profiler]

    可以用来测试CPU到底耗在那里。profiler工具可以让你知道系统的瓶颈在那里、CPU的使用率以及需要优化的地方。

    .内存测试工具[Memory Teseter]

    可以找到内存使用的问题所在,比如内存泄露、内存碎片、内存崩溃等问题。如果发现系统出现一些不可预知的或间歇性的问题,就应该使用内存测试工具测测看。

    .运行跟踪器[Execution Tracer]

    可以显示CPU执行了哪些函数、谁在调用、参数是什么、何时调用等情况。这种工具主要用于测试代码逻辑,可以在大量的事件中发现异常的那些。

    .覆盖工具[Coverage Tester]

    主要显示CPU具体执行了那些代码,并让你知道那些代码分支没有被执行到。这样有助于提高代码质量并消除无用代码。

    .GUI测试工具[GUI Tester]

    很多嵌入式应用带有某种形式的图形用户界面进行交互,有些系统性能测试足根掘用户输入响应时间进行的。GUI测试工具可以作为脚本工具有开发环境中运行测试用例,其功能包括对操作的记录和回放、抓取屏幕显示供以后分析和比较、设置和管理测试过程(Rational公司的robot和Mercury的Loadrunner工具是杰出的代表)。很多嵌入式设备没有GUI,但常常可以对嵌入式设备进行插装来运行GUI测试脚本,虽然这种方式可能要求对被测代码进行更改,但是节省了功能测试和回归测试的时间。

    .自制工具[Home-made tester]

    在嵌入式应用中,有时候为了特定的目的,需要自行编写一些工具来达到某种测试目的。本人曾经编写的视频流录显工具在测试视频会议数据流向和变化上帮了大忙,帮公司找到了几个隐藏很深的bug。

    2.尽早发现内存问题

    内存问题危害很大,不容易排查,主要有三种类型:内存泄露、内存碎片和内存崩溃。对于内存问题态度必须要明确,那就是早发现早“治疗”。在软件设计中,内存泄露的“名气”最大,主要由于不断分配的内存无法及时地被释放,久而久之,系统的内存耗尽。即使细心的编程老手有时后也会遭遇内存泄露问题。有测试过内存泄露的朋友估计都有深刻地体验,那就是内存泄露问题一般隐藏很深,很难通过代码阅读来发现。有些内存泄露甚至可能出现在库当中。有可能这本身是库中的bug,也有可能是因为程序员没有正确理解它们的接口说明文档造成错用。

    在很多时候,大多数的内存泄露问题无法探测,但可能表现为随机的故障。程序员们往往会把这种现象怪罪于硬件问题。如果用户对系统稳定性不是很高,那么重启系统问题也不大;但,如果用户对系统稳定很高,那么这种故障就有可能使用户对产品失去信心,同时也意味着你的项目是个失败的项目。由于内存泄露危害巨大,现在已经有许多工具来解决这个问题。这些工具通过查找没有引用或重复使用的代码块、垃圾内存收集、库跟踪等技术来发现内存泄露的问题。每个工具都有利有弊,不过总的来说,用要比不用好。总之,负责的开发人员应该去测试内存泄露的问题,做到防患于未然。

    内存碎片比内存泄露隐藏还要深。随着内存的不断分配并释放,大块内存不断分解为小块内存,从而形成碎片,久而久之,当需要申请大块内存是,有可能就会失败。如果系统内存够大,那么坚持的时间会长一些,但最终还是逃不出分配失败的厄运。在使用动态分配的系统中,内存碎片经常发生。目前,解决这个问题最效的方法就是使用工具通过显示系统中内存的使用情况来发现谁是导致内存碎片的罪魁祸首,然后改进相应的部分。

    由于动态内存管理的种种问题,在嵌入式应用中,很多公司干脆就禁用malloc/free的以绝后患。

    内存崩溃是内存使用最严重的结果,主要原因有数组访问越界、写已经释放的内存、指针计算错误、访问堆栈地址越界等等。这种内存崩溃造成系统故障是随机的,而且很难查找,目前提供用于排查的工具也很少。

    总之,如果要使用内存管理单元的话,必须要小心,并严格遵守它们的使用规则,比如谁分配谁释放。

    3.深入理解代码优化

    讲到系统稳定性,人们更多地会想到实时性和速度,因为代码效率对嵌入式系统来说太重要了。知道怎么优化代码是每个嵌入式软件开发人员必须具备的技能。就象女孩子减肥一样,起码知道她哪个地方最需要减,才能去购买减肥药或器材来减掉它。可见,代码优化的前提是找到真正需要优化的地方,然后对症下药,优化相应部分的代码。前面提到的profile(性能分析工具,一些功能齐全IDE都提供这种内置的工具)能够记录各种情况比如各个任务的CPU占用率、各个任务的优先级是否分配妥当、某个数据被拷贝了多少次、访问磁盘多少次、是否调用了网络收发的程序、测试代码是否已经关闭等等。

    但是,profile工具在分析实时系统性能方面还是有不够的地方。一方面,人们使用profile工具往往是在系统出现问题即CPU耗尽之后,而profile工具本身对CPU占用较大,所以profile对这种情况很可能不起作用。根据Heisenberg效应,任何测试手段或多或少都会改变系统运行,这个对profiler同样适用!

    总之,提高运行效率的前提是你必须要知道CPU到底干了些什么干的怎么样。

    4.不要让自己大海捞针

    大海捞针只是对调试的一种生动比喻。

    经常听到组里有人对自己正在调试的代码说shit!可以理解,因为代码不是他写的,他有足够的理由去shit bug百出的代码,只要他自己不要写出这种代码,否则有一天同组的其它人可能同样会shit他写的代码。为何会有大海捞针呢?肯定是有人把针掉到海里咯;那针为何会掉在海里呢?肯定是有人不小心或草率呗。所以当你在抱怨针那么难找的时候,你是否想过是你自己草率地丢掉的。同样,当你调试个半死的时候,你是否想过你要好好反省一下当初为了寻求捷径可能没有严格地遵守好的编码设计规范、没有检测一些假设条件或算法的正确性、没有将一些可能存在问题的代码打上记号呢?关于如何写高质量请参考林锐的《高质量c++/c编程指南》或《关于C的0x8本“经书”》。

    如果你确实已经把针掉在海里是,为了防止在找到之前刺到自己,你必须要做一些防范工作,比如戴上安全手套。同样,为了尽能地暴露和捕捉问题根源,我们可以设计比较全面的错误跟踪代码。怎么来做呢?尽可能对每个函数调用失败作出处理,尽可能检测每个参数输入输出的有效性包括指针以及检测是否过多或过少地调用某个过程。错误跟踪能够让你知道你大概把针掉在哪个位置。

    5.重现并隔离问题

    如果你不是把针掉在大海了,而是掉在草堆里,那要好办写。因为至少我们可以把草堆分成很多块,一块一块的找。对于模块独立的大型项目,使用隔离方法往往是对付那些隐藏极深bug的最后方法。如果问题的出现是间歇性的,我们有必要设法去重现它并记录使其重现的整个过程以备在下一次可以利用这些条件去重现问题。如果你确信可以使用记录的那些条件去重现问题,那么我们就可以着手去隔离问题。怎么隔离呢?我们可以用#ifdef把一些可能和问题无关的代码关闭,把系统最小化到仍能够重现问题的地步。如果还是无法定位问题所在,那么有必要打开“工具箱”了。可以试着用ICE或数据监视器去查看某个可疑变量的变化;可以使用跟踪工具获得函数调用的情况包括参数的传递;检查内存是否崩溃以及堆栈溢出的问题。

    6.以退为进

    猎人为了不使自己在森林里迷路,他常常会在树木上流下一些标记,以备自己将来有一天迷路时可以根据这些标记找到出路。对过去代码的修改进行跟踪记录对将来出现问题之后的调试很有帮助。假如有一天,你最近一次修改的程序跑了很久之后忽然死掉了,那么你这时的第一反映就是我到底改动了些什么呢,因为上次修改之前是好的。那么如何检测这次相对于上次的修改呢?没错,代码控制系统SCS或称版本控制系统VCS(Concurrent Version Control,CVS是VCS的演化版本)。将上个版本check in下来后和当前测试版本比较。比较的工具可以是SCS/VCS/CVS自带的diff工具或其它功能更强的比较工具,比如BeyondCompare和ExamDiff。通过比较,记录所有改动的代码,分析所有可能导致问题的可疑代码。

    7.确定测试的完整性

    你怎么知道你的测试有多全面呢?覆盖测试(coverage testing)可以回答这个问题。覆盖测试工具可以告诉你CPU到底执行了那些代码。好的覆盖工具通常可以告诉你大概20%到40%代码没有问题,而其余的可能存在bug。覆盖工具有不同的测试级别,用户可以根据自己的需要选择某个级别。即使你很确信你的单元测试已经很全面并且没有dead code,覆盖工具还是可以为你指出一些潜在的问题,看下面的代码:

    if (i >= 0 && (almostAlwaysZero == 0 || (last = i)))

    如果almostAlwaysZero为非0,那么last=i赋值语句就被跳过,这可能不是你所期望的。这种问题通过覆盖工具的条件测试功能可以轻松的被发现。

    总之,覆盖测试对于提高代码质量很有帮助。

    8.提高代码质量意味着节省时间

    有研究表明软件开发的时间超过80%被用在下面几个方面:

    .调试自己的代码(单元测试)

    .调试自己和其他相关的代码(模块间测试)

    .调试整个系统(系统测试)

    更糟糕的是你可能需要花费10-200倍的时间来找一个bug,而这个bug在开始的时候可能很容易就能找到。一个小bug可能让你付出巨大的代价,即使这个bug对整个系统的性能没有太大的影响,但很可能会影响让那些你可以看得到的部分。所以我们必须要养成良好的编码和测试手段以求更高的代码质量,以便缩短调试的代码。

    9.发现它,分析它,解决它

    这世界没有万能的膏药。profile再强大也有力不从心的时候;内存监视器再好,也有无法发现的时候;覆盖工具再好用,也有不能覆盖的地方。一些隐藏很深的问题即使用尽所有工具也有可能无法查到其根源,这时我们能做的就是通过这些问题所表现出来的外在现象或一些数据输出来发现其中的规律或异常。一旦发现任何异常,一定要深入地理解并回溯其根源,直到解决为止。

    10.利用初学者的思维

    有人这样说过:“有些事情在初学者的脑子里可能有各种各样的情况,可在专家的头脑里可能就很单一”。有时候,有些简单的问题会被想的很复杂,有些简单的系统别设计的很复杂,就是由于你的“专家思维”。当你被问题难住时,关掉电脑,出去走走,把你的问题和你的朋友甚至你的小狗说说,或许他们可以给你意想不到的启发。

    总结:嵌入式调试也是一门艺术。就想其它的艺术一样,如果你想取得成功,你必须具备智慧、经验并懂得使用工具。只要我们能够很好地领悟Oracle这十条秘诀,我相信我们在嵌入式测试方面就能够取得成功。

1244/7<1234567>
Open Toolbar