第1章-嵌入式系统基础_第1页
第1章-嵌入式系统基础_第2页
第1章-嵌入式系统基础_第3页
第1章-嵌入式系统基础_第4页
第1章-嵌入式系统基础_第5页
已阅读5页,还剩68页未读 继续免费阅读

下载本文档

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

文档简介

第1章嵌入式系统基础主要内容1324嵌入式系统概念嵌入式处理器嵌入式操作系统实时操作系统的内核5嵌入式技术发展现状及趋势1.1.1嵌入式系统的定义

一般定义以应用为中心、以计算机技术为基础,软硬件可裁剪,应用系统对功能、可靠性、成本、体积、功耗和应用环境有特殊要求的专用计算机系统。是将应用程序、操作系统和计算机硬件集成在一起的系统(技术角度)嵌入式系统是设计完成复杂功能的硬件和软件,并使其紧密耦合在一起的计算机系统。(系统角度)术语嵌入式反映了这些系统通常是更大系统(被称之为嵌入的系统)的一个完整子系统。嵌入式的系统可以包含多个嵌入式系统。广义定义任何一个非计算机的计算系统IEE定义嵌入式系统是“用于控制、监视或者辅助操作的机器、设备或装置”(原文为devicesusedtocontrol,monitor,orassisttheoperationofequipment,machineryorplants)。通常执行特定功能嵌入式系统的核心----嵌入式微处理器严格的时序和稳定性要求全自动操作循环1.1.2嵌入式系统的组成嵌入式系统通常由嵌入式处理器、外围设备、嵌入式操作系统和应用软件等几大部分组成。嵌入式系统组成嵌入式系统硬件组成嵌入式处理器嵌入式处理器是嵌入式系统的核心部件。嵌入式处理器与通用处理器的最大不同点在于嵌入式处理器大多工作在为特定用户群设计的系统中。它通常把通用计算机中许多由板卡完成的任务集成在芯片内部,从而有利于嵌入式系统设计趋于小型化,并具有高效率、高可靠性等特征。大的硬件厂商会推出自己的嵌入式处理器,因而现今市面上有1000多种嵌入式处理器芯片,其中使用最为广泛的有ARM,MIPS,PowerPC,MC68000等。外围设备外围设备是指在一个嵌入式系统中,除了嵌入式处理器以外的完成存储、通信、调试、显示等辅助功能的其他部件。根据外围设备的功能可分为以下3类:存储器:静态易失型存储器(RAM,SRAM)、动态存储器(DRAM)和非易失型存储器(Flash)。其中,Flash以可擦写次数多、存储速度快、容量大及价格低等优点在嵌入式领域得到了广泛的应用。接口:应用最为广泛的包括并口、RS-232串口、IrDA红外接口、SPI串行外围设备接口、I2C(InterIC)总线接口、USB通用串行总线接口、Ethernet网口等。人机交互:LCD、键盘和触摸屏等人机交互设备。嵌入式操作系统嵌入式操作系统是用来管理存储器分配、中断处理、任务间通信和定时器响应,以及提供多任务处理等的软件模块集合。嵌入式操作系统常常有实时要求,所以嵌入式操作系统往往又是“实时操作系统”。

应用软件嵌入式系统的应用软件是针对特定的实际专业领域的,基于相应的嵌入式硬件平台,并能完成用户预期任务的计算机软件。

嵌入式软件的特点如下:(1)软件要求固态化存储。(2)软件代码要求高质量、高可靠性。(3)系统软件的高实时性是基本要求。(4)多任务实时操作系统成为嵌入式应用软件的必需。1.1.3嵌入式系统的特点软硬件一体化,集计算机技术、微电子技术、行业技术为一体;需要操作系统支持,代码小、执行速度快;专用紧凑,用途固定,成本敏感;可靠性要求高;多样性,应用广泛、种类繁多。

1.1.4嵌入式系统的应用嵌入式应用信息家电智能玩具军事电子通信设备移动存贮工控设备智能仪表汽车电子网络设备消费电子军事国防电子商务工业控制1.1.5实时系统实时系统(RealTimeSystem)是指产生系统输出的时间对系统至关重要的系统。从输入到输出的滞后时间必须足够小到一个可以接受的时限内。

