c - 哪些教程有助于理解硬件与 C 的交互

标签 c data-structures programming-languages

我想学习 Linux 内核中使用的硬核 c 编程,但是当我阅读这些内容时,一切都浮现在我的脑海中。我无法理解他们使用指向指针函数的代码和数据结构。这让我很困惑。我已经尝试了很长时间,但我无法找到有人完整记录解释每一行代码的硬件交互代码的资源。

谁能给我指出正确的方向我应该怎么走

最佳答案

你有两个问题:理解一些相当复杂的语言结构:指向函数指针的指针我猜可能只是一小部分,我敢打赌当你有多个控制线程时会发生一些更棘手的事情.然后是应用这些技术的问题领域 - 与硬件交互的真正低级的东西。

您期望同时学习这两件事可能是不现实的。打个比方,想象一下,向既不会说英语、也不了解借钱或法律制度概念的人逐行解释莎士比亚的戏剧(比如《威尼斯商人》)。

我的建议:详细研究 C 编码,直到您大致了解如何使用函数指针,更重要的是为什么使用它们,如何编写多线程代码,为什么需要诸如此类的概念一个 mutices 和 sempahores。然后还要阅读低级编程的一般原则,例如 Deitel & Deitel涵盖了很多关于操作系统开发的 Material 。

关于c - 哪些教程有助于理解硬件与 C 的交互,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6637233/

相关文章:

gcc 输出的目标文件是否可以在具有相同选项的相同源的编译之间变化?

algorithm - 带权有向图的邻接矩阵

java - 查询路线建议的图形实现

php - 在 PHP 程序中使用 Ruby

java - 为什么日期从 1970 年 1 月 1 日开始计算?

代码解释(MPICH)

在C中从二进制文件转换为十六进制

c - 在 C 中打印字符串的一部分

java - 从数组构造(非二叉)树

programming-languages - 为什么多态消息在实践中比统一和回溯的组合更强大?