摘要: C语言的内存管理是一个至关重要的概念,它涉及如何在程序中为数据分配、使用和释放内存。理解C语言的内存管理不仅有助于开发高效的程序,还可以避免内存泄漏、悬空指针、缓冲区溢出等常见的错误。C语言的内存管理主要分为两个部分:静态内存分配和动态内存分配。 阅读全文
posted @ 2025-01-21 20:21 岸南 阅读(37) 评论(0) 推荐(0) 编辑
摘要: 统一内存分配(Unified Memory Allocation,UMA)是一种内存管理技术,它的目标是通过减少内存分配次数、提高内存的使用效率以及保证内存的连续性来提升性能。 阅读全文
posted @ 2025-01-21 16:18 岸南 阅读(23) 评论(0) 推荐(0) 编辑
摘要: container_of 是 C 语言中常用的一个宏,通常用于从结构体的成员指针反向获取包含该成员的结构体指针。这个宏的作用非常重要,尤其是在处理嵌入式结构体或者链表时,经常会遇到这种情况:你得到一个结构体成员的指针,但你需要得到包含该成员的整个结构体的指针。 阅读全文
posted @ 2025-01-17 21:00 岸南 阅读(7) 评论(0) 推荐(0) 编辑
摘要: zalloc 是一种常见的内存分配函数,主要用于分配内存并自动将分配的内存初始化为零。尽管 zalloc 本身不是 C 标准库中的一部分,但它通常是一些代码库或项目中自定义的一个便捷函数,用于简化内存分配和初始化的工作。 阅读全文
posted @ 2025-01-17 15:51 岸南 阅读(15) 评论(0) 推荐(0) 编辑
摘要: "内存上毒"是一种内存管理的安全措施,通常用于防止内存泄漏、悬挂指针(Dangling Pointer)或不当访问已释放内存的情况。具体来说,这个操作的目的是通过将已释放内存的内容设置为某些特定的无效值(“毒值”)来提高程序的健壮性和安全性。 阅读全文
posted @ 2025-01-17 15:26 岸南 阅读(15) 评论(0) 推荐(0) 编辑
摘要: static 关键字用于定义 静态变量,它可以应用于局部变量、全局变量以及函数。 阅读全文
posted @ 2024-08-09 17:48 岸南 阅读(46) 评论(0) 推荐(0) 编辑
摘要: Git 是一个分布式版本控制系统,用于跟踪计算机文件的变化,特别是源代码的管理。它允许多个开发者协作开发软件项目,并能够管理项目的历史记录。Git 的设计旨在提高速度、数据完整性和支持分布式、非线性工作流。 阅读全文
posted @ 2024-08-09 17:13 岸南 阅读(6) 评论(0) 推荐(0) 编辑
摘要: API(Application Programming Interface)是一组定义好的规则和协议,允许不同的软件应用程序相互通信。它们通常提供了一组函数或方法,开发者可以通过调用这些函数来访问特定的功能或数据,而无需了解底层的实现细节。API可以是网络API(如RESTful API),操作系统API,或者库和框架中的API等。 SDK是一套工具、库、文档和示例代码的集合,帮助开发者构建特定平台、系统或设备上的应用程序。SDK通常包含API,但也提供了更多的开发支持。 阅读全文
posted @ 2024-07-30 10:28 岸南 阅读(98) 评论(0) 推荐(0) 编辑
摘要: BIOS(Basic Input/Output System,基本输入输出系统) 是计算机系统中的一种固件接口,它在计算机启动时提供一组基本的操作系统接口,允许操作系统和应用程序与计算机硬件进行交互。BIOS通常存储在主板上的非易失性ROM(只读存储器) 芯片中。 阅读全文
posted @ 2024-07-16 11:36 岸南 阅读(145) 评论(0) 推荐(0) 编辑
摘要: container_of 是一个宏,通常在 C 语言编程中用于在嵌入式系统或内核开发中。它用于通过指向结构体成员的指针来获取指向包含该成员的结构体的指针。 阅读全文
posted @ 2024-07-09 15:20 岸南 阅读(59) 评论(0) 推荐(0) 编辑