实时系统通常具备以下重要的特性:1.实时性2.并行性

3.多路性

4.独立性

5.可预测性

6.可靠性

概念特性实时系统中主要通过3个指标来衡量系统的实时性,即:响应时间(ResponseTime):指计算机从识别一个外部事件到做出响应的时间。生存时间(SurvivalTime):指数据的有效等待时间,在这段时间里数据是有效的。吞吐量(Throughput):指在一段给定时间内,系统可以处理事件的总数。吞吐量通常比平均响应时间的倒数小一点。衡量实时性的指标实时系统的分类根据响应时间可分为3种类型:1.强实时系统2.弱实时系统3.一般实时系统根据确定性可分为2种类型:1.硬实时系统2.软实时系统主要内容1324嵌入式系统概念嵌入式处理器嵌入式操作系统实时操作系统的内核5嵌入式技术发展现状及趋势一、嵌入式处理器分类嵌入式微处理器(EmbeddedMicroprocessorUnit,EMPU)

微控制器(MicrocontrollerUnit,MCU)

DSP处理器(DigitalSignalProcessor,DSP)

片上系统(SystemOnChip,SOC)

嵌入式微处理器嵌入式微处理器是由通用计算机中的CPU演变而来的。与计算机处理器不同的是,只保留和嵌入式应用紧密相关的功能硬件,去除其他的冗余功能部分,配上必要的扩展外围电路,如存储器的扩展电路、I/O的扩展电路和一些专用的接口电路等,这样就可以最低的功耗和资源满足嵌入式应用的特殊要求。嵌入式微处理器虽然在功能上与标准微处理器基本相同,但一般在工作温度、抗电磁干扰、可靠性等方面都做了各种增强。与工业控制计算机相比,嵌入式微处理器具有体积小、重量轻、成本低、可靠性高等优点。

目前主要的嵌入式处理器类型有ARM、MIPS、Am186/88、386EX、PowerPC、68000系列等。

二、典型的嵌入式处理器1.ARM处理器2.MIPS处理器3.PowerPC处理器4.MC68K/Coldfire处理器5.x86处理器ARM处理器

ARM(AdvancedRISCMachines)公司是全球领先的16/32位RISC微处理器知识产权设计供应商。ARM处理器有3大特点:小体积、低功耗、低成本而高性能;16/32位双指令集;全球众多的合作伙伴。ARM处理器分ARM7、ARM9、ARM9E、ARM10、ARM11和SecurCore系列。

MIPS处理器

MIPS(MicroprocessorwithoutInterlockedPipelineStages)技术公司是一家设计制造高性能、高档次及嵌入式32位和64位处理器的厂商。

MIPS的定位很广。在高端市场它有64位的20Kc系列,在低端市场有SmartMIPS。

PowerPC体系结构的特点是可伸缩性好,方便灵活。PowerPC处理器品种很多,既有通用的处理器,又有微控制器和内核。其应用范围非常广泛,从高端的工作站、服务器到桌面计算机系统,从消费类电子产品到大型通信设备,无所不包。基于PowerPC架构的处理器有IBM公司开发的PowerPC405GP,它是一个集成10/100Mbps以太网控制器、串行和并行端口、内存控制器以及其它外设的高性能嵌入式处理器。PowerPC处理器Apple机以前使用的就是Motorola68000(68K),比Intel公司的8088还要早。但现在,Apple、Motorola公司已放弃68K而专注于ARM了。MC68K/Coldfire处理器x86系列处理器是最常用的,它起源于Intel架构的8080,发展到现在Pentium4、Athlon和AMD的64位处理器Hammer。486DX是当时和ARM、68K、MIPS、SuperH齐名的五大嵌入式处理器之一。现有基于x86的STPC高度集成系统。x86处理器主要内容1324嵌入式系统概念嵌入式处理器嵌入式操作系统实时操作系统的内核5嵌入式技术发展现状及趋势1.3.1操作系统的概念和分类

