android开发者需要了解的芯片知识

Jason_Lee155 Jason_Lee155     2023-03-09     621

关键词:

作为 Android 开发者,在平时的开发中,免不了要处理 arm、armv7a、armv8a、x86 等架构适配,那什么是芯片架构,armv7a中的a指什么。今天,抱着以下问题,让我们撩开手机开发中芯片的一些理论知识。

一、CPU

接触过计算机的朋友们都知道CPU的含义,就是中央处理器,是负责计算机主要运算任务的组件。一般我们把CPU比喻为人的大脑。而了解略深的用户会听说CPU有x86、ARM等分类,前者主要用于PC等大型设备,而后者主要用于手机平板等小型设备。

那么这里的x86、ARM指的是什么呢?x86、ARM指的是芯片的设计架构,除此之外,还有一种MIPS也比较出名。

二、指令集

CPU执行计算任务时都需要遵从一定的规范,程序在被执行前都需要先翻译为CPU可以理解的语言。这种规范或语言就是指令集(ISA,Instruction Set Architecture)。程序被按照某种指令集的规范翻译为CPU可识别的底层代码的过程叫做编译(compile)。x86、ARM v8、MIPS都是指令集的代号。指令集可以被扩展,如x86增加64位支持就有了x86-64。厂商开发兼容某种指令集的CPU需要指令集专利持有者授权,典型例子如Intel授权AMD,使后者可以开发兼容x86指令集的CPU。

和人类的语言类似,语言可以有很多个,但是主流的却只有那么几个。下面,我们介绍一下ARM、x86、MIPS、PowerPC、RISC-V等主流的几个指令集。

2.1 ARM

ARM是高级精简指令集的简称(Advanced RISC Machine),它是一个32位的精简指令集架构。由于节能的特点,ARM处理器非常适用于行动通讯领域,符合其主要设计目标为低耗电的特性。

ARM家族占了所有32位嵌入式处理器75%的比例,使它成为占全世界最多数的32位架构之一。ARM处理器可以在很多消费性电子产品上看到,从可携式装置(PDA、移动电话、多媒体播放器、掌上型电子游戏,和计算机)到电脑外设(硬盘、桌上型路由器)甚至在导弹的弹载计算机等军用设施中都有他的存在。在此还有一些基于ARM设计的派生产品,重要产品还包括Marvell的XScale架构和德州仪器的OMAP系列。

ARM处理器的特点是: -体积小、低功耗、低成本、高性能——ARM被广泛应用在嵌入式系统中的最重要的原因;支持Thumb(16位)/ARM(32位)双指令集,能很好的兼容8位/16位器件;大量使用寄存器,指令执行速度更快;大多数数据操作都在寄存器中完成;寻址方式灵活简单,执行效率高;指令长度固定;Load_store结构:在RISC中,所有的计算都要求在寄存器中完成。而寄存器和内存的通信则由单独的指令来完成,而在CSIC中,CPU是可以直接对内存进行操作的。流水线处理方式

目前,ARM 公司本身并不靠自有的设计来制造或出售 CPU ,而是将处理器架构授权给有兴趣的厂家,比如TI (德州仪器)、Samsung(三星)、Freescale(飞思卡尔)、Marvell(马维尔)、Nvidia(英伟达)。ARM 提供了多样的授权条款,包括售价与散播性等项目。对于授权方来说,ARM 提供了 ARM 内核的整合硬件叙述,包含完整的软件开发工具(编译器、debugger、SDK),以及针对内含 ARM CPU 硅芯片的销售权。对于无晶圆厂的授权方来说,其希望能将 ARM 内核整合到他们自行研发的芯片设计中,通常就仅针对取得一份生产就绪的智财核心技术(IP Core)认证。对这些客户来说,ARM 会释出所选的 ARM 核心的闸极电路图,连同抽象模拟模型和测试程式,以协助设计整合和验证。需求更多的客户,包括整合元件制造商(IDM)和晶圆厂家,就选择可合成的RTL(暂存器转移层级,如 Verilog)形式来取得处理器的智财权(IP)。

