munmap
- 内存管理:C/C++开发中的malloc函数的实现原理
-
C语言中使用malloc可以分配一段连续的内存空间。在c/c++开发中,因为malloc属于C标准库函数,经常会使用其分配内存。malloc是在堆中分配一块可用内存给用户。作为一个使用频繁的基础函数,理解清楚其实现原理很有必要,因此本文主要探讨malloc的具体实现原理,以及在linux系统中这该函...
- 用 TDengine 3.0 碰到“内存泄露”?定位问题原因很关键
-
作为C/C++开发人员,内存泄漏是最容易遇到的问题之一,这是由C/C++语言的特性引起的。众所周知,开源的时序数据库(TimeSeriesDatabase)TDengineOSS就是使用C语言进行底层自研的,也因此,针对内存泄露问题,我们的研发小伙伴也做了诸多研究和思考。在本篇文章中,我们将...
- C++开发必知的内存问题及常用的解决方法-经典文章
-
1.内存管理功能问题由于C++语言对内存有主动控制权,内存使用灵活和效率高,但代价是不小心使用就会导致以下内存错误:omemoryoverrun:写内存越界odoublefree:同一块内存释放两次ouseafterfree:内存释放后使用owildfree:释放内存的参数...
- Linux内核:内存映射原理、按需调页、匿名映射
-
a.内存映射原理内存映射即在进程的虚拟地址空间中创建一个映射,分为两种:文件映射:文件支持的内存映射,把文件的一个区间映射到进程的虚拟地址空间,数据源是存储设备上的文件。匿名映射:没有文件支持的内存映射,把物理内存映射到进程的虚拟地址空间,没有数据源。...
- linux中申请内存的情况分析(linux申请物理内存)
-
一前言内存对于系统资源来说,非常重要,内存问题可以导致系统延迟增大,系统内存泄漏,进程被kill等多种严重问题,所以分析进程的内存占用很有必要。本文重点分析了程序中动态申请内存的情况。...
- Linux系统编程—进程间同步(linux进程同步方法)
-
我们知道,线程间同步有多种方式,比如:信号量、互斥量、读写锁,等等。那进程间如何实现同步呢?本文介绍两种方式:互斥量和文件锁。##互斥量mutex我们已经知道了互斥量可以用于在线程间同步,但实际上,互斥量也可以用于进程间的同步。为了达到这一目的,可以在pthread_mutex_init初始化之前,...
- Linux系统编程—共享内存之mmap(linux 共享内存 mmap)
-
共享内存概念共享内存是通信效率最高的IPC方式,因为进程可以直接读写内存,而无需进行数据的拷备。但是它没有自带同步机制,需要配合信号量等方式来进行同步。共享内存被创建以后,同一块物理内存被映射到了多个进程地址空间,当有一个进程修改了共享内存的数据,其余的进程均可看见所修改的内容,反之亦然。mmap函...
- 内存优化总结:ptmalloc、tcmalloc和jemalloc
-
概述需求系统的物理内存是有限的,而对内存的需求是变化的,程序的动态性越强,内存管理就越重要,选择合适的内存管理算法会带来明显的性能提升。...
- 一线互联网公司字节跳动后端开发视频架构面经总结
-
这篇文章主要介绍了字节跳动后端开发视频架构面经总结,觉得挺不错的,现在分享给大家,也给大家做个参考。一起过来看看吧背景面试方式:视频面(一面)部门:字节跳动-视频架构-后端开发主要根据简历上的内容(项目和技能)来问...