操作系统的概念操作系统OS(OperationSystem)是一组计算机程序的集合,用来有效地控制和管理计算机的硬件和软件资源,即合理地对资源进行调度,并为用户提供方便的应用接口。它为应用支持软件提供运行环境,即对程序开发者提供功能强、使用方便的开发环境。

操作系统的功能处理器管理存储器管理设备管理文件管理用户接口对处理器进行分配,并对其运行进行有效地控制和管理。处理器的分配和运行都是以进程为基本单位进行的,因此对处理器的管理可以归结为对进程的管理,包括进程控制、进程同步、进程通信、作业调度和进程调度等。为多道程序的运行提供良好的环境,包括内存分配、内存保护、地址映射、内存扩充等。包括缓冲管理、设备分配、设备处理、形成虚拟逻辑设备等。

文件管理的主要任务就是对系统文件和用户文件进行管理,方便用户的使用,保证文件的安全性。文件管理包括对文件存储空间的管理、目录管理、文件的读写管理以及文件的共享与保护等。用户与操作系统的接口是用户能方便地使用操作系统的关键所在。计算机操作系统的分类按程序运行调度的方法分类:1.顺序执行系统即系统内只有一个运行程序,它独占CPU时间,按语句顺序执行该程序,直至执行完毕,另一程序才能启动运行。DOS操作系统就属于这种系统。2.分时操作系统系统内同时可有多道程序运行。所谓同时,只是从宏观上说;实际上系统把CPU的时间按顺序分成若干时间片,每个时间片内执行不同的程序。这类系统支持多用户,当今广泛用于商业、金融领域。UNIX操作系统就属于这种系统。3.实时操作系统系统内同时有多道程序运行,每道程序各有不同的优先级,操作系统按事件触发使程序运行。当多个事件发生时,系统按优先级高低确定哪道程序在此时此刻占有CPU,以保证优先级高的事件先运行,从而实现实时信息及时被采集。嵌入式操作系统的分类从实时性的角度来看,嵌入式操作系统可以分为:具有强实时特点的嵌入式操作系统;具有弱实时特点的嵌入式操作系统;没有实时特点的嵌入式操作系统。从应用的角度来看,嵌入式操作系统可以分为:面向低端信息家电IA(InternetAppliance,如智能电话、家庭网关等)的嵌入式操作系统;面向高端信息家电(如数字电视等)的嵌入式操作系统;面向个人通信终端(如手机、PDA、PocketPC等)的嵌入式操作系统;面向通信设备的嵌入式操作系统;面向汽车电子的嵌入式操作系统;面向工业控制的嵌入式操作系统。嵌入式操作系统的基本概念任务、进程和线程

任务:任务是指一个程序分段,这个分段被操作系统当作一个基本工作单元来调度。任务是在系统运行前已设计好的。进程:进程是指任务的一次运行过程,它是动态过程。有些操作系统把任务和进程等同看待,认为任务是一个动态过程,即执行任务体的动态过程。线程:20世纪80年代中期,人们提出了比进程更小的能独立运行和调度的基本单位——线程,并以此来提高程序并发执行的程度。近些年,线程的概念已被广泛应用。嵌入式操作系统的基本概念多用户及多任务多用户的含义是,允许多个用户通过各自的终端使用同一台主机,共享同一个操作系统及各种系统资源。每个用户的应用程序可以设计成不同的任务,这些任务可以并发执行。多用户及多任务系统可以提高系统的吞吐量,更有效地利用系统资源。嵌入式操作系统的基本概念任务的事件驱动嵌入式操作系统的基本概念中断与中断优先级

中断是计算机中软件系统与硬件系统共同提供的功能。它包括中断源、中断优先级、中断处理程序及中断任务等相关概念。实时操作系统充分利用中断来改变CPU执行程序的顺序,达到实时处理目的。系统中所有中断控制器一共可以连接几个外部信号,则称系统有几个中断源。操作系统对每个中断级指定了优先级,称之为中断优先级。在多个中断源同时发出申请时,CPU按优先级的高低顺序处理。这种总是保证优先级最高的任务占用CPU的方式,称为按优先级抢占式调度。嵌入式操作系统的基本概念同步与异步实时系统中常用同步或异步来说明事件发生的时序或任务执行的顺序关系。由于事件1停止而引起事件2发生,或者必须有事件2发生,事件3才可能发生,如此类推,这一系列与时间相关的事件称为同步事件。由同步事件驱动的任务称为同步任务。使任务同步的目的是使相关任务在执行顺序上协调,不至于发生时间相关的差错,以保证任务互斥地访问系统的内存、外设等共享资源。