借着可整合的 RTL,客户就有能力能进行架构上的最佳化与加强。这个方式能让设计者完成额外的设计目标(如高震荡频率、低能量耗损、指令集延伸等)而不会受限于无法更动的电路图。虽然 ARM 并不授予授权方再次出售 ARM 架构本身,但授权方可以任意地出售制品(如芯片元件、评估板、完整系统等)。商用晶圆厂是特殊例子,因为他们不仅授予能出售包含 ARM 内核的硅晶成品,对其它客户来讲,他们通常也保留重制 ARM 内核的权利。

2.2 x86/Atom

x86或80x86是英代尔Intel首先开发制造的一种微处理器体系结构的泛称。x86架构是重要地可变指令长度的CISC(复杂指令集电脑,Complex Instruction Set Computer)。

Intel Atom(中文:凌动,开发代号:Silverthorne)是Intel的一个超低电压处理器系列。处理器采用45纳米工艺制造,集成4700万个晶体管。L2缓存为512KB,支持SSE3指令集,和VT虚拟化技术(部份型号)。

Atom处理器系列有6个型号,全部都是属于Z500系列。它们分别是Z500、Z510、Z520、Z530、Z540和Z550。最低端的Z500内核频率是800MHz,FSB则是400MHz。而最高速的Z550,内核频率则有2.0GHz,FSB则是533MHz。从Z520开始,所有的处理器都支持超线程技术,但只增加了不到10%的耗电。双内核版本为N系列,依然采用945GC芯片组。双内核版本仍会支持超线程技术,所以系统会显示出有4个逻辑处理器。这个版本的两个内核并非采用本地设计,只是简单的将两个单内核封装起来。

2.3 MIPS

MIPS是世界上很流行的一种RISC处理器。MIPS的意思是“无内部互锁流水级的微处理器”(Microprocessor without interlocked piped stages),其机制是尽量利用软件办法避免流水线中的数据相关问题。它最早是在80年代初期由斯坦福(Stanford)大学Hennessy教授领导的研究小组研制出来的。MIPS公司的R系列就是在此基础上开发的RISC工业产品的微处理器。这些系列产品为很多计算机公司采用构成各种工作站和计算机系统。

MIPS技术公司是美国著名的芯片设计公司,它采用精简指令系统计算结构(RISC)来设计芯片。和英特尔采用的复杂指令系统计算结构(CISC)相比,RISC具有设计更简单、设计周期更短等优点,并可以应用更多先进的技术,开发更快的下一代处理器。MIPS是出现最早的商业RISC架构芯片之一,新的架构集成了所有原来MIPS指令集,并增加了许多更强大的功能。MIPS自己只进行CPU的设计,之后把设计方案授权给客户,使得客户能够制造出高性能的CPU。

2.4 RISC-V

RISC-V是一个基于精简指令集(RISC)原则的开源指令集架构(ISA)。V表示为第五代RISC.与大多数指令集相比,RISC-V指令集可以自由地用于任何目的,允许任何人设计、制造和销售RISC-V芯片和软件。RISC-V被认为是继x86、ARM之后的第三大CPU架构。

RISC-V包括三大优势: - 模块化:RISC-V将不同的部分以模块化的方式组织在一起,这种模块化是x86与ARM架构所不具备的。 - 指令数目少:受益于短小精悍的架构以及模块化的特性,RISC-V架构的指令数目非常的简洁。 - RISC-V全面开源,且具有全套开源免费的编译器、开发工具和软件开发环境,大大降低指令集修改的门槛。

