PC/104平台嵌入式Linux系统核心定制方法

发布者:明石轩最新更新时间:2008-11-26 来源: 电子设计应用关键字:Linux文件系统  PC  虚拟文件系统  定制  floppy  MTTR  内核配置  代码编译  spool  声卡驱动 手机看文章 扫描二维码
随时随地手机看文章

  

  摘 要:基于PC/104平台的嵌入式Linux技术在海洋自动观测系统中具有广泛的应用前景,Linux核心定制方法的研究是嵌入式Linux系统研制的关键工作。本文结合PC/104平台嵌入式Linux系统的研制,详细论述了Linux内核和文件系统的定制方法。

  关键词:Linux;内核;文件系统;

  本文就如何对Linux系统的核心实现定制进行论述,主要内容包括Linux内核部分和文件系统,系统定制的硬件平台是PC/104单片机。之所以将Linux内核定制、文件系统定制单独讨论,是因为在基于任何平台的Linux系统定制过程中,其内核和文件系统的定制工作都具有相似的特征和相似的过程。

  在基于PC/104平台的嵌入式Linux研制过程中,进行核心定制的主要目的是从需求出发使系统最大程度地满足应用的需要、最大程度地适应系统硬件平台、最优化地支持系统外围设备和应用程序,并且尽量减少对系统资源的占用、减少系统功耗,增强系统的安全性、稳定性、可靠性,另外使系统真正地实现产权自主化。

  内核定制

  一般操作系统的内核从体系结构角度可以划分为两种:微内核体系结构、单内核体系结构。微内核体系结构只在内核中包括了一些基本的内核功能,其它部分在用户内存空间运行,这种结构需要在各层之间进行调用,因此会有一定的消耗,使执行效率不如单内核体系结构。Linux采用单内核体系结构,内核的所有部分都集中在一起,这样能使系统的各部分直接沟通,有效地缩短任务之间的切换时间,提高了系统的响应速度,实时性好并提高了CPU的利用率,但在系统比较大的时候体积也比较大,与嵌入式系统容量小、资源有限的特点不符合,因此需要进行非常精细的定制以适应嵌入式系统的需要。

  内核版本

  Linux的源程序是完全公开的,任何人只要遵循GPL,就可以对内核加以修改并发布给他人使用。Linux的开发采用的是双树系统。一个树是稳定树(stable tree),另一个树是非稳定树(unstable tree)或称开发树(development tree)。一些新特性、实验性改进等都将首先在开发树中进行,如果在开发树中所做的改进也可以应用于稳定树,那么在开发树中经过测试以后,在稳定树中将进行相同的改进。一旦开发树经过了足够的发展,开发树就会成为新的稳定树。开发树就体现在源程序的版本号中;源程序版本号的形式为x.y.z,对于稳定树来说,y是偶数;对于开发树来说,y比相应的稳定树大一(是奇数)。到目前为止,稳定树的最高版本是2.4.21,开发树的最新版本是2.5.73。本项目采用的内核版本是2.2.20,选择2.2.20版本内核的主要原因有:

  a.版本为2.0及以前内核中的设备驱动不如2.2版本的全面;

  b.版本为2.2的内核增加了很多新特性;

  c.新的版本为2.4的内核对PC/104的CPU块支持不好;

  d.由于不明原因版本为214的内核对PC/104 ;

  e.版本为2.4内核相对庞大,编译后的内核文件也相对较大;

  f.版本为2.2的内核已完全能够满足本项目的需要。

  目前,大多数面向数据采集的嵌入式Linux研制工作都是基于版本2.0/2.2内核进行的。实际上,内核版本的提升,其复杂度也随之升高,也会给嵌入式系统的定制工作带来很多的困难。

  内核设置

  内核设置工作可以通过直接修改内核源代码中的Make file文件、Config.in文件和内核源代码根目录下的.config文件来完成。内核源代码中的每个目录都有各自的用途,每个子目录下也都有相应的Make file文件。例如,在目录drivers/block/ Config.in文件中有如下语句:[page]

  if[“$CONFIG_BLK_DEV_HD_DE”=

  “y”-o“$CONFIG_BLK_DEV_HD_ONLY”=

  “y”];then

  define_boolCONFIG_BLK_DEV_HDy

  else

  define_boolCONFIG_BLK_DEV_HDn

  fi

  这段语句的作用是定义在块设备中DE块设备驱动可以被编译在内核中也可以被编译成内核模块。采用修改配置文件的方式设置内核比较复杂,而且容易出现错误,但是对深入剖析和理解内核帮助很大。比较有效的方式还是直接利用Linux内核提供的工具进行内核设置。在Linux源代码目录下,Linux内核设置命令是:

  # make menu config

  命令执行后会显示一个字符型菜单配置环境,在该环境中有以下选项,通过这些选项设置可以定制Linux内核的各项功能,并对内核实现裁减。下面对主要设置选项进行介绍:

  (1) Code maturity level options代码成熟等级。此处只有一项:prompt for development and/or incomplete code/drivers,如果要试验现在仍处于实验阶段的功能,就必须把该项选择为Y了;否则可以把它选择为N。在这部分,设定是否允许内核的一些试验选项被使用。

  (2)Load able module support对可加载模块的支持。可加载模块码不是内核的一部分,但是当需要它的时候,可以被同内核一起加载并使用。如果将内核代码编译成可加载模块,可以使内核更小,而且更稳定。但是需要注意的是,如果将文件系统代码编译为可加载模块,将使内核无法读取文件系统,因此在启动的时候内核无法加载配置文件。

  这里面有3项:

  Enable loadable module support:提供内核支持;

  Set version information on all modulesymbols:设置所有模块的版本信息;

  Kernel module loader:让内核在启动时有自己装入必需模块的能力。

  (3)Processor type and features

  CPU类型选项。可以选择处理器的类型,通常“/dev/cpu”选项更高级。

  Processor family:根据应用情况选择CPU类型。

  High Memory Support:大容量内存的支持。可以支持到4G、64G,只有当计算机有超过1GB内存(不是磁盘空间)时才是必须的。 [page]

  Mathe mulation:协处理器仿真。如果计算机是386或486SX的CPU,则须打开该选项,因为这些CPU没有Linux需要的浮点运算单元(Math Emulation,也称数学协处理器),所以必须选择该选项。

  MTTR support: MTTR支持选项允许在PCI或者AGP总线众进行更快速的通讯。

  Symmetric multi-processing support:对称多处理支持。

  (4)Generalsetup

  常规选项设置。在这里可以制定特定的内核常规选项,比如网络支持。网络支持是Linux内核的重要组成部分,这些选项通常是打开的。现在的Linux发行版以ELF格式作为它们的“内核核心格式”,这是不同系统库(system libraries)的标准格式。“ELF”是“a1out”格式的继承,几乎所有Linux程序都使用ELF库,有些老的程序仍然需要a1out格式支持。主要选项有:

  Networking support:网络支持。

  PCI support: PCI支持。

  PCI accessmode: PCI存取模式。可供选择的有BIOS、Direct和Any。

  Support fo rhot-pluggabel devices:热插拔设备支持。但Linux支持的不是太好,可不选。

  PCMCIA/CardBus support: PCMCIA CardBus支持。有PCMCIA就必选了。

  System VIPC: 允许程序通信和同步。

  BSD Process Accounting:保持诸如进程结束时产生的错误代码的。

  Sysctl support:允许程序修改某些内核选项而不需要重新编译内核或者重新启动计算机。

  以上3项是有关进程处理/IPC调用的,主要就是System V和BSD两种风格。如果不是使用BSD, 可以按照缺省选择。 Power Marcha gem ent support:电源管理支持。Advanced Power Management BIOS support: 高级电源管理BIOD支持。

  (5)Memory Technology Device(MTD)

  MTD设备支持。这个选项使Linux可以读取闪存卡(Flash Card)之类的存储器,2.4版本内核

  开始支持DOC。 [page]

  (6)Paralle lport support并口支持。

  (7)Plug and Play configuration即插即用支持。

  (8)Block devices块设备支持。

  子选项如下:

  Normal PC floppy disk support:普通PC软盘支持。

  XT hard disks upport:XT硬盘支持

  Mulex DAC960/DAC1100 PCI RAID

  Controller support: RAID镜像选项。

  Loopback device support: DOC要求有这个支持;

  Network block device support:网络块设备支持。

  Logical volume manager(LVM) support:逻辑卷管理支持。

  Multiple devices driver support:多设备驱动支持。

  RAM disk support: RAM盘支持。

  (9)Networking options网络选项。

  Packet socket:网络包套接口。

  Kernel/User netlin ksocke:内核与用户进程双向通信。

  Network firewalls:防火墙支持。

  UNIX domain sockets:UNIX的socket。

  TCP/IP networking:TCP/IP支持。

  The IPX protocol:IPX协议支持。

  (10)Telephony Support

  电话支持。Linux下可以支持电话卡,这样就可以在IP上使用普通的电话提供语音服务了。电话卡和modem没有任何关系。 [page]

  (11)ATA/DE/MFM/RLL support

  有关各种接口的硬盘/光驱/磁带/软盘支持。DOC不需要该选项,CFC需要选择其中的部分选项。

  (12)SCSI supportSCSI设备的支持。

  (13)IEEE 1394(FireWire)support

  要Fireware硬件来提高串行总线的性能。

  (14)I2O devicesupport

  需要I2O接口适配器才能支持,在智能Input/Output(I2O)体系接口中使用。

  (15)Network device support

  网络设备支持。列出常见网卡的驱动程序。

  (16)Amateur Radio support

  配置业余无线广播。

  (17)IrDA(infrared) support

  红外支持。

  (18)ISDN subsystem

  ISDN上网支持。

  (19)OldCD-ROM drivers(notSCSI、notIDE)非SCSI/DE口的光驱。

  (20)Character devices

  字符设备。其中有:

  I2C support: I2C是Philips极力推动的微控制应用中使用的低速串行总线协议。如果要选择下面的Video For Linux,该项必选。

  Mice:鼠标。现在可以支持总线、串口、PS/2、C&T82C710 mouseport、PC110 digitizerpad。

  Joysticks:手柄支持。Watchdog Cards:如果把这个选中,那么就会在/dev下创建一个名为watchdog的文件,它可以记录系统的运行情况,一直到系统重新启动的1min左右。有了这个文件,就可以恢复系统到重启前的状态了。 [page]

  Video For Linux:支持有关的音频/视频卡。

  Ftape,the floppy tape device driver:

  PCMCIA character device support:上边介绍了。

  (21)Filesy stems文件系统。介绍以下几项:

  Quota support: Quota可以限制每个用户可以使用的硬盘空间的上限,在多用户共同使用一台主机的情况中十分有效。

  DOSFAT fssupport: DOSFAT文件格式的支持,可以支持FAT16、FAT32。

  ISO 9660CD-ROM file system support:光盘使用的就是ISO9660的文件格式。

  NTFS file system support:ntfs是NT使用的文件格式。

  /proc file system support:/proc文件系统是Lnux提供给用户和系统进行交互的通道,应该选上,否则有些功能没法正确执行。

  还有另外3个大类是:Network File Systems(网络文件系统)、Partition Types(分区类型)、

  NativeLanguageSupport(本地语言支持)。值得一提的是NetworkFileSystems里面的两种:NFS和SMB分别是Linux和Windows相互以网络邻居的形式访问对方所使用的文件系统。

  (22)Console drivers控制台驱动。一般使用VGA text console就可以了,标准的80325的文本控制台。

  (23)Sound声卡驱动。

  (24)USB supprotUSB支持。很多USB设备,比如鼠标、调制解调器、打印机、扫描仪等,在Linux都可以得到支持。 (25)Kernel hacking配置此选项可以在系统崩溃时,也可以进行一定的工作了。但对于普通用户是用不着这个功能的。

  内核编译

  内核配置结束后就可以编译内核了,内核编译只有几个指令,但是内核编译的时间可能会很长。在执行内核配置之前可以先执行#make mrproper命令,检查内核源程序,以发现内核文件是否完备。

  内核编译的命令如下:

  #maked ep:使内核正确设置所有模块的依赖关系。

  make clean:清除所有已存在的目标文件,已存在的目标文件主要由上次内核编译形成,如果忘记做这一步,生成的内核将会非常庞大。 [page]

  #make zImage/zdisk/bzImage/zlilo:生成一个经过压缩的内核。如果要制作成启动盘就使用make zdisk,而make zlilo则把生成的内核加入LLO中,不过在最初几次编译内核时不要使用此项,以免系统因生成的内核有故障而不能启动。make bzImage用于生成超过1M文件大小的内核,makezImage生成小于1M的内核。内核文件是经过压缩处理的。如果内核中使用了可装卸的模块,则需要依次运行以下指令:

  #make modules:编译内核模块。

  #make modules_install:安装内核模块。

  编译后的内核文件存放在arch/i386/boot/目录下。以下为一个内核编译配置脚本,采用该脚本编译的内核可运行于当前所有x86平台,不具备网络和串口支持,内核编译后的大小在200K以内。

  #基于x86体系结构

  CONFIG_X86=y

  #是内核中最新功能(或处于实验中的功能) 可用

  CONFIG_EXPERIMENTAL=y

  #选择处理器类型和数学处理器仿真

  CONFIG_M386=y

  CONFIG_MATH_EMULATION=y

  #设置进程间通信协议

  CONFIG_SYSVIPC=y

  CONFIG_SYSCTL=y

  #设置可支持的二进制文件格式

  CONFIG_BINFMT_ELF=y

  #块设备支持,CFC和DOC在此设置不同

  #设置内核支持DE驱动器

  CONFIG_BLK_DEV_DE=y

  CONFIG_BLK_DEV_DEDISK=y

  CONFIG_BLK_DEV_CMD640=y

  CONFIG_BLK_DEV_RZ1000=y

  CONFIG_BLK_DEV_DEPCI=y [page]

  CONFIG_BLK_DEV_DEDMA=y

  CONFIG_IDEDMA_AUTO=y

  CONFIG_BLK_DEV_CS5530=y

  CONFIG_BLK_DEV_LOOP=y

  CONFIG_PARDE_PARPORT=y

  #字符设备设置

  CONFIG_VT=y

  #文件系统设置

  #支持/proc、ext2文件系统

  CONFIG_PROC_FS=y

  CONFIG_EXT2_FS=y

  #支持字符型终端

  CONFIG_VGA_CONSOLE=y

  网络与串口通信功能

  Linux内核内置对网络和串口的支持,具体到内核编译,只要设置部分内核参数即可。以下是网络设备的支持,需要注意的是其中PCI设备支持选项和以太网设备支持选项,如果选择网卡,这两类设备都必须被支持。网卡的驱动程序如果未包含到内核,则可以模块形式加载。

  CONFIG_NET=y

  CONFIG_PCI=y

  CONFIG_PCI_GOANY=y

  CONFIG_PCI_BIOS=y

  CONFIG_PCI_DIRECT=y

  CONFIG_PCI_QUIRKS=y

  CONFIG_PCI_OLD_PROC=y

  CONFIG_NETLINK=y [page]

  CONFIG_INET=y

  CONFIG_NET_ETHERNET=y

  以下是串口设置参数,如果单纯支持两个串口,则设置CONFIG_SERIAL项即可。在系统需要4个以上串口支持,或需要基于串口的终端控制时,需要设置余下3个参数。

  CONFIG_SERIAL=y

  #CONFIG_SERIAL_CONSOLE

  #CONFIG_SERIAL_EXTENDED

  #CONFIG_SERIAL_NONSTANDARD

  本项目中仅设置两个串口支持。

  文件系统定制

  Linux操作系统为方便管理把外存抽象成一个可随时访问的块,为方便管理和使用又在块设备层上再作抽象,把块设备抽象成为文件系统,由文件系统管理块设备上的数据等,文件系统有很多种,不同文件系统有不同的管理方式,造成系统不兼容,为解决这个问题,在文件系统上又作一次抽象,提出了虚拟文件系统的概念。Linux虚拟文件系统为用户提供了一个公共的接口,而不需要了解物理设备或逻辑系统的细节,系统允许系统管理员将在任何物理设备上的逻辑文件系统挂接在文件目录中。

  目录结构

  Linux文件系统符合FHS(Filesystem Hierarchy Standard)标准,由一些目录和文件组成。根据安装的方式不同,这些目录可能是不同的文件系统。通常,一个系统可以有多个文件系统组成:根分区文件系统(/),和安装在/usr下的文件系统,还有其他安装在/home、/var文件系统。

  Linux目录结构起始与根目录,其中包含以下目录:

  /vmlinuz

  内核文件,内核文件的位置可由系统引导程序指定。

  /bin

  包含系统可执行程序,可以在这个目录下找到linux常用的命令。

  /boot

  存放系统启动时所需的各项文件。

  /dev

  包含所有的设备文件,这些设备是和系统的硬件有一定相互对应关系的特殊文件,分为块设备、字符设备和特殊设备,dev是设备(device)的英文缩写。目录中包含了所有Linux系统中使用的外部设备,但是这里并不是放的外部设备的驱动程序,它实际上是一个访问这些外部设备的标识。在Linux系统中,对外部设备的访问和访问一个文件、一个目录没有任何区别。 [page]

  /cdrom

  用于将光驱文件系统加载到这个目录下。

  /etc

  Linux系统的绝大部分配置文件都存放在这里。比如网络配置文件,文件系统,XWindow配置文件,设备配置信息,设置用户信息等都在这个目录下。

  /sbin

  存放系统程序。和/bin目录类似,但这些文件往往是用来进行系统管理或提供系统服务的,一般只有root才有运行的权限。

  /home

  存放一般用户个人目录的主目录,如果建立一个用户,用户名是“xx”,那么在/home目录下就有一个对应的/home/xx路径。

  /lib

  存放系统的各种库文件,lib是库(library)英文缩写。这个目录用来存放系统动态连接共享库,采用动态链接编译的应用程序都会用到这个目录下的共享库。

  /lost+found

  用于放置垃圾文件,这个目录在大多数情况下都是空的。但是如果正在工作的计算机突然停电,或是没有用正常方式关机,重新启动机器的时候,有些文件就会找不到应该存放的地方,对于这些文件,系统将他们放在这个目录下。

  /mnt

  为其他的文件系统提供安装点,这个目录在一般情况下也是空的。

  /proc

  一个虚拟的文件系统,系统启动后从内存中建立,用于内存读取数据。可以在这个目录下获取系统信息,这些信息是在内存中,由系统自己产生的。

  /root

  超级用户的个人目录,普通用户没有权限访问。如果以超级用户的身份登录,这个就是超级用户的主目录。

  /tmp

  用来存放不同程序执行时产生的临时文件,这些文件大都是程序运行时产生的,程序结束时自动删除。

  /usr

  一般用户程序安装所在的目录,用户的很多应用程序和文件都存放在这个目录下。

  /var

  保存大小和内容随时改变的文件,通常各种系统日志文件放在这里。

  在定制文件系统的过程中,目录结构必须手工定制,以上描述的仅仅是根目录下的目录,在这些目录下还有一些子目录,而且不同的子目录其设置也不同。以下程序可以建立一个完备的目录结构,这个目录结构完全符合FHS标准。 [page]

  ROOT=目标系统路径

  cd$ROOT

  mkdir-pbin boot dev/ptsetc/opt home lib

  mntprocrootsbintmpvaropt&&

  for dirname in$ROOT/usr$ROOT/usr/

  local

  do

  mkdir$dirname

  cd$dirname

  mkdir binetc include lib sbin share src

  ln-sshare/man

  ln-sshare/doc

  ln-sshare/info

  cd$dirname/share

  mkdir dict doc info locale mannls miscterm info zoneinfo

  cd$dirname/share/man

  mkdirman{1,2,3,4,5,6,7,8}

  done&&

  cd$ROOT/var&&

  mkdir-plock log mail run spool tmp opt

  cachelib/misclocal&&

  cd$ROOT/opt&&

  mkdir bin doc include info lib man &&

  cd$ROOT/usr&&

  ln-s11/var/tmp

  cd$ROOT&&

  chmod0750root&&

  chmod1777tmpvar/tmp[page]

  文件系统

  Linux采用虚拟文件系统(VFS)作为实际文件系统和操作系统之间的接口,将实际的文件系统和操作系统隔离开来。通过虚拟文件系统技术,Linux可以支持除EXT之外的许多文件系统类型。各文件系统为虚拟文件系统提供一致的接口,从而将不同文件系统的细节隐藏了起来。对操作系统的其他部分,以及运行在操作系统之上的程序而言,所有的文件系统都是一样的。

  本系统采用ext2磁盘文件系统格式,这是一种比较新的磁盘文件系统格式,在具体应用中也可以根据存储空间的大小选择FAT或minix等文件格式。

  本系统定制后的目录有:bin,boot,dev,etc, proc,root,sbin,usr。

  /bin,/sbin目录下是系统初始化与运行过程中必须用到的指令集合。

  /boot目录下是系统引导时用到的文件和内核文件,这些文件是通过内核定制得到的,包括:boot1b,bzImage,map。

  /dev目录下是设备文件。

  /etc目录下是系统配置文件,系统引导后执行的第一个配置文件inittab就在这个目录下,了解和掌握这个配置文件是分析和掌握Linux系统的关键。

  /proc目录在系统启动后被内核使用,系统启动后该目录是一个单独的文件系统。

  /root目录是系统管理员的用户根目录.

  /usr目录中存放用户安装的应用系统。

  总结

  嵌入式Linux技术在海洋自动观测系统中的应用,可以进一步推进我国海洋自动观测系统产权自主化的建设,增强系统安全性、大幅度提高系统性能,为应用软件系统提供一个自主、安全、可靠、高效的运行平台,提高系统间兼容、提高开发效率、缩短开发周期、增强可移植性,这一工作对完成当前国家海洋工作任务及未来我国海洋事业的发展意义深远。基于PC/104平台的Linux内核与文件系统定制,是进行面向海洋自动观测系统嵌入式Linux系统研制工作的关键技术,是系统研制过程中的核心步骤。

 