异步事件是指随机发生的事件。异步事件发生的因素很复杂,往往与工业现场有关,难以预测其发生的时间,因此异步事件又称随机事件。由异步事件驱动的任务称为异步任务。中断任务都是异步任务,优先级高于同步任务。嵌入式操作系统的基本概念资源与临界资源程序运行时可使用的软、硬件环境统称为资源。主要包括CPU的可利用时间、系统可提供的中断源、内存空间与数据、通用外部设备等等。没有指派给具体任务的资源属于系统所有,是共享资源。如果系统中出现2个以上任务可能同时访问的共享资源,则称为临界资源。系统中的公共数据区、打印机等都是临界资源。系统内任务应采取互斥的方式访问共享资源。在实时多任务系统中,当异步任务被激活时,容易出现资源的临界状态。实时多任务操作系统中应保证任何时刻临界资源内只有一个任务在访问。资源临界问题解决不好,执行任务交不出资源的控制权,将引起系统死锁。嵌入式操作系统的基本概念容错与安全

容错是指这样一种性能或措施,当系统内某些软、硬件出现故障时,系统仍能正常运转,完成预定的任务或某些重要的不允许间断的任务。容错能力包括系统自诊断、自恢复、自动切换等多方面能力,由软、硬件共同采取措施才能实现。容错是实时系统提高可靠性的手段。

安全性控制是操作系统对自身文件和用户文件的存取合法性的控制。在实时操作系统中安全性极为重要,必须保证系统工作的高度可靠和安全,防止对应用系统有意或无意的破坏。通常采用一些软件控制方法来保证系统的安全性,如标记检查、多级口令设置、加密等等。1.3.2实时操作系统实时操作系统(RTOS)是具有实时性且能支持实时控制系统工作的操作系统。RTOS与通用计算机OS的区别:实时性。响应速度快,只有几微秒;执行时间确定、可预测;代码尺寸小。10~100KB,节省内存空间,降低成本;应用程序开发较难;需要专用开发工具:仿真器、编译器和调试器等。实时操作系统的发展实时操作系统的研究是从20世纪60年代开始的。从系统结构上看,实时操作系统经历了以下3个发展阶段。(1)早期的实时操作系统不能称为真正的实时操作系统。它只是一个小而简单、具有一定专用性的软件,其功能较弱,可以认为是一种实时监控程序。它一般为用户提供对系统的初始管理以及简单的实时时钟管理。(2)专用实时操作系统在国外称为Real-TimeOperatingSystemDevelopedinHouse。它是早期用户为满足自身开发需要而研制的,一般只能用于特定的硬件环境,且缺乏严格的评测,移植性也不太好。(3)通用实时操作系统大多采用软组件结构,以“标准组件”构成通用的实时操作系统。一方面,在实时操作系统内核的最底层将不同的硬件特性屏蔽掉;另一方面,对不同的应用环境提供了标准的、可剪裁的系统服务软组件。

实时操作系统的组成根据面向实际应用领域的不同,实时操作系统的组成也有所不同。但一般都包括以下几个重要组成部分:

(1)实时内核实时内核一般都是多任务的。它主要实现任务管理、定时器管理、存储器管理、任务间通信与同步、中断管理等功能。

(2)网络组件

