05 2021 档案
摘要:面对的问题 对于线程的栈空间,相信各位小伙伴都不陌生。它有下面的这几项特性: > 1. 由操作系统分配固定的空间; > > 2. 使用一个栈寄存器来保存实时位置; > > 3. 后进先出。 今天,我们不聊操作系统层面对栈的管理,只从应用程序的角度,来看一下如何实时获取栈的使用情况。 在一般的单片机/
阅读全文
摘要:初次见面 大家好,我是 ELF 文件,大名叫 Executable and Linkable Format。 经常在 Linux 系统中开发的小伙伴们,对于我肯定是再熟悉不过了,特别是那些需要了解编译、链接的家伙们,估计已经把我研究的透透的。 为了结识更多的小伙伴,今天呢,就是我的开放日,我会像洋葱
阅读全文
摘要:非常使用、流行的函数发现机制。
阅读全文
摘要:一、前言 这篇文章,按照下面这 2 张图,来描述 glib 在 Linux 和 Windows 平台上,是如何来进行线程库的设计的。 Linux 平台: Windows 平台: 最近写了几篇关于跨平台的应用程序设计思路,有些小伙伴在后台留言询问关于一些通用的跨平台库,看来这方面的需求还是很多的。 所
阅读全文
摘要:一、前言 在上一篇文章中(使用 cmake 来搭建跨平台的应用程序框架:C语言版本),我们以源代码的形式,演示了利用利用 cmake 这个构建工具,来编译跨平台的动态库、静态库和应用程序。 这篇文章描述的是同样的功能,只不过是用 C++ 来编码,另外,增加了一个小功能:如果在导出的库文件中,使用另一
阅读全文
摘要:一、前言 我们在写应用程序的过程中,经常需要面对一个开发场景:编写跨平台的应用程序。 这种要求对于 Linux 系列的平台来说,还是比较好处理的,大部分情况下只需要换一个交叉编译工具链即可,涉及到硬件平台相关部分再嵌入几个内联汇编。 但是,对于 Windows 平台来说,就稍微麻烦一些。你可能会说,
阅读全文