RISC-V作为新兴架构,以其精简的体量,未来的IoT(物联网)领域中能取得绝对的优势。IoT的“碎片化”需求,IoT芯片设计速度要快、成本要低、能量身定制。同时嵌入式市场具备少量多样的特点,在各细分应用场景并未形成真正壁垒,架构的选择五花八门。以上原因成就了RISC-V绝佳的突破口。RISC-V的开源能降低成本,也能让用户自由修改,可定制化,RISC-V生态与敏捷设计同源。 目前,国内外已有多家芯片企业投入大量资金研发RISC-V在IoT领域的应用。2015年,RISC-V基金会正式成立,吸引了包括英伟达、NXP、三星、Microsemi在内等企业的加入。迄今为止,该基金会已吸引了全球28个国家327多家会员加入。目前,阿里、亚马逊等都有相关芯片研制出,甚至就连苹果A4/A5、AMD速龙/Zen架构之父JimKeller也创业投身RISC-V。

三、架构

我们经常说的单核、双核、四核,以及主频等概念,说的都是CPU的一些属性。我们知道,CPU的基本组成单元即为核心(core)。多个核心可以同时执行多件计算任务,前提是这些任务没有先后顺序。

核心的实现方式被称为微架构(microarchitecture)。微架构的设计影响核心可以达到的最高频率、核心在一定频率下能执行的运算量、一定工艺水平下核心的能耗水平等等。此外,不同微架构执行各类程序的偏向也不同。例如,90年代末期Intel的P6微架构就在浮点类程序上表现优异,但在整数类应用中不如同频下的对手。

常见的代号如Haswell、Cortex-A15等都是微架构的称号。注意微架构与指令集是两个概念:指令集是CPU选择的语言,而微架构是具体的实现。i7-4770的核心是Haswell微架构,这种微架构兼容x86指令集。

对于兼容ARM指令集的芯片来说这两个概念尤其容易混淆:ARM公司将自己研发的指令集叫做ARM指令集,同时它还研发具体的微架构如Cortex系列并对外授权。但是,一款CPU使用了ARM指令集不等于它就使用了ARM研发的微架构。Intel、高通、苹果、Nvidia等厂商都自行开发了兼容ARM指令集的微架构,同时还有许多厂商使用ARM开发的微架构来制造CPU。通常,业界认为只有具备独立的微架构研发能力的企业才算具备了CPU研发能力,而是否使用自行研发的指令集无关紧要。微架构的研发也是IT产业技术含量最高的领域之一。

3.1 ARM架构

ARM CPU家族主要包括如下系列,其中需要记住的有三个,分别是Cortex-A系列、Cortex-R系列和Cortex-M系列。

  • Cortex-A系列:主要是面向应用的处理器。Cortex-A系列含有整数运算的指令集架构和浮点数运算的指令集架构,并且支持单指令多数据流高性能计算指令,Cortex-A系列是ARM家族中最丰富的指令集。Cortex-A系列在手机端开发领域被广泛使用。ARMv7-A是指令集为32位的Cortex-A架构,ARMv8-A是对ARMv7-A的扩充,现在使用ARM架构的手机大多使用的是64位的ARMv8-A架构,如Cortex-A57、Cortex-A53以及新发布的Cortex-A76架构。同时,ARM公司也在不断地扩展ARMv8-A指令架构,先后发布了ARMv8.1、ARMv8.2、ARMv8.4和ARMv8.5。Android手机场景多应用了Cortex-A系列,我们Android开发里面的armv7a的a就是代表了Cortex的a系列
  • Cortex-R系列:是ARM家族中体积最小的处理器。Cortex-R系列处理器主要用于对实时性要求较高的硬件平台,比如硬盘、各类控制器等。Cortex-R系列处理器支持ARM、Thumb和Thumb-2指令集。
  • Cortex-M系列:主要是针对超低功耗和核心最小面积进行设计的,所以目前Cortex-M系列的实时操作系统RTOS仅支持32位Thumb的指令集。ARM Cortex-M系列使用Thumb-2指令集,这样可以减少一定的指令代码量,从而减少内存需求,进而就可以更加高效地利用缓存。并且,Thumb-2指令集兼容16位的Thumb指令。
  • 早期处理器SecurCore系列:它们是提供安全解决方案的架构。SecurCore架构是一个针对安全的解决方案,早期处理器SecurCore被用在少量单片机中。

3.2 主流CPU供应商及应用手机