网络组件实现了链路层的ARP/RARP协议、PPP及SLIP协议,网络层的IP协议,传输层的TCP和UDP协议。网络组件为应用层提供服务,它本身是可裁减的。(3)文件系统对于比较复杂的文件操作应用来说,文件系统是必不可少的。它也是可裁减的。(4)图形用户界面图形用户界面(GUI)为用户提供文字和图形以及中英文的显示和输入。它同样是可裁减的。实时操作系统的特点(1)支持异步事件的响应实时操作系统为了对外部事件在规定的时间内进行响应,要求具有中断和异步处理的能力。(2)中断和调度任务的优先级机制为区分用户的中断以及调度任务的轻重缓急,需要有中断和调度任务的优先级机制。(3)支持抢占式调度为保证高优先级的中断或任务的响应时间,实时操作系统必须提供一旦高优先级的中断或任务准备好,就能马上抢占低优先级任务的CPU使用权的机制。(4)确定的任务切换时间和中断延迟时间确定的任务切换时间和中断延迟时间是实时操作系统区别于普通操作系统的一个重要标志,是衡量实时操作系统实时性的重要标准。(5)支持同步提供同步和协调共享数据的使用。1.3.3常见的嵌入式操作系统VxWorksμC/OSμC/OS-ⅡWindowsCE嵌入式LinuxPalmOS

QNXDeltaOS

HopenOSpSOSμC/OS和μC/OS-Ⅱ

C/OS—MicroControllerOSC/OS简介美国人JeanLabrosse1992年完成,已应用于数百种产品中。应用面覆盖了诸多领域,如照相机、医疗器械、音响设备、发动机控制、高速公路电话系统、自动提款机等1998年C/OS-II,目前的版本C/OS-IIV2.722000年,得到美国航空管理局(FAA)的认证,可以用于飞行器中是一个源码公开、可移植、可裁减、占用资源少、抢先式的实时多任务操作系统。其绝大部分源码采用ANSIC写的,移植性好。高校教学可免费使用。μC/OS-II的系统结构μC/OS-II的任务状态转移图

µClinux

DeltaOSDeltaOS是电子科技大学嵌入式实时教研室和科银公司联合研制开发的全中文的嵌入式操作系统。提供强实时和嵌入式多任务的内核,任务响应时间快速、确定,不随任务负载大小改变。绝大部分的代码由C语言编写,具有很好的移植性。适用于内存要求较大、可靠性要求较高的嵌入式系统。主要包括嵌入式实时内核DeltaCORE、嵌入式TCP/IP组件DeltaNET、嵌入式文件系统DeltaFILE以及嵌入式图形用户界面DeltaGUI等。提供一整套的嵌入式开发套件LamdaTOOL和一整套嵌入式开发应用解决方案,已成功应用于通信、网络、信息家电等多个应用领域。

HopenOSHopenOS是凯思集团自主研制开发的实时操作系统。由一个体积很小的内核及一些可以根据需要进行定制的系统模块组成。其核心HopenKernel的规模一般为10KB左右,占用空间小。具有实时、多任务、多线程的系统特征。

pSOS

pSOS是ISI(IntegratedSystemsInc.)公司研发的产品,是世界上最早的实时系统之一,也是最早进入中国市场的实时操作系统。

pSOS是一个模块化、高性能、完全可扩展的实时操作系统。专为嵌入式微处理器设计,提供了一个完全多任务环境,在定制的或是商业化的硬件上提供高性能和高可靠性。包含单处理器支持模块(pSOS+)、多处理器支持模块(pSOS+m)、文件管理器模块(pHILE)、TCP/IP通信包(pNA)、流式通信模块(OpEN)、图形界面、Java,HTTP等。主要内容1324嵌入式系统概念嵌入式处理器嵌入式操作系统实时操作系统的内核5嵌入式技术发展现状及趋势在实时操作系统中最关键的部分是实时多任务内核。它主要实现的功能包括:任务管理任务间通信与同步存储器管理定时器管理中断管理1.4实时操作系统的内核1.4.1任务管理任务实时操作系统中的任务与操作系统中的进程相似。它是具有独立功能的无限循环的程序段的一次运行活动。任务的状态运行态(Executing):获得CPU控制权。就绪态(Ready):进入任务等待队列,通过调度转为运行状态。挂起态(Suspended):任务发生阻塞,移出任务等待队列,等待系统实时事件的发生而唤醒,从而转为就绪或运行态。休眠态(Dormant):任务完成或错误等原因被清除的任务,也可以认为是系统中不存在的任务。