关键字:Linux文件系统  PC  虚拟文件系统  定制  floppy  MTTR  内核配置  代码编译  spool  声卡驱动 引用地址:PC/104平台嵌入式Linux系统核心定制方法

上一篇:英飞凌推出五倍性能的下一代集成手机单片
下一篇:基于PXA270平台的嵌入式流媒体播放器设计

推荐阅读最新更新时间:2024-05-02 20:43

收购东芝PC业务 夏普能否在PC市场重占一席之地?
  北京时间6月5日, 东芝 公司(Toshiba)发布声明称,已决定将旗下主营个人电脑(PC)业务的 东芝 客户解决方案部门(TCS)80.1%的股份出售给 夏普 公司(Sharp)。 东芝 预计,该交易将于10月1日完成。下面就随嵌入式小编一起来了解一下相关内容吧。    夏普 公司也于同日宣布了这一收购。其在此次交易中仅需支付40亿日元(约合2.3亿元人民币)。   这一交易标志着 夏普 时隔8年重回PC市场,也标志着东芝这一老牌PC厂商正式退出该项业务。分析认为,目前控股夏普的富士康或在此次交易中发挥了重要作用,这一代工巨头正致力于树立富士康品牌在电子产品领域的地位。    一进一退   华尔街日报在当日的报道中指出,