在手机端我们重点关注高通、苹果、联发科、华为、三星几家公司设计的芯片,因为它们设计的ARM芯片架构已经可以覆盖主流机型。

高通

高通主要的骁龙系列,目前8XX系列属于高端的骁龙系列,6XX系列定位于中端市场。不过高中端市场也会有交叉,并不是绝对的。骁龙芯片被大量流行手机搭载,包括vivo、OPPO、小米等品牌手机。

骁龙 888基于三星5nm 工艺制成 , CPU 采用 1 x 2.84GHz (ARM最新 Cortex X1 核心)+3 x 2.4GHz (Cortex A78)+4 x 1.8GHz (Cortex A55),GPU 为 Adreno 660,采用 X60 5G modem 基带,支持 WiFi 6E、Bluetooth 5.2。下面是骁龙888的架构图。

市面上我们看到的小米11 Pro,魅族18 Pro/魅族18等就是用了骁龙888, 而魅族17 Pro使用的是骁龙865。

联发科(MTK)

中国的芯片研发公司,以中低端芯片为主。联发科的芯片设计业务已经深度布局家庭娱乐、手机平板和IoT、便携式电子产品等多个领域。我们熟知的索尼,TCL、海尔等电视都有使用联发科芯片;同时它的芯片方案被亚马逊、Google、阿里等国内外一线品牌采用,这三家在智能音箱业务上占据了全球销量前三的位置,市场占有率高达70%以上,天猫精灵搭载的就是联发科的芯片。

三星

旗下业务众多,芯片只是其中一项,手机也是其重要业务之一,从零部件如芯片、屏幕、存储、电池等,到手机整机都可以制作。Exynos8895是三星发布的一款偏高端的芯片,它的中端芯片有Exynos7870等。三星芯片在中国移动互联网市场的占比较少。国内市场三星手机大部分并不是使用的三星芯片,而是高通。

苹果

苹果手机中的芯片也都是ARM架构的,目前苹果公司已经有了很强的芯片设计能力。苹果A系列的CPU频率并不是很高。苹果的芯片是自产自销的,芯片架构会直接应用在自家的苹果手机上,所以更加注重性能的提升,而对芯片成本的考量相对少一些,使用了大的芯片面积来换取高性能和低功耗,这一点和大部分同行业公司有显著差别。在苹果A10处理器上,流水线技术使用了六发射,可以同时对六条流水线进行处理,同时A10片上缓存达到了2MB。通过A10可以看到,苹果公司的芯片架构成本比其他公司的更高,综合性能也非常好。从Geekbench跑分也可以看到苹果芯片的性能优势,A10的性能比ARM 73标准架构的性能高75%以上。

今年苹果新推出的M1 Pro与M1 Max,M1Pro款芯片内存带宽最高可以达到200 GB每秒,支持32 GB内存。材料是五纳米工艺具有337根晶体管,具有10个核心的中央处理器,处理速度与上一个芯片相比的话,速度更是提高了70%左右。

华为海思

1991年,华为成立了自己的ASIC设计中心,专门负责设计「专用集成电路」(Application-specific integrated circuit,ASIC)。当时的华为,创立仅仅四年,员工只有几十人,资金非常紧张,一度濒临倒闭的边缘。奠定基业的C&C08数字程控交换机,还是三年后的事情。

随后的1993年,ASIC设计中心成功研发出华为第一块数字ASIC。并在1996年、2000年、2003年,研发成功十万门级、百万门级、千万门级ASIC。总的来说,每一步都算是沉稳有力。时间到了2004年10月,这时的华为,实力已今非昔比,销售额达到462亿人民币,员工人数也达到数万人。有了一定底气的华为,在ASIC设计中心的基础上,成立了深圳市海思半导体有限公司,也就是我们现在经常说的——【华为海思】。

华为手机端的麒麟芯片是不对外销售的,所以截至2019年5月,市面上可体验到华为芯片性能的设备只有华为手机。华为的芯片设计能力的提升速度可谓有目共睹。从麒麟970开始,华为将高性能的专用神经网络芯片NPU带进了SoC。