实时内核的任务管理实现在应用程序中建立任务,删除任务,挂起任务,恢复任务,以及对任务的响应、切换和调度等功能。1.4.1任务管理任务管理常用的任务调度算法基于优先级的调度算法非抢占式调度抢占式调度同一优先级的时间片轮转调度算法单调速率调度算法基于优先级的调度算法实时系统为每个任务赋予一个优先级。实时系统允许多个任务共享一个优先级,通过同一优先级的时间片轮转调度算法,完成任务间的调度。优先级调度原则是让高优先级的任务在得到资源运行的事件上比低优先级任务更有优先权。实时操作系统都采用基于优先级的任务调度算法。按照任务在运行过程中是否能被抢占,可以分为抢占式调度和非抢占式调度两种。基于优先级的调度算法——非抢占式调度

非抢占式(Non-preemptive)调度算法也称作合作型多任务(CooperativeMultitasking)。中断服务可以使一个高优先级的任务由挂起状态变为就绪状态,但中断服务以后控制权还是回到原来被中断的任务,直到该任务主动放弃CPU的使用权时,高优先级的任务才能获得CPU的使用权。基于优先级的调度算法——抢占式调度

抢占式(preemptive)调度算法确保最高优先级的任务一旦就绪,总能得到CPU的控制权。优先级反转问题基于优先级的调度算法——抢占式调度

实例简要说明:任务1:优先级较高。要使用资源S,使用完毕程序结束。任务2:优先级中等。不使用资源S。任务3:优先级最低。要使用资源S,使用完毕程序结束。S:具有互斥机制保护的同一共享资源。3个任务的就绪顺序为:任务3首先进入就绪状态。在任务3运行过程中,任务1和任务2都进入就绪状态。其中任务1比任务2先进入就绪状态。基于优先级的调度算法——抢占式调度

优先级反转问题解决优先级反转问题的方法:优先级继承(PriorityInheritance)优先级封顶(PriorityCeiling)

优先级继承设C为正占用着某项共享资源的进程P以及所有正在等待占用此项资源的进程的集合。找出这个集合中的优先级最高者P_h,其优先级为p’。把进程P的优先级设置成p’。优先级继承通过提高任务3的优先级达到与任务1相同的优先级,来避免优先级反转问题的出现。使用优先级继承后任务的运行流程基于优先级的调度算法——抢占式调度

优先级封顶设C为所有可能竞争使用某项共享资源的进程的集合。事先为这个集合规定一个优先级上限p’,使得这个集合中所有进程的优先级都小于p’。注意p’并不一定是整个系统中的最高优先级。在创建保护该项资源的信号量或互斥量时,将p’作为一个参数。每当有进程通过这个信号量或互斥量取得对共享资源的独占使用权时,就将此进程的优先级暂时提高到p’,一直到释放该项资源的时候才恢复其原有的优先级。使用优先级封顶后任务的运行流程优先级继承和优先级封顶的比较基于优先级的调度算法——抢占式调度

两种算法都改变了任务3的优先级,但改变优先级的时间和改变的范围有所不同。优先级继承只在占有资源的低优先级任务阻塞了高优先级的任务运行时,才动态更改低优先级的任务到高优先级。这种算法对应用中任务的流程影响比较小。优先级封顶则不管任务是否阻塞了高优先级任务的运行,只要任务访问该资源,都会提升任务的优先级到可访问这个资源的所有任务的最高优先级。这两种算法各有优缺点,实际选择时要看具体的应用情况。同一优先级的时间片轮转调度算法针对多个任务允许共用一个优先级的内核。如果系统中优先级最高的任务有两个或两个以上,调度器依照就绪的先后次序调度第一个任务。当其执行一段特定的时间片后,无论任务完成与否,处理器都会结束该任务的运行,转入下一个就绪的同优先级任务。若有更高优先级的任务就绪,则应用基于优先级的可抢占调度算法调度更高优先级的任务。未运行完的任务释放处理器的控制权后,放到就绪队列的末尾,等待下一个时间片来竞争处理器。单调速率调度算法

单调速率调度算法RMS(RateMonotonicScheduling)主要用于分配任务的优先级。它是根据任务执行的频率确定优先级的。任务的执行频率越高,其优先级越高;反之,优先级越低。1.4.

温馨提示

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

评论

0/150

提交评论