传三星将NAND闪存定价提高20%,Linux内核即将删除对安腾支持
传三星大幅涨价:闪存提高20%
据TrendForce集邦咨询报道,在本季度将NAND闪存晶圆价格提高10%到20%之后,三星还将继续涨价:明年第一季度和第二季度再上调20%。TrendForce称这一策略体现了三星稳定NAND闪存晶圆价格的决心,旨在扭转明年上半年市场走向。
在近期的财务会议上,三星电子副总裁表示“将有选择性地调整生产,以在短时间内使库存正常化。NAND闪存的供应削减幅度将大于DRAM内存”。到目前为止,除长江存储外的所有主要闪存制造商都已减产以试图推高价格。
Linux内核即将删除对安腾的支持:
人的一辈子会死三次:第一次心脏停止跳动是生物学死亡,第二次在葬礼上是社会上死亡,第三次是最后一个记得他的人故去,那就是真的死了。
安腾是英特尔的首款64位CPU,由英特尔和惠普联合开发,采用IA-64架构,无法原生运行x86软件。继最后一批安腾处理器在2021年向客户发货之后,安腾的彻底死亡又向前迈进一步:Linux 6.7内核结束了对安腾的支持,理由是IA-64内核代码无人维护,并且没有人愿意站出来维护它,用于支持它的6万5千行代码将被删除。
现在的Linux 6.6预计将成为今年的LTS长期支持版本,其维护时间为两年,这是留给安腾最后的时间。
Linux系统移植篇7:STM32MP1微处理器之Linux内核目录结构
Linux内核目录结构
Linux内核源代码非常庞大,随着版本的发展不断增加。它使用目录树结构,并且使用Makefile组织配置编译。
初次接触Linux内核,最好仔细阅读顶层目录的readme文件,它是Linux内核的概述和编译命令说明。readme的说明更加针对X86等通用的平台,对于某些特殊的体系结构,可能有些特殊的地方。
内核源码很复杂,包含多级目录,形成一个庞大的树状结构,通常称为Linux源码目录树。本章节以linux 5.4.31为例来介绍一下linux内核目录结构。
顶层目录的Makefile是整个内核配置编译的核心文件,负责组织目录树中子目录的编译管理,还可以设置体系结构和版本号等。
首先来看第一级目录
目录
内容
arch
包含各体系结构特定的代码,如 arm、x86、ia64、mips等,在每个体系结构目录下通常都有:
/boot:内核需要的 特定平台代码。/kernel:体系结构特有的代码。/lib:通用函数在特定体系结构的实现。/math-emu:模拟FPU的代码。/mm:特定体系结构的内存管理实现。/include:特定体系的头文件 。block
存放块设备相关代码
crypto
存放加密、压缩、CRC校验等算法相关代码
Documentation
存放相关说明文档,很多实用文档,包括驱动编写等
drivers
存放 Linux 内核设备驱动程序源码。
驱动源码在 Linux 内核源码中占了很大比例,常见外设几乎都有可参考源码,对驱动开发而言,该目录非常重要。
该目录包含众多驱动,目录按照 设备类别 进行分类,如char、block、input、i2c、spi、pci、usb等。
firmware
存放处理器相关的一些特殊固件
fs
存放所有文件系统代码,如fat、ext2、ext3、ext4、ubifs、nfs、sysfs等。
include
存放内核所需、与平台无关的头文件,与平台相关的头文件已经被移动到arch平台的include目录,如 ARM 的头文件目录<arch/arm/include/asm/>
init
包含内核初始化代码
ipc
存放进程间通信代码
kernel
包含Linux内核管理代码
lib
库文件代码实现
mm
存放内存管理代码
net
存放网络相关代码
samples
存放提供的一些内核编程范例,如kfifo;
相关用户态编程范例,如hidraw。
scripts
存放一些脚本文件,如menuconfig脚本
security
存放系统安全性相关代码
sound
存放声音、声卡相关驱动
tools
编译过程中一些主机必要工具
usr
cpio相关实现
virt
内核虚拟机KVM
Linux内核源码中接近一半的代码量是驱动,对某一个特定主板的系统而言,驱动也占据很大的比例,底层开发的很大一部分是驱动相关工作。掌握从众多驱动中找到正确的驱动源码文件,并根据产品的实际需求进行修改调整的方法,能有效促进产品开发的进度。
Linux内核源码树drivers目录很复杂,包含了各种外设的驱动。对嵌入式Linux开发而言,通常需要关注如下目录。
目录
说明
drivers/gpio
系统GPIO子系统 和 驱动目录,包括处理器内部GPIO以及外扩GPIO驱动。遵循GPIO子系统的驱动,可通过/sys/class/gpio进行访问
drivers/hwmon
硬件监测相关驱动,如温度传感器、风扇监测等
drivers/i2c
I2C子系统驱动。各I2C控制器的驱动在i2c/busses目录下
drivers/input
输入子系统驱动目录
drivers/input/keyboard
非HID键盘驱动,如GPIO键盘、矩阵键盘等
drivers/input/touchscreen
触摸屏驱动,如处理器的触摸屏控制器驱动、外扩串行触摸屏控制器驱动、串口触摸屏控制器驱动等
drivers/leds
LED子系统和驱动,如GPIO驱动的LED。遵循 LED子系统的驱动 ,可通过/sys/class/leds进行访问
drivers/mfd
多功能器件(Multi-Function Device)驱动。如果一个器件能做多种用途,通常需要借助MFD来完成。
drivers/misc
杂项(Miscellaneous)驱动。所驱动的设备可通过/sys系统访问
drivers/mmc
SD(Secure Digital)/MMC(Mutimedia Card)卡驱动目录
drivers/mtd
MTD(Memory Technology Device)子系统和驱动,包括NAND、oneNAND等。
drivers/mtd/nand
NAND FALSH的MTD驱动目录,包括NAND的基础驱动和控制器接口驱动
drivers/net
网络设备驱动,包括MAC、PHY、CAN、USB 网卡、无线、PPP协议等
drivers/net/can
CAN设备驱动。
Linux已经将CAN归类到网络中,采用socket_CAN接口
drivers/net/ethernet
所支持的MAC驱动。
常见厂家的MAC驱动都能找到,如broadcom、davicom、marvell、micrel、smsc等厂家的MAC,处理器自带MAC的驱动也在该目录下
drivers/net/phy
PHY驱动,比如marvell、micrel和smsc的一些PHY驱动
drivers/rtc
RTC子系统和RTC芯片驱动
drivers/spi
SPI子系统和SPI控制器驱动,含GPIO 模拟SPI的驱动
drivers/tty
TTY 驱动
drivers/tty/serial
串口驱动,包括8250串口以及各处理器内部串口驱动实现
drivers/uio
用户空间IO驱动
drivers/usb
USB驱动,包括USB HOST、Gadget、USB转串口以及OTG等支持。
drivers/video
Video驱动,包括Framebuffer驱动、显示控制器驱动和背光驱动等。
drivers/video/backlight
背光控制驱动
drivers/video/logo
Linux内核启动LOGO图片目录
drivers/watchdog
看门狗驱动,包括软件看门狗和各种硬件看门狗驱动实现
相关问答
内核 kernel以及根文件系统rootfs是如何映射到对应的nandflash的?需要修改Linux内核源码中的一个控制logbuffersize的宏:CONFIG_LOG_BUF_SHIFT,buffersize是2^shift,加大这个就可以。一、配置$...
嵌入式 linux 驱动涉及哪些芯片?嵌入式Linux驱动涉及的芯片种类繁多,这主要取决于具体的应用场景和硬件设计。常见的嵌入式Linux驱动涉及的芯片包括以下几类:处理器芯片:如ARM、MIPS、PowerPC...
怎么用DELPHI开发串口通信程序-ZOL问答你可以自己写一个汇编的程序,把NandFlash中的程序搬到SDRAM中。因为S3C2410有NorFlash和NandFlash有两种启动方式,所以在搬移过程中略有不同。如果用Nand....
芯片的采购金额早就超过石油了?震惊嘛?1芯片每年进口超过石油【PConline杂谈】一个人要是无“心”,要他成就一番事业那只是天方夜谭;一个国家要是长期无“芯”,那只能被动地选择全球产业链下...多位...
想学嵌入式软件,哪款开发板比较好?嵌入式开发就是指在嵌入式操作系统下进行开发,一般常用的系统有WinCE,ucos,vxworks,linux,android等。另外,用c,c++或汇编开发;用高级处理器,arm7,arm9...第...
怎么修改weblogic console登陆的用户名和密码-ZOL问答windows下的startWebLogicNaNd:JAVA_OPTIONS=%JAVA_OPTIONS%-Dweblogic.management.username=weblogic-Dwe...
expressgatecloud是什么东西?内嵌式系统代表技术:ExpressGate(基于Splashtop)ExpressGate技术其实是基于Splashtop进行开发的一个内嵌式操作系统,采用的是Linux操作系统核心...
Linux U-boot环境变量设置错了,怎么删除修改?在应用程序中按需要对文件进行修改后,再用dd烧回去。开机,结果出现CRC错误,好吧,原来u-boot为了保证环境变量的正确性,在环境变量的前四个字节储存了CRC效...
1tb机械硬盘加256固态硬盘大学文科够用吗?大学文科无论是文学创作还是初级艺术设计都够用了。但目前,固态硬盘市场产品的“原生态”不太好。一部分三线品牌因过于追求性价比而使用低价低质的qlc3dna...
三星860evo和860QVO哪个好用,主要玩游戏?首先我们了解一下三星860evo,它是采用了64层堆栈的V-NAND闪存,在提升容量的同时,也增加了使用寿命,下面我们就来看看它的实际表现如何。三星860EVO为...首...