4张图搞清楚gdb工作原理
大家好,这里是物联网心球。 gdb是Linux开发者经常会用到的调试工具,相信大部分读者都会使用gdb命令来调试程序。那么大家是否好奇:gdb为什么能够调试我们的程序呢?本文我们来一探究竟。

大家好,这里是物联网心球。 gdb是Linux开发者经常会用到的调试工具,相信大部分读者都会使用gdb命令来调试程序。那么大家是否好奇:gdb为什么能够调试我们的程序呢?本文我们来一探究竟。

大家好,这里是物联网心球。 今天我们来讨论一个比较热门的话题TCP Nagle算法。关于TCP Nagle算法,大家或多或少接触过。但是,大家未必能够把TCP Nagle算法讲清楚。面试时,考官也喜欢问Nagle算法相关的问题。所以我们很有 …

大家好,这里是物联网心球。 ulimit是我们经常会使用到的命令,这个命令对Linux性能优化很有帮助。那么,当我们执行ulimit命令时,系统都做了哪些工作?今天我们来一探究竟。

大家好,这里是物联网心球。 上一篇文章4张图搞懂堆和栈的区别受到很多读者的欢迎,成为了爆款文章。本章我们趁热打铁,来学习一下进程栈和线程栈。 关于进程栈,大家应该都比较了解了,进程虚拟地址空间中的栈其实就是进程栈。那么什么是线程栈呢?本章将 …

大家好,这里是物联网心球。今天我们来聊聊堆栈,堆栈是软件开发人员绕不过的一个概念。堆栈指的是堆和栈两种内存区域。很多读者喜欢从数据结构的角度来学习堆栈,这种方式并不会让大家真正理解堆栈。

大家好,这里是物联网心球。 在计算机系统中,CPU和内存属于高速设备,而磁盘、网卡等设备属于低速设备。高速设备和低速设备之间传输数据时,高速设备通常需要等待低速设备。I/O模型定义了应用程序与操作系统内核在数据交互过程中的协作方式,主要为了 …

大家好,这里是物联网心球。 今天我们来聊聊mmap, mmap是 Linux系统的一种内存映射机制,允许将文件或设备直接映射到进程的虚拟地址空间 。进程通过操作内存指针即可读写文件,无需调用 read/write 等系统调用。mmap内存映 …

大家好,这里是物联网心球。今天,我们来聊聊Linux 7种文件类型。对Linux系统有一定了解的同学一定知道Linux有7种文件类型,分别为: 普通文件( - ):存储数据、文本或可执行程序的基本文件类型。

大家好,这里是物联网心球。 最近一直忙着写新书,本文同样是新书的一个小节。本文讨论的是网络编程中一个比较重要概念端口复用。 端口复用,即两个套接字绑定相同的IP和端口。注意这里说的两个套接字指的是两个TCP套接字或两个UDP套接字,而不是一 …

大家好,这里是物联网心球。 最近一直忙着写我的新书,很久没有更新文章了,今天的文章是新书中的一个小节,希望能帮助大家彻底搞懂epoll机制。 1.从内核看epoll机制 select和poll虽然能够实现IO复用的功能,但是由于设计的缺陷 …