四、芯片

4.1 什么是芯片

说到芯片,别人经常会问我们一个问题:麒麟芯片是国产吗?

要回答这个问题,我们必须先搞清楚芯片半导体生产过程。半导体芯片生产主要分为 IC(Integrated Circuit 集成电路) 设计、 IC 制造、 IC 封测三大环节以及设计、晶圆制造、EDA工具、芯片原材料、封装、测试、设备七大板块,如下图。

- IC 设计主要根据芯片的设计目的进行逻辑设计和规则制定,并根据设计图制作掩模以供后续光刻步骤使用。 - IC 制造实现芯片电路图从掩模上转移至硅片上,并实现预定的芯片功能,包括光刻、刻蚀、离子注入、薄膜沉积、化学机械研磨等步骤。 - IC 封测完成对芯片的封装和性能、功能测试,是产品交付前的最后工序。

芯片制作是一个复杂过程,如果单从真个链路上讲,麒麟只是其中的一环,芯片自然谈不上纯国产,如果从某一个环节的来讲,自己设计是有自己东西的。

麒麟主要是基于ARM的RISC架构进行SOC的开发,所谓SOC就如联想设计电脑,就是把一些功能芯片整合在一起,包括CPU、GPU、闪存、基带等等。而要将这些核芯整合在一起,本身就需要非常强大的设计能力。

如上图所示的华为麒麟960来说,黄色部分是华为不能设计的核芯。对于麒麟985华为已经能自研GPU了。在SOC大构架下,这种设计能力,很多公司能在短时间内得以提升,真正考验芯片设计能力的是核芯层次的微架构设计。在芯片设计方面,华为和龙芯算是国内的佼佼者。

4.2 芯片的制作

1, 芯片设计

芯片行业的设计领域,指的是规格制定、架构设计到tape-out的所有流程。芯片在晶圆厂生产之前的所有流程都属于设计领域。

  • 仅从事芯片设计,没有其他生产、封装、测试业务的公司称之为fabless或者design house(国内的华为海思、紫光展锐、中兴微电子、比特大陆、寒武纪、汇顶科技、全志,美国的高通、博通等)。
  • 既有芯片业务,又有芯片晶圆制造业务的公司,称为IDM(Integrated Device Manufacture),国内的士兰微,美国的英特尔,韩国的三星、海力士,意大利的意法半导体等。

2,晶圆制造

在芯片行业,把仅从事晶圆制造的企业称之为Foundry(专门负责生产、制造芯片的厂家)。把单晶硅圆柱切片,就得到了圆形的硅片,因此就叫“晶圆”。

晶圆加工的大概流程如下:

  1. 首先在晶圆上涂一层感光材料,这材料见光就融化,这里就用到了我们常听到的光刻机,它可以用非常精细的光线,在感光材料上刻出图案,让底下的晶圆裸露出来。
  2. 然后,用等离子体这类东西冲刷,裸露的晶圆就会被刻出很多沟槽,这套设备就叫刻蚀机。
  3. 再用离子注入机在沟槽里掺入磷元素,加热退火处理,就得到了一堆N型半导体;用离子注入机撒上硼,就有了P型半导体。

上图晶圆上的小方块就是芯片,一块晶圆可以做多个芯片。芯片放大了看就是成堆成堆的电路。

3. EDA工具

EDA是Electronic design automation(电子设计自动化)的英文简称。EDA工具是指利用计算机辅助设计软件,来完成超大规模集成电路芯片的功能设计、综合、验证、物理设计等流程的设计方式。在芯片行业,把提供EDA工具的企业称之为EDA设计服务供应商。

目前EDA工具厂商的三巨头——cadence、synopsys、mentor公司垄断了绝大多数市场份额,其他EDA厂商很多都是在三巨头的阴影之下,夹缝之中求生存。

4. 芯片原材料

