发布于 2023-01-29
摘要
下面是linux网络编程的一些函数和一些结构体。参考文章 Socket 编程 – MElephant – 博客园 (cnblogs …
下面是linux网络编程的一些函数和一些结构体。参考文章 Socket 编程 – MElephant – 博客园 (cnblogs …
在C语言中只能通过malloc()和其派生的函数进行动态的申请内存,而实现的根本是通过系统调用实现的(在linux下是通过sbrk …
隐式空闲链表、 一个好的动态内存分配器,必须能解决之前提到的种种问题,比如如何记录空闲块?如何选择合适的空闲块并进行分配?当空闲块 …
对于正数,原码和反码,补码都是一样的,都是正数本身。 对于负数,原码是符号位为1,数值部分取X绝对值的二进制。 反码是原码除符号位 …
动态内存分配、 动态内存分配器维护着一个进程的虚拟内存区域,称为堆。 比如说 malloc,我们用malloc来申请一段虚拟内存的 …
虚拟内存作为存储管理的工具、 一个非常关键的思想是,每个进程都有自己专属的独立的虚拟地址空间,内核通过为每个进程提供自己独立的页表 …
在计算机系统中,多个进程之间共享CPU和内容,如果太多的进程需要过多的内存空间那么其中一部分进程金辉因为无法获得足够的内存空间而无 …
共享文件、 内核用三个相关的数据结构来表示打开的文件: 父子进程共享文件: fork函数创建子进程后,子进程将复制父进程的数据段、 …
读取文件元数据、 应用程序能够通过调用 stat 和 fstat 函数,检索到关于文件的信息(有时也称为文件的元数据(metada …
23理解std::move和std::forward: std::move和std::forward只是执行转换的函数(确切的说应 …