实训参考资料.docx
- 文档编号:27490733
- 上传时间:2023-07-02
- 格式:DOCX
- 页数:38
- 大小:901.50KB
实训参考资料.docx
《实训参考资料.docx》由会员分享,可在线阅读,更多相关《实训参考资料.docx(38页珍藏版)》请在冰豆网上搜索。
实训参考资料
基于ARM11的Linux操作系统移植
嵌入式实训参考资料
1.绪论
概述
随着计算机技术、通信技术以及Internet的飞速发展。
嵌入式系统已得到越来越广泛的应用。
以此同时,嵌入式系统也变得更加的复杂多样,嵌入式操作系统已经成为其中最重要的组成部分。
根据IEEE的定义,嵌入式系统是“控制、监视或者辅助机器和设备运行的装置”。
这主要是从应用上加以定义的,从定义之中可以看出嵌入式系统是软件和硬件的综合体,还可以涵盖机械等附属装置。
从历史性、本质性、普遍性出发,嵌入式系统可以定义为:
“嵌入到对象体系中的专用计算机系统”。
“嵌入性”、“专用性”与“计算机系统”是嵌入式系统的三个基本要素,对象系统则是指嵌入式系统所嵌入的宿主系统。
不过上述定义并不能充分体现出嵌入式系统的精髓,目前国内一个普遍被认同的定义是:
以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。
嵌入式系统是面向用户、面向产品、面向应用的,它必须与具体应用相结合才会具有生命力、才更具有优势。
嵌入式系统一般指非PC系统,它包括硬件和软件两部分。
硬件包括处理器、存储器及外设器件和I/O端口、图形控制器等。
软件部分包括操作系统软件(OS)(要求实时和多任务操作)和应用程序。
应用程序控制着系统的运作和行为,而操作系统控制着应用程序与硬件的交互作用。
嵌入式系统是将先进的半导体技术、计算机技、电子技术和各个行业的具体应用相结合后的产物,这一点就决定了它必然是一个技术密集、资金密集、高度分散、不断创新的知识集成系统。
嵌入式系统同PC系统相比具有以下特点:
(1)嵌入式系统功耗低、体积小、专用性强。
嵌入式系统与PC的最大不同就是CPU大多工作在特定用户群设计的系统中。
能够把PC中许多由电路板完成的任务集成在芯片内部,从而有利于嵌入式系统趋于小型化系统设计。
(2)为了提高执行速度和系统可靠性,嵌入式系统中的软件一般都固化在存储芯片或单片机本身中,而不是存储与磁盘等载体中。
(3)嵌入式系统的硬件和软件都必须高效率地设计,系统要精简。
操作系统一般和应用软件集成在一起。
(4)对软件代码质量要求很高,应该尽最大可能避免“死机”的发生。
(5)嵌入式系统开发需要专门的开发工具和开发环境。
嵌入式设备能得到用户的喜爱,最重要的原因就是它能提供非常友好的用户界面、图形界面和灵活的控制方式。
这就要求嵌入式软件设计者要在图形界面、多媒体技术上多下功夫(这样可以使客户更轻松方便的使用嵌入式产品)。
嵌入式硬件处理器
各种新型微处理器的出现和应用的不断深化,嵌入式系统在后PC时代得到了空前的发展。
随着时间的推移和技术的进步,在工业控制、家用电器、智能仪器仪表、机电控制等领域,已不断展现出其独特魅力。
与桌面计算机不同,嵌入式计算机系统以应用为中心,具有专用性、低成本、低功耗、高性能、高可靠性等特点。
嵌入式系统日益广泛的应用也让人们认识到这项技术蕴含的巨大的市场潜力。
ARM是一家提供RISC架构的嵌入式微处理器公司,设计了大量高性能、廉价、耗能低的RISC处理器、相关技术及软件。
适用于多种领域,比如嵌入控制、消费/教育类多媒体、DSP和移动式应用等。
ARM公司的总部位于英国剑桥,成立于1990年11月,在全球设立了多个办事处,是苹果、Acorn、VLSI、Technology等公司的合资企业。
20世纪90年代,ARM公司的业绩平平,处理器的出货量徘徊不前。
由于缺乏资金,ARM做出了一个意义深远的决定:
自己不制造芯片,只将芯片的设计方案授权给其他公司,由它们来生产。
正是这个模式,最终使得ARM芯片遍地开花,将封闭设计的Intel公司置于"人民战争"的汪洋大海。
进入21世纪之后,由于手机的快速发展,出货量呈现爆炸式增长,ARM处理器占领了全球手机市场。
2010年,全球ARM芯片出货量达61亿片,远远超出预期的45亿片。
ARM®体系结构是业界领先的微处理器体系结构,为系统和软件工程师提供了开发低能耗、高性能消费类和工业产品的硅验证解决方案。
这些终端产品涵盖了从汽车和工业监视器到家庭娱乐和移动设备的各个领域。
ARM完整产品线包括微控制器、微处理器、图形处理器、实现软件、单元库、嵌入式内存、高速连接产品、外设以及开发工具。
借助于完善的设计服务、培训、支持和维护以及公司的庞大合作伙伴社区,我们提供了一个全面的系统解决方案,为主要电子设备公司提供一条快速可靠的途径将产品推向市场。
ARM处理器的优势对于如今大量出现的32位嵌入式应用,以笔者之见,arm处理器的优势主要有以下几个方面。
高性能、低功耗、低价格把ARM处理器的性能拿来和一些着名的通用处理器(如Pentium)相比是不合适的,因为他们各自针对的应用需求是不同的。
Pentium处理器采用多条指令流水线的超标量结构,追求通用应用目标下的超强性能,功耗大,可以用散热器加风扇散热。
ARM针对嵌入式应用,在满足性能要求的前提下,力求最低的功率消耗。
ARM结构的优点是能兼顾到性能、功耗、代码密度、价格等几个方面,而且做得比较均衡。
在性能/功耗比(MIPS/W)方面,ARM处理器具有业界领先的性能。
基于ARM核的芯片价格也很低,目前armCortexM的芯片价格可低至10元人民币左右。
丰富的可选择芯片ARM只是一个核,ARM公司自己不生产芯片,采用授权方式给半导体生产商。
目前,全球几乎所有的半导体厂家都向ARM公司购买了各种ARM核,配上多种不同的控制器(如LCD控制器、SDRAM控制器、DMA控制器等)和外设、接口,生产各种基于ARM核的芯片。
目前,基于ARM核的各种处理器型号有好几百种,在国内市场上,常见的有ST、TI、NXP、Atmel、Samsung、OKI、Sharp、Hynix、Crystal等厂家的芯片。
用户可以根据各自的应用需求,从性能、功能等方面考察,在许多具体型号中选择最合适的芯片来设计自己的应用系统。
由于ARM核采用向上兼容的指令系统,用户开发的软件可以非常方便地移植到更高的arm平台。
广泛的第三方支持以如今的技术,设计一个处理器并非难事,但要使这个处理器得到大家认可,并取得市场成功却是非常困难的,其中涉及许多技术与非技术的因素和环节,还包括时机、运气。
因为现在许多产品的开发,不是一个简单的处理器加几百条指令、语句就可以解决的。
要用到32位处理器,一般都要有编译器、高效的开发工具(仿真器及调试环境)、操作系统、协议栈等,这些东西都不是一个芯片生产商可以解决的,而需要许多第三方的支持。
这就像一粒种子,需要土壤、空气、水等环境才能发芽、成长。
这也是我们的一些“中国芯”该反思之处。
ARM通过近20年的培育、发展,得到了广泛的第三方合作伙伴支持。
目前,除通用编译器GCC,ARM有自己的高效编译、调试环境(MDK、Keil),全球约有50家以上的实时操作系统(RTOS)软件厂商和30家以上的EDA工具制造商,还有很多高效率的实时跟踪调试工具的厂商,对ARM提供了很好的支持。
用户采用arm处理器开发产品,既可以获得广泛的支持,也便于和同行交流,加快开发进度,缩短产品的上市时间。
.完整的产品线和发展规划ARM核根据不同应用需求对处理器的性能要求,有一个从ARM7、ARM9到ARM10、ARM11,以及新定义的CortexM/R/A系列完整的产品线。
前几年应用较多的主要是基于V4架构的ARM7TDMI、ARM720T、ARM920T核的一些处理器芯片,如NXP的LPC2000系列、ST的STR7/9系列、Atmel的AT91系列和Samsung的S3C系列。
近两年,armCortex系列以更好的性能、更低的价格得到快速推广,典型的就是基于CortexM3的STM32系列。
ARMCortexM/R/A系列分别针对不同的应用领域。
M系列主要面向传统微控制器(MCU/单片机)应用,这类应用面很广,要求处理器有丰富的外设,并且各方面比较均衡;R系列强调实时性,主要用于实时控制,如汽车引擎;A系列面向高性能、低功耗应用系统,如智能手机。
选用ARM处理器进行开发,技术积累性较强,生命周期长,设计重用度高,不易被淘汰。
用户在选择ARM处理器时,可以针对应用需求,从大量的arm芯片中选用满足性能、功能要求的产品,以获得较好的性价比。
ARM技术应用领域可以分为四类:
移动互联网接入设备、家用应用、商务设备和嵌入式设备。
据ARM2010年第3季度统计,全球共有15亿带有ARM技术的产品出货,公司整体营收较09年同期增长了近30%。
这些ARM芯片,62%用于移动互联网接入设备,19%用于嵌入式设备,14%用于商务设备,5%用于家用应用。
在移动互联网接入设备中,从Smartphone和3G技术的发展到智能手机等移动终端设备,目前主在ARM和Android这对“双A”组合上表现的尤为突出。
从featurephone时代,ARM核心就主宰了基带芯片市场,优势持续延伸到智能手机,ARM继续攻下9成左右的市占率,接着很可能还会随着手机厂与PC厂纷纷抢搭平板电脑(TabletPC)风潮,而进一步大口吃下这个新兴市场的市占率。
。
目前占出货量19%的嵌入式领域,正是ARM这几年的重点市场所在。
嵌入式市场应用广泛,从低端到高端、从简单到实时的各种应用,简单的8位MCU依然存在巨大市场,而汽车、家庭、智能卡等对智能控制、联网要求的提高,软件可靠性的提升,使32位MCU呈现出高速成长状态。
ARM将会成为MCU领域中主流的架构,将继续设计并提供先进的CPU核、系统IP、物理IP、开发工具和软件解决方案。
ARM还一直在与微软合作研发处理器架构,从事新应用的架构研发,这些新应用包括微控制器,传感器,固态硬盘,中型移动计算设备和大型服务器等。
2020年,ARM架构集成电路的全球累积出货量有望超过一千亿。
在产品开发过程中,ARM为统一兼容的软件平台提供了便利。
据ARM预测,嵌入式应用将是其未来发展最快的领域。
在企业的商务设备领域中,ARM将企业应用程序定义为提供网络连接和/或存储功能的完整系统或子系统。
这包括家庭和公司网关、企业路由器、以太网交换机、无线访问点、基站、多服务配置平台、硬盘驱动器、网络连接存储和固态磁盘。
在过去5年中,上述许多应用领域的系统设计人员已开始考虑这些系统完成其任务时的能效,而不是考虑绝对性能。
随着更高性能的多核处理器核心和经过优化的性能改进物理逻辑IP(包括ARM物理IP部门提供的标准单元库)的问世,可通过ARM技术满足需求的上述应用领域得到了拓展。
此外,在研发预算匮乏的环境下,具有受到强力支持的软件和工具生态系统的行业标准ISA使产品经理能够缩短产品的上市时间,并节省研发成本以用于开发增值功能和不同的应用程序特定功能。
在家庭应用中,数字技术的普及需要性能、功耗甚至安全性的改善。
并且3C合一的市场趋势,使传统的电视制造厂商转向多产品领域拓展,ARM统一的产品开发平台及兼容的技术团队,给传统厂商的转型带来了便利。
ARM目前生产的芯片产品已经成为全球智能手机和平板电脑产品的标准配置,而其它包括数码相机、多媒体播放器在内的各种消费电子产品都采用了ARM架构的芯片。
ARM不仅仅只关注IP出售,还考虑到了芯片制造过程中所需要的设计服务,芯片应用时所需要的软件工具和设计方案支持,建立一个完善的半导体产业成长环境。
统一工具软件使ARM成为一个架构在标准平台上的可差异化产品,从8051过渡到使用ARM技术的32位MCU,面临着软件代码转移的复杂问题,但ARM通过收购8051开发工具供应商keil公司,提供自动的标准化编译器,使这一过程轻易就可解决。
此外,ARM还通过与中国软件公司英蓓特的合作,使开发工具本地化,以极低的价格适应中国企业的成本要求。
并且,为了应对中国中小型芯片设计公司的成本压力,ARM将其流水线标准的授权模式改善为四种更具灵活性的模式,提供一个金字塔型的费用等级给各个芯片厂商选择。
其中,金字塔的顶端为少数芯片厂商的高级定制IP服务;第二层为授权费几百万美元的标准IP授权服务;第三层为晶圆代工厂授权服务,IC设计公司只需在使用IP时支付费用;最底层为免费授权服务,当芯片投入量产时再支付版权费用,直接取消了价位门槛,对于小型IC设计公司来说,将不会出现设计风险。
这种取消授权费用的模式,费用回收时间长,但对小型IC设计公司的发展却有非常积极的促进作用。
对此谭军认为,产品从芯片开发到面世的周期平均为4年,所以放弃眼前的利益是这种模式的关键,目前免授权费用模式只有ARM公司提供。
然而就目前中国企业的IP保护,谭军认为,自2001年进入中国,ARM在与中国公司的合作中发现,从个人、企业到政府,IP保护环境正在发展得越来越好。
事实上,中国企业更注重自己的IP保护,但产业链之间的信任度却不够理想。
在芯片公司和系统厂商之间,信任的缺乏加重了开发芯片与产品的复杂过程,最终延缓产品的面世周期。
谭军认定,只有产业联盟才能改善这种僵局,真正达到知识产权保护。
过去几年中,ARM一直推进产业合作,打造整条ARM技术联盟,目前ARM已具有庞大的第三方合作联盟,涉及整条产业链中的各个阶段,合作伙伴包括两百家芯片公司、50家操作系统公司,以及更多的OEM公司。
ARM未来将注重两大要点,一为产品的细分化,二为多核应用。
对于产品各个应用对功耗、用户界面和性能要求的不同,ARM将其产品系列分为A系列、R系列、M系列,根据具体的应用推广产品。
对于多核,将更注重功耗的降低、软件的兼容性以及高速应用。
嵌入式操作系统
目前,市场上存在的众多的嵌入式操作系统,而在这些系统之中,兼有Linux和嵌入式优点的嵌入式Linux操作系统,凭借其在结构清晰、源代码开放性、裁剪性好,开发与使用均易实现等方面的优势,拥有巨大的市场前景和商业机会。
当前嵌入式Linux的一个热点应用就是将Linux内核移植到一些典型的微控制器和微处理器上,提供操作系统层面支持,以实现嵌入式系统用软件的开发。
嵌入式操作系统是嵌入式应用软件的基础和开发平台,用户的其它应用程序都建立在操作系统之上。
但嵌入式操作系统并不是简单嵌入的操作系统,它与通常意义的操作系统有所区别。
嵌入式操作系统负责嵌入式系统的全部软、硬件资源的分配和调度工作。
Linux是一套以UNIX为基础发展而来的操作系统。
自1991年诞生至今,以惊人的速度发展。
Linux在很多方面己经赶上甚至超过了很多商用的UNIX系统。
它充分利用了x86CPU的任务切换机制,实现了真正的多任务、多用户环境。
Linux对硬件配置的要求相当低,能够在4M内存的386机器上很好的运行。
而且可以支持多种处理器芯片。
在应用于嵌入式系统方面,Linux己经在许多典型的硬件平台上实现了移植,这些平台包括ARM、MIPS、PowerPC等。
随着Linux2.6内核的发布,Linux向现有主流的RTOS提供商在嵌入式系统市场提出了巨大挑战,将成为更优秀的嵌入式操作系统。
Linux2.6在内核主体中加入了提高中断性能和调度响应时间的改进,其中有三个最显著的改进:
采用可抢占内核、更加有效的调度算法以及同步性的提高。
主要研究内容
(1)建立嵌入式Linux交叉开发环境
对于嵌入式系统,目标板一般只有很小的存储空间,处理器频率也较低。
直接在这样的硬件上建立Linux系统非常困难。
嵌入式Linux交叉开发环境可以很好地解决这个难题,即实现在PC机上编译嵌入式系统要运行的程序。
(2)移植BootLoader引导程序
图1BootLoader所处层次
嵌入式Linux内核通常需要目标板上的引导程序引导来引导内核的启动,这些引导程序就是BootLoader。
BootLoder所处层次位置如下图1所示。
BootLoader在目标板上电的时候运行,主要完成开发板初始化和Linux内核引导的任务。
由于BootLoder和CPU及电路板的配置相关,不可能有通用的BootLoader,开发时需要根据具体情况进行移植。
(3)配置、编译、移植Linux内核
详细分析了Linux移植的要点,并对目前较新的2.6版Linux内核源码进行了移植、配置和编译。
(4)对文件系统进行移植到开发板。
2嵌入式Linux系统构成和软件开发环境
1.1嵌入式Linux系统的体系结构
除了硬件系统外,嵌入式Linux系统需要有下面三个基本元素:
系统引导程序BootLoader(用于设备加电后的系统定位引导)、Linux内核(内存管理、程序管理)、初始化进程。
但如果要它成为完整的操作系统并继续保持小型化还必须加上硬件驱动程序、硬件接口程序和应用程序组。
最终可用的嵌入式Linux系统体系结构如表1-1所示:
表1-1嵌入式Linux系统体系结构
应用软件
应用层
嵌入式GUI图形支持
支持层
BOOTLOADER、LINUXKERNEL、DRIVERS
系统层
嵌入式开发板实验板
硬件层
硬件层是操作系统的基础,所有软件都建立在它的基础上,系统层的BootLoader是嵌入式系统软件的最底层,是上电后运行的第一个程序,类似于PC机上的BIOS,完成对硬件的初始化和内核加载,驱动程序作为系统内核的一部分,实现操作系统内核和硬件设备之间的接口,为应用程序屏蔽硬件的细节,系统内核主要完成任务管理,调度算法等,GUI图形支持库实现对硬件的抽象、提供基本的图形接口函数和与用户实现交互,而应用软件用来实现某一具体功能。
1.2嵌入式Linux系统硬件平台
S3C6410是一个16/32位RISC微处理器,旨在提供一个具有成本效益、功耗低,性能高的应用处理器解决方案,像移动电话和一般的应用。
它为2.5G和3G通信服务提供优化的H/W性能,S3C6410采用了64/32位内部总线架构。
该64/32位内部总线结构由AXI、AHB和APB总线组成。
它还包括许多强大的硬件加速器,像视频处理,音频处理,二维图形,显示操作和缩放。
一个集成的多格式编解码器(MFC)支持MPEG4/H.263/H.264编码、译码以及VC1的解码。
这个H/W编码器/解码器支持实时视频会议和NTSC、PAL模式的TV输出。
存储控制器
S3C6410存储器包括七个存储控制器,一个SROM控制器,两个OneNAND控制器,一个NAND闪存控制器,一个CF控制器,和两个DRAM控制器。
通过使用EBI,静态存储控制器和16位DRAM控制器共享存储器端口0。
1)支持大、小端模式(通过软件选择);
2)地址空间:
包含8个地址空间,每个地址空间的大小为128M字节,总共有lG字节的地址空间;
3)除BANKO以外的所有地址空间都可以通过编程设置为8位、16位或32位访问。
BANKO可以设置为16位、32位访问;
4)8个地址空间中,6个地址空间可以用于ROM、SRAM等存储器,2个用于ROM、SRAM、SDRAM等存储器;
5)7个地址空间的起始地址及空间大小是固定的;
6)1个地址空间的起始地址和空间大小是可变的;
7)所有存储器空间的访问周期都可以通过编程配置;
8)提供外部扩展总线的等待周期;
9)SDRAM支持自动刷新和掉电模式。
2.2.2硬件系统整体结构
本论文采用的硬件平台由底板和核心板组成,核心板上使用了SAMSUNG公司的S3C6410A处理器,并集成了SDRAM,NANDFlash存储设备以及核心电压模块、实时时钟、系统跳线、系统时钟、核心板接口等;底板上提供了丰富的外设接口:
dm90O00A以太网卡接口、2个与PC机通信的UART(10M/100M)、l个LCD接口、触摸屏接口、128KB的NORFlash存储芯片、SD接口、IDE接口及USB接口等。
核心板和底板配合即构成了一个完整的硬件系统,它能够装载和运行嵌入式Linux操作系统。
也可以运行基于ARM核的其它操作系统。
图2-1配置交叉编译器PATH环境
2.3嵌入式Linux开发软件平台建立
软件开发平台是嵌入式开发的关键,嵌入式软件开发平台建立的目的是为了进行BootLoader移植、Linux内核移植以及GUI系统开发。
由于嵌入式硬件平台的存储空间有限、处理器频率较低,很难直接在嵌入式硬件式平台上建立Linux系统、安装嵌入式开发软件,因此只能采用嵌入式交叉开发环境来解决这个问题。
目前,嵌入式产品应用领域涉及移动通信、汽车、医疗、家电等很多领域。
在这些嵌入式产品上运行操作系统就成为了可能。
一直以来,很多企业花费了巨大成本研发了大量运行在PC上的软件产品。
如果将这些优秀的软件应用在嵌入式系统中,将会成为快速开发嵌入式系统,降低嵌入式产品开发成本,提高软件稳定性和安全性的重要途径。
Linux的出现正符合我们所有的要求,因为其源代码公开且免费,我们不仅可以保证操作系统中不存在任何黑洞和隐蔽的问题,而且无疑可以为企业节约一大笔开支,以最少的成本实现相同性能的产品。
所以学习基于ARM的Linux移植对于提高国产嵌入式产品的性能和降低生产成本具有重要作用。
2.3.1软件开发平台的二种平台的介绍
嵌入式Linux系统开发需要一台装有Linux操作系统的PC机,在此机器上运行交叉编译工具,Linux系统采用FC5,具体有以下几种方案:
l)采用VMWare。
VMWare是一个可运行在Windows平台的“虚拟PC”软件,它可以在一台机器上同时运行二个或更多个Windows、DOS、Linux系统。
VMWare主要的功能有:
不需要分区或重开机就能在同一台PC上使用两种以上的操作系统;完全隔离并且保护不同0S的操作环境以及所有安装在0S上面的应用软件和资料;不同的0S之间还能互动操作,包括网络、外设、文件分享以及复制粘贴功能;有复原功能;能够设定并且随时修改操作系统的操作环境,如:
内存、磁盘空间、外设等。
2)按通常的方法,在独立的分区上安装Linux操作系统。
但是安装2个系统需要用的grub,需要配置修改启动项,而且删除此Linux操作系统很麻烦。
对以上二种方案进行了尝试,得出以下结论:
对于内存不小于512M和主频较高的PC机适合使用VMWare,VMWare默认使用PC机一半的内存,内存较小PC机将会运行很慢,所以配置相对较低的PC机不适合采用此方案。
Cygwin虽运行在Windows平台,但其操作界面是一个控制台,没有实现图形操作界面,所以用起来不是很方便。
移植资料的编译是在本人电脑上完成的,编译的所用的是第1种方案,移植内容因使用的开发主机是机房已经装好的第2种系统方案,所以最后采用了方案2,即在新的分区上安装了Linux操作系统。
2.2.3准备交叉编译工具
由于开发主机的x86体系结构和目标机的ARM体系结构的差别,在开发主机上能运行的程序不能在目标机上运行,为了使在开发主机上编译通过的程序能够在目标机上运行,必须使用交叉编译工具链来编译程序。
构建交叉编译环境有很多个版本的交叉编译器可供选择,如2.95.3、3.3.2、4.3.2等等,最终选用了4.3.2版编译器编译内核而使用的3.3.2编译的U-Boot,因为很多商用软件都是在该环境下编译的,采用其它版本编译工具,有可能编译不通,会出现错误。
将cross-4.3.2-eabi.tar.bz2解压并安装到/usr/local/usr/arm/目录下。
命令如下:
#tar-jxvfcross-4.3.2-eabi.tar.bz2
图2-2配置交叉编译器PATH环境
在/etc/profile中修改PATH环境变量,添加工具链的路径。
执行#vim/etc/profile
exportPATH=/usr/local/arm/4.3.2
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 参考资料