芯片生产需要大量的原材料,比如硅晶圆、光刻胶光刻胶等,其中需求量最大的当属硅晶圆,硅晶圆在芯片制造材料中占比最高,达到37%。而硅晶圆的主要原材料是硅,硅的主要评判指标是纯度,如果硅原子之间有一堆杂质,那电子就很难在满轨道和空轨道之间跑顺畅。而纯度越高制造难度越大。用于太阳能发电的高纯硅要求99.9999%,这玩意儿全世界超过一半是中国产的,早被玩成了白菜价。芯片用的电子级高纯硅要求99.999999999%(别数了,11个9),几乎全赖进口,直到2018年江苏的鑫华公司才实现量产。

5. 封装

芯片封装,简单点来讲就是把Foundry生产出来的集成电路裸片放到一块起承载作用的基板上,再把管脚引出来,然后固定包装成为一个整体。

6. 测试

测试的话包括CP测试、FT测试等等,包括了芯片的功能测试、可靠性测试、老化测试等等。芯片行业技术难度最低的就是封装和测试,这部分国内和国外已经没有太大差距。

7. 设备

芯片行业的设备主要有晶圆制造过程中需要使用的光刻机、蚀刻机,测试过程中需要使用的ATE测试基台。阿斯麦是全球唯一的高端光刻机生产商,每台售价至少1亿美金,而且产量还不高,无论是台积电、三星,还是英特尔,谁先买到阿斯麦的光刻机,谁就能率先具备7nm工艺。

中国的刻蚀机比光刻机要好很多,16nm刻蚀机已经量产运行,7-10nm刻蚀机也在路上了,所以美国在刻蚀机上没有做太多限制。离子注入机又比较差了,70%的市场份额是美国应用材料公司的,2017年8月终于有了第一台国产商用机,水平不做评价。

涂感光材料得用“涂胶显影机”,日本东京电子公司拿走了90%的市场份额。即便是光刻胶这些辅助材料,也几乎被日本信越、美国陶氏等垄断。

android开发者需要了解的芯片知识

作为Android开发者,在平时的开发中,免不了要处理arm、armv7a、armv8a、x86等架构适配,那什么是芯片架构,armv7a中的a指什么。今天,抱着以下问题,让我们撩开手机开发中芯片的一些理论知识。一、CPU接触... 查看详情

芯片-模组-开发板-软件开发包sdk(softwaredevelopmentkit)的关系(软件开发人员必须了解的硬件知识!@)

使用的芯片相同,但不同模组的Flash大小、天线的材质、模组尺寸是不同的。是的,芯片到模组的演变经历了“定制化、专用化”的过程。模组最终会嵌入到电视、电冰箱、空调等不同的产品中去,对模组的存储空间... 查看详情

linux驱动能搞芯片设计嘛

...序,用于操作设备硬件的编程代码。因此,编写Linux驱动需要一定的硬件知识,特别是对要操作的设备硬件的深入了解和理解。芯片设计是一门高度专业化和技术密集的领域,它需要掌握多项知识和技能,如电子工程、计算机体... 查看详情

嵌入式开发人员,这些romflash硬盘技术知识,必须要了解

在嵌入式开发中,如果芯片内部有Flash,应用程序通常保存在芯片内部FLASH中,比如Cortex-M系列的单片机;如果芯片内部没有Flash,则应用程序通常保存于外部的NANDFLASH中,比如Cortex-A系列的芯片。这些Flash都... 查看详情

软件定义,芯片增强;开发者需要了解哪些技术创新提升生产力?

...有行业谋求业务创新,降本增效的共识。过去不具备开发者技术力量的传统公司都在转型成为技术公司,AI、物联网等新技术在各行业广泛应用,除了IT技术人员,还有更多公民开发者加入行业应用开发大军。同时... 查看详情

java开发安卓游戏和软件需要java了解多少?

...phics和图像类Image等开源的游戏引擎:AndEngine,Angle目前的android流行的框架还包括:cocos2d,unity3d等都是开发游戏相关的内容如果是java软件的话,还需尽可能的了解javaee的相关内容同时需要了解数据库的学习,比如sqlite等嵌入式数... 查看详情

安卓开发工程师都需要会啥?求指导

