初次见面 大家好,我是 ELF 文件,大名叫 Executable and Linkable Format。 经常在 Linux 系统中开发的小伙伴们,对于我肯定是再熟悉不过了,特别是那些需要了解编译、链接的家伙们,估计已经把我研究的透透的。 为了结识更多的小伙伴,今天呢,就是我的开放日,我会像洋葱 Read More
一、前言 这篇文章,按照下面这 2 张图,来描述 glib 在 Linux 和 Windows 平台上,是如何来进行线程库的设计的。 Linux 平台: Windows 平台: 最近写了几篇关于跨平台的应用程序设计思路,有些小伙伴在后台留言询问关于一些通用的跨平台库,看来这方面的需求还是很多的。 所 Read More
一、前言 我们在写应用程序的过程中,经常需要面对一个开发场景:编写跨平台的应用程序。 这种要求对于 Linux 系列的平台来说,还是比较好处理的,大部分情况下只需要换一个交叉编译工具链即可,涉及到硬件平台相关部分再嵌入几个内联汇编。 但是,对于 Windows 平台来说,就稍微麻烦一些。你可能会说, Read More
在 Linux 代码中,经常可以看到在 C 代码中,嵌入部分汇编代码,这些代码要么是与硬件体系相关的,要么是对性能有关键影响的。 在很久以前,我特别惧怕内嵌汇编代码,直到后来把汇编部分的短板补上之后,才彻底终结这种心理。 也许你在工作中,几乎不会涉及到内嵌汇编代码的工作,但是一旦进入到系统的底层,或 Read More
一、前言 前几天有同事过来,让我推荐一本 Linux 系统的书籍。 我就问他 2 个问题: 你想学习 Linux 哪一个层次:内核层?驱动层?应用层? 你的目标是什么:是学习 Linux 系统的设计架构?某个模块的驱动开发?还是仅仅想系统学习一下应用程序编程? 最后,给他推荐了下面这本书: 后来我又 Read More