【2018-08-03】[转]]uclibc和glibc的差别
[历史归档]本文原发布于 cstriker1407.info 个人博客内容为历史存档仅供参考。发布时间2018-08-03 标题[转]]uclibc和glibc的差别分类编程uClibc和glibc的简单笔记本文转自《 https://blog.csdn.net/zengwh/article/details/1482418 》uClibc和Glibc并不相同两者有许多不同之处而且以下不同有可能给你带来一些问题.1.uClibc比Glibc小虽然uClibc和Glibc在已有的接口上是兼容的而且采用uClibc编译应用程序比采用Glibc编译应用程序要更方便但是uClibc并没有包括Glibc中的所有接口实现因此有些应用可能在uClibc中不能编译。2.uClibc在可配置性上比Glibc要好。3.uClibc并不能保证发布的库二进制兼容旧版本uClibc库。当一个新的版本uClibc库被发布则可能需要也可能不需要重新编译应用程序。4.在Glibc中调用malloc(0)将返回一个有效的指针然而在uClibc中调用malloc(0)则返回NULL指针。根据在SuSv3中关于malloc(0)的行为的定义两个库的实现都是正确的。对于调用relloc(NULL,0)两个库的实现也不同。个人感觉Glibc的如此实现不是特别安全。Glibc中malloc的实现可以通过MALLOC_CHECK_ 环境变量调节。这个方法主要用于malloc调试。这些扩展的malloc调试特性在uClibc中是不可用的。在Linux上有许多有些的malloc调试功能的库(如dmalloc,electric fence,valgrind等)比Glibc中的扩展的malloc调试功能更好用。因此uClibc中去掉这些功能特性并不会有多打损失。5.uClibc没有提供用于数据接口的库(libdb)。6.uClibc不支持NSS(/lib/libnss_*)在这方面Glibc更容易支持不同方式的认证和DNS解析。uClibc仅仅支持采用flat口令文件或者shadow口令文件存储授权信息。如果需要比这些更复杂的的授权可以编译安装pam。7.uClibc中的libresolv库仅仅是一个桩。Glibc的libresolv库中的部分并不是全部的功能uClibc都提供许多函数都没有实现。8.提供网络信息服务支持(NIS)libnsl库(最初被称为黄页YP)被SUN扩展为发明为RPC并用于网络共享Unix口令文件。个人认为NIS是一个令人厌恶的东西并应该使用。因此在实现相同的功能情况下采用ldap比NIS更有效。uClibc虽然提供一个桩libnsl但并不支持NIS。我们因此也不提供在Glibc下提供的位于/usr/include/rpcsvc里的头文件。9.uClibc的区域支持并不是100%的完全。正在这方面努力10.uClibc的数据功能函数库内部仅仅支持long double设置对于long double的支持也是非常有限。与此对应的只实现了较少的数学函数。如果应用程序采用double类型则会程序会运行得较好。11.uClibc的libcrpt库不支持可重入crypt_r,setkey_r和encrypt_r因为这些也不是SuSv3所规定的。12.uClibc直接采用内核的数据类型去定义大多数透明的数据类型。13.uClibc支持采用linux内核结构特有的结构体struct stat。14.uClibc的运行时库librt当前缺少aio接口、全部的时钟接口和共享内存接口(仅仅实现定时器接口和消息队列接口)

相关新闻

Hugging Face 遭自主 AI 攻击致信息泄露,AI 攻防战引发关注!

Hugging Face 遭自主 AI 攻击致信息泄露,AI 攻防战引发关注!

Hugging Face 遭自主 AI 攻击,信息泄露引关注Hugging Face 披露网络攻击事件,导致内部基础设施和凭证信息泄露,攻击归咎于自主 AI 代理。入侵由 AI 检测到,但仅靠 AI 防御能否阻止未来攻击值得思考。Hugging Face 平台介绍Hugging…

2026/7/21 8:57:19 阅读更多 →
Windows平台MinIO部署与高可用集群实战指南

Windows平台MinIO部署与高可用集群实战指南

1. Windows环境下的MinIO部署全景指南MinIO作为高性能对象存储解决方案,在Windows平台上的部署往往让开发者又爱又恨。不同于Linux环境下的一键部署,Windows平台需要特别注意文件系统特性、服务化运行以及性能调优等问题。本指南将从单节点测试环境搭建入…

2026/7/21 8:57:19 阅读更多 →
二叉树数据结构:核心概念、遍历算法与工程实践

二叉树数据结构:核心概念、遍历算法与工程实践

1. 二叉树基础概念与核心特性 二叉树是每个节点最多只有两个子节点的树形数据结构,这两个子节点分别称为左子节点和右子节点。这种结构在计算机科学中应用极为广泛,从文件系统到数据库索引,从编译器语法树到机器学习决策树,都能看…

2026/7/21 8:57:19 阅读更多 →

最新新闻

后端服务重构:从被质疑到高可用的微服务架构演进实践

后端服务重构:从被质疑到高可用的微服务架构演进实践

在实际项目开发中,团队协作和代码质量往往决定了最终交付的成败。很多情况下,那些最初被团队认为“不靠谱”“太复杂”或“实现难度大”的技术方案,反而在深入实践后展现出强大的适应性和稳定性。这种现象背后,往往是因为开发者对…

2026/7/22 7:09:27 阅读更多 →
TI处理器PSC中断处理与低功耗电源管理实战指南

TI处理器PSC中断处理与低功耗电源管理实战指南

1. 项目概述与核心价值在嵌入式系统,尤其是电池供电的物联网终端、便携式医疗设备或工业传感器节点中,功耗是决定产品成败的关键指标之一。我们常常需要在有限的电池容量下,让设备持续工作数月甚至数年。这不仅仅是选择一颗低功耗芯片那么简单…

2026/7/22 7:09:27 阅读更多 →
软考高项进度管理与EVM工具深度解析

软考高项进度管理与EVM工具深度解析

1. 软考高项进度管理核心考点解析2026年软考高级信息系统项目管理师(高项)考试中,进度管理始终是案例分析题和论文题的高频考点。根据近5年真题统计,进度管理相关知识点在案例分析题中出现概率高达78%,在论文题中占比约…

2026/7/22 7:09:27 阅读更多 →
截图工具在微信和 QQ 就有,为什么还有人愿意花钱买?

截图工具在微信和 QQ 就有,为什么还有人愿意花钱买?

如果本文对你有帮助,想选购正版软件,或查看更多软件技巧 & 资讯,欢迎搜索“数码荔枝”或访问网站 lizhi.shop很多人都会有这个疑问: 微信与 QQ 自带截图功能已经够用了,为什么还有人专门购买截图软件?答…

2026/7/22 7:09:27 阅读更多 →
RxJS高阶技巧:提升前端异步编程效率的7个实战方案

RxJS高阶技巧:提升前端异步编程效率的7个实战方案

1. RxJS核心概念与实战价值RxJS(Reactive Extensions for JavaScript)是当前前端异步编程领域最具影响力的库之一。作为Angular框架的默认依赖,它通过观察者模式和函数式编程思想,将事件流、异步操作、数据变更等抽象为可观察序列…

2026/7/22 7:09:27 阅读更多 →
SPI 知识点复习资料(结合 STM32F427 代码)

SPI 知识点复习资料(结合 STM32F427 代码)

本资料以 spi.c 代码为例,把 SPI 从基础到实战的知识点串起来。 你的项目里用了 4 个 SPI:SPI1/SPI3 做从机接收,SPI2/SPI4 做主机发送。 一、SPI 是什么 SPI(Serial Peripheral Interface,串行外设接口)是…

2026/7/22 7:08:27 阅读更多 →

日新闻

TI DSP系统配置模块SYSCFG详解:中断机制与主设备优先级配置实战

TI DSP系统配置模块SYSCFG详解:中断机制与主设备优先级配置实战

1. 项目概述与SYSCFG模块的核心价值在嵌入式系统,尤其是像TI C6000系列这样的高性能DSP开发中,我们常常会与芯片手册里那些密密麻麻的寄存器打交道。很多开发者可能更关注算法实现、内存优化或者外设驱动,但对于一个稳定、高效的系统而言&…

2026/7/22 0:00:26 阅读更多 →
微信Server酱:高到达率的应急通知方案实践

微信Server酱:高到达率的应急通知方案实践

1. 为什么我们需要"最次"的通知方案? 在数字化协作环境中,消息通知系统的重要性不言而喻明。但现实情况是,企业级通知方案往往需要复杂的API对接(如企业微信、钉钉、飞书),个人开发者的小项目又经…

2026/7/22 0:00:26 阅读更多 →
甲方要的“简洁“PPT,到底是简洁还是省事?

甲方要的“简洁“PPT,到底是简洁还是省事?

甲方说"简洁一点",乙方听到的是"少做几页"。甲方说"不要太复杂",乙方理解成"别放图表了"。结果交过去,甲方说"我说的简洁不是这个意思"。"简洁"这个词在PPT语境里,是…

2026/7/22 0:00:26 阅读更多 →

周新闻

Go语言静态资源打包方案对比与实践指南

Go语言静态资源打包方案对比与实践指南

1. 项目背景与核心需求在Go语言开发中,我们经常需要处理静态资源文件的打包问题。无论是Web应用的模板文件、前端资源,还是配置文件、证书等,都需要随程序一起分发。传统做法是将这些文件与编译后的二进制文件放在同一目录下,但这…

2026/7/21 8:48:31 阅读更多 →
Go语言实现高性能LDAP认证服务的架构与实践

Go语言实现高性能LDAP认证服务的架构与实践

1. 项目背景与核心价值LDAP(轻量级目录访问协议)作为企业级身份认证的黄金标准,已经服务了超过80%的财富500强公司。我在金融科技领域实施统一认证体系时,发现传统Java方案存在启动慢、内存占用高等痛点。而Go语言凭借其协程并发模…

2026/7/21 5:34:47 阅读更多 →
【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

更多请点击: https://intelliparadigm.com 第一章:AI面试官实战指南的核心价值与适用场景 AI面试官并非替代人类HR的“黑箱工具”,而是以可解释、可审计、可迭代的方式,赋能招聘全链路的关键基础设施。其核心价值在于将主观经验沉…

2026/7/21 8:25:39 阅读更多 →

月新闻