IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 系统运维 -> glibc 知:官方 -> 正文阅读

[系统运维]glibc 知:官方

1. 官网

主页:https://www.gnu.org/software/libc
在这里插入图片描述

1.1. What is glibc?什么是glibc

GNU C 库项目为 GNU 系统和 GNU/Linux 系统以及许多其他使用 Linux 作为内核的系统提供核心库。 这些库提供了关键的 API,包括 ISO C11、POSIX.1-2008、BSD、特定于操作系统的 API 等等。 这些 API 包括诸如 open、read、write、malloc、printf、getaddrinfo、dlopen、pthread_create、crypt、login、exit 等基础设施。

GNU C 库旨在成为向后兼容、可移植和高性能的 ISO C 库。 它旨在遵循所有相关标准,包括 ISO C11、POSIX.1-2008 和 IEEE 754-2008。

该项目大约在 1988 年开始,至今已有 30 多年的历史。 您可以在 wiki 上查看完整的项目发布历史。

GNU C 库每 6 个月发布一次。

1.2. Get started 开始

GNU C 库提供了许多由 C 或 C++ 语言编写的程序直接使用的低级别组件。许多编程语言间接使用 GNU C 库,包括 C#、Java、Perl、Python 和 Ruby(这些语言的解释器、VM 或编译代码直接使用 glibc)。

版本可通过源分支检出 ( gitweb ) 和 tarball通过 ftp 获得。
在这里插入图片描述
构建和测试库可参考:https://sourceware.org/glibc/wiki/Testing/Builds
在这里插入图片描述

1.3. Get Involved 参与其中

在这里可以查看master todo checklist(主待办事项清单)和list of bugs(缺陷列表)。
在这里插入图片描述
在这里插入图片描述

1.4. Sources 源码

在这里可以获取glibc源码(代码仓和压缩包),也可以通过web页面查看代码仓详情。

1.5. Documentation 文档

在这里可以查看:glibc手册API手册页wikiFAQ等。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1.6. Report a bug 报告缺陷

在这里可以提bug和查bug
在这里插入图片描述
glibc的所有缺陷是通过Bugzilla平台进行管理:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
评论中有关于该缺陷的描述和修复方法。

2. 社区wiki

主页:https://sourceware.org/glibc/wiki/HomePage
在这里插入图片描述
wiki中有大量关于glibc的介绍,用户一定要好好的利用,其中主要分了六个部分,本章主要介绍第五个部分,即 Development(开发)。

2.1. 贡献

这里介绍了:glibc编码规范和约定贡献提交者清单、维护者新架构移植贡献指南等。

请注意,如果您希望为glibc做出贡献,您需要将想法和补丁发送到libc-help@sourceware.org以进行初步审查。也就是说,是通过邮件的方式来贡献代码的,相同于linux内核的贡献方式。

2.2. 资源

2.2.1. 社区资源

主要的社区资源如下:

2.3. 内部文档

  • 多线程安全
  • 使用errlist-compat
  • 动态加载器内部
  • 平台特定的标题
  • 指针加密
  • 符号版本控制
    • 如何对结构进行版本控制并创建防更改功能包装器。
  • 命名空间控制:
    • 保留供将来在每个标准 header 中使用的名称模式的有点过时的列表。
    • 何时使用__ 前缀符号
  • 条件代码:PIC、SHARED等。
  • 插件:使用插件目录
  • 对 thread_local 变量的析构函数支持
  • 环境变量指南
  • 系统调用包装器
  • 锁省略实现指南
  • NSCD 数据库文件布局
  • 改进 libm
  • 名称解析器
  • 用于查询线程属性(堆栈、tls 等)的 API
  • 与其他项目共享的源代码
  • 模糊测试库
  • Libmvec - 矢量数学库
  • POWER 架构 - 循环内调用函数的自动向量化
  • Malloc 内部结构
  • 可调参数

2.4. 测试

  • glibc 测试套件
  • 测试 GLIBC 构建
  • 针对 Gnulib 的测试套件进行测试
  • 查找和修复与 check-localplt 相关的测试套件故障
  • 为 glibc 内部编写白盒测试

2.5. 调试

  • GLIBC 开发的调试技术。
  • GLIBC ‘配置’ 调试(待办事项)。
  • GLIBC ‘make’ 调试(待办事项)。
  • 调试使用 GLIBC (todo) 的应用程序。
  • GDB“漂亮打印机”的使用和开发用于/与 GLIBC。

2.6. 技巧和窍门

  • 装载机提示和技巧。
  • 为 x32 编译。
  • 提供您自己的 FOO 版本。
  • 拦截系统调用并提供您自己的 FOO 版本的另一个秘诀(专门针对 Ubuntu Linux 系统的说明)。
  • Plash 项目有一些关于 GLIBC 的提示(主要是关于构建问题)。
  • rtldi可用于同时安装多个版本的 GLIBC(特别是多个版本的动态链接器,ld.so)。
  • 如何使用您自己的自定义 glibc 构建应用程序。
  • 如何使用secure_getenv
  系统运维 最新文章
配置小型公司网络WLAN基本业务(AC通过三层
如何在交付运维过程中建立风险底线意识,提
快速传输大文件,怎么通过网络传大文件给对
从游戏服务端角度分析移动同步(状态同步)
MySQL使用MyCat实现分库分表
如何用DWDM射频光纤技术实现200公里外的站点
国内顺畅下载k8s.gcr.io的镜像
自动化测试appium
ctfshow ssrf
Linux操作系统学习之实用指令(Centos7/8均
上一篇文章      下一篇文章      查看所有文章
加:2021-07-23 11:14:16  更:2021-07-23 11:16:02 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/25 16:49:17-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码