Android工程师是移动应用开发者,希望将自己的应用移植到该平台上或者在该平台上开专发应用属。主要包括:Android应用软件开发工程师、Android游戏程序员、Android网络游戏程序员、Android软件移植工程师、Android嵌入式设备软件开... 查看详情

需要了解的一些基本开发知识

staticstatic修饰变量1.static修饰的函数和变量只有当前文件能有访问2.static修饰的变量:有两种变量存储在静态存储区,全局变量和static变量。而存储在静态数据区的变量会在程序刚开始运行时就完成初始化,也是唯一的一次初始... 查看详情

嵌入式驱动开发要具备哪些方面的知识

我是最近才接触嵌入式的,想问一下嵌入式驱动开发需要除了C,C++还有哪方面的知识,希望高手指点。还有是驱动开发不是应用开发。谢谢大家了。嵌入式驱动开发需要了解的知识大概有以下几类:1嵌入式操作系统驱动框架。每... 查看详情

大前端开发者需要了解的基础编译原理和语言知识(代码片段)

转自:https://yq.aliyun.com/articles/180879 在我刚刚进入大学,从零开始学习C语言的时候,我就不断的从学长的口中听到一个又一个语言,比如C++、Java、Python、JavaScript这些大众的,也有Lisp、Perl、Ruby这些相对小众的。一般来说,... 查看详情

测试开发:你所需要掌握了解的性能测试知识(代码片段)

...会倍感压力。对于我来说更是如此,想做好性能测试需要庞大的知识体系,不断实践所总结的经验教训更是弥足珍贵。而且每个人对性能测试的理解都有独到的地方,此次有幸参加全栈测开训练营在狂师老师的指导下... 查看详情

android开发者们都需了解的组件化开发知识点!!!

以前的Android开发大多用的中心化管理思想,将相同的资源集中进行管理。但随着项目的发展,单一模块开发弊端渐显:集中管理的资源越来越多,多人开发也越来越麻烦,时常牵一发而动全身。尤其是在大公... 查看详情

成为 Flutter 开发者需要多少 Android 原生知识?

】成为Flutter开发者需要多少Android原生知识?【英文标题】:Howmuchandroidnativeknowledgerequiredtobeflutterdeveloper?【发布时间】:2022-01-1614:25:54【问题描述】:我即将开始flutter,我不知道androidnative,有人说在开始flutter之前需要androidnativ... 查看详情

android插件化和热修复知识梳理

...#xff0c;插件化和热修复的框架似乎已经日趋成熟,许多开发者也把这两项技术运用到实际开发协作和正式的产品当中。因此,我们势必需要了解一下这两门技术。插件化和热修复首先需要明确的一点,插件化和热修复... 查看详情

zigbee2530芯片学习背景了解及zigbee开发平台搭建

一、了解Zigbee基础知识   1)三种节点、三种角色——cc2530    协调者coordinator:(只有一个)从它开始启动,分派网络地址,允许设备加入或退出,传输数据报。    路由器rooter:大面积网... 查看详情

初学web开发需要掌握哪些知识

...ootstrap、 Fbootstrapp、BootMetro、Gumby、IVORY、Kube等,都是需要慢慢接触的。另外,做前端开发可能还会运用到SEO、DOM、BOM、Ajax等技能,网站性能优化和服务器端的基础知识也是需要了解的。学前端可能会很难,但世界上没有学... 查看详情

搞芯片开发要学会啥课程

...计、集成、应用及计算机模拟信息系统的基本能力;4、了解信息产业的基本方针、政策和法规,了解企业管理的基本知识;5、了解电子设备和信息系统的理论前沿,具有研究、开发新系统、新技术的初步能力;6、掌握文献检索... 查看详情

android切图适配知识点汇总

参考技术A对于在工作中没有接触过安卓版本app,或是面试的时候会被问到安卓分辨率等问题,可以通过本文对安卓切图有所了解。我在以往的工作中也没有接触过安卓设计等一系列问题,但是看完一些文章后,大致对安卓分辨... 查看详情