[嵌入式]
华为万飚:最快三年内超联想苹果成最大PC制造商
    新浪科技讯 北京时间6月8日晚间消息,华为消费者业务COO万飚周三表示,华为将在未来三年至五年的时间内超越联想、惠普和苹果等公司,成为全球最大PC厂商。   上个月,华为在德国发布了三款Matebook系列笔记本电脑,正式进军全球PC市场,向联想、惠普和戴尔等传统PC厂商发起挑战。   万飚周三在接受CNBC采访时称:“每当华为决定进入一个领域,并开发产品时,我们的目标始终是成为全球的领导者。这种信心源自华为在研发上坚定不移的投入,以及我们的创新能力。这在我们的智能机产品上已经得到验证。”   当被问及“华为需要多久才能成为全球最大PC厂商”时,万飚称:“这一过程可能需要三年至五年的时间。”   最近几年,全球PC市场处于
[手机便携]
出师未捷 这家为iPhone定制墨水屏的公司倒闭了
根据外媒的报道,此前在众筹平台Indiegogo成功筹集近22万美元的popSLATE公司已经宣布倒闭。这家公司主要为iPhone定制墨水屏,他们推出第一代的popSLATE因为局限性太多,很快又推出了popSLATE 2,而且还顺利众筹到110多万美元的资金。popSLATE此前承诺在2016年7月份向下单用户发货,但到现在都没有兑现。 Popslate 2电子墨显示屏   这家公司的CEO表示,之所以没有实现承诺,是因为财务方面出现问题。原本投入的大量资金,因为设计问题推迟到10月才发布popSLATE 2,而此时苹果已经发布iPhone 7,该公司又要忙于适配iPhone 7系列机型。原本他们希望打造iPhone 6到i
[手机便携]
PC市场萎靡不振,惠普/戴尔靠啥在逆风中赚钱?
市场研究公司IDC的数据显示, PC 行业已连续5年出现萎缩。   根据IDC的数据,2016年,全球市场“传统”PC(不包括iPad Pro和Surface Pro这样的变形本)的出货量同比下降5.7%,至2.6亿台。   尽管2016年第四季度出现了“趋于稳定”的迹象,PC出货量的同比降幅不到1.5%,但PC市场整体已连续5年滑坡。     PC市场的滑坡原因包括多个方面。首先,智能手机和平板电脑的兴起取代了PC。其次,笔记本和台式机的更新换代速度正在放慢。由于没有新的创新去推动用户购买,因此许多用户使用一台计算机的时间变得更长。   不过,市场萎缩带来的行业整合有利于 惠普 和 戴尔 等公司。以市场份额来看,惠普和戴尔在
[嵌入式]
磁芯损耗实例(PC3230教材的PQ32 30)
磁芯损耗实例(PC3230教材的PQ32 30)
[电源管理]
磁芯损耗实例(<font color='red'>PC</font>3230教材的PQ32 30)
OK6410A 开发板 (八) 90 linux-5.11 OK6410A linux文件系统导读
文件系统是什么 文件系统是 为了处理信息的,以目录的方式展示这些信息,并供用户增删改查 且用户的接口是文件名 linux 真实文件系统分类 信息存储在内核之中:sysfs,procfs,rootfs,devtmpfs 信息存储在内核之外: 存储在 网络 : nfs cifs 存储在 硬盘 : ext2/3/4 ntfs // vfs 并不是真实文件系统,是个框架 // vfs 存在于内核中 我们如何熟悉 linux下的文件系统 从流程去熟悉 1. 挂载 : 涉及到 super_block 2. 文件操作 : 涉及到 inode 3. search及真实文件系统中层级目录的维护 : 涉
[单片机]
比特微杨作兴:全定制设计的几大优势
不久前,媒体报道了比特大陆和比特微之间的爱恨情仇。 比特大陆一直靠S7矿机(1385芯片)和S9矿机(1387芯片)支撑市场。然而,提供这两款芯片设计思路的核心技术人员,并非来自比特大陆的开发团队,而是来自于清华大学工程物理系博士杨作兴,而杨作兴的出走,正是比特大陆近年来出现技术瓶颈的重要原因之一。 杨作兴为深圳比特微电子科技有限公司董事长,其生产的神马矿机,被比特大陆以侵犯专利为由告上法院。 两者多次对簿公堂。最终,国家知识产权局专利复审委员给出裁定结果,比特大陆专利无效。 杨作兴此前接受参访时表示:“我觉得我的全定制方法学特别适合做比特币芯片。我就去找詹克团,告诉了他我这个全定制设计方法学怎么用。和詹克团介绍完
[半导体设计/制造]
比特微杨作兴:全<font color='red'>定制</font>设计的几大优势
AMD潘晓明:PC未死,仍有大空间,我们坚守着
    2014年1月14日,由《IT时代周刊》、IT商业新闻网主办的第九届CEO年会暨颁奖典礼在北京威斯汀酒店隆重举行。这是一年一度享誉全国的IT思想盛宴,也是IT产业规格最高、影响最大的CEO头脑风暴。本届年会紧紧围绕“把握产业趋势、重新定义IT”主题展开论述,旨在探讨世界500强企业在转型与发展中遇到的问题及对策。 那2013年,传统IT企业遭遇的主要问题有哪些? 在转型过程中,传统IT企业将面临哪些机遇和挑战呢?现在大家都在说:“不转型等死,转型找死”,这话如何理解? 针对这些问题,发言嘉宾将重点围绕关键词“危机、转型、挑战、机遇”进行发言。 AMD全球高级副总裁、大中华区董事总经理潘晓明认为:PC并没有死,因为现在我们认为
[手机便携]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved