随笔分类 - go源码
摘要:文章目录 三色标记算法 混合写屏障 并发、增量回收机制 GC触发时机 go语言作为内存托管类型的开发语言,go runtime提供了自动的内存管理机制,无需程序员手动管理对象的内存释放,go runtime会在合适的时机自动释放不需要的内存对象。 一、三色标记算法 传统的内存对象标记算法 早期的开发
阅读全文
摘要:文章目录 go runtime的基本内存模型 三级存储体系(MCache,MCentral,Mheap) 对象分配流程 一、go runtime的基本内存模型 go runtime 借鉴了C++的内存模型和TCMalloc(Thread-Caching Malloc)内存分配机制,再开始之前,先了解
阅读全文
摘要:文章目录 计算机存储体系介绍 虚拟存储器 内存管理单元与页式存储管理 CPU发起一次访存的全过程 一、计算机存储体系介绍 从计算机的组成角度来看,计算机的存储分为,寄存器-高速缓存-主存储器(泛指内存)-本地存储(磁盘)-外部存储(光盘、云盘等),由下到上,运行速度越来越快,存储空间越来越小,费用越
阅读全文
摘要:文章目录 Go并发特色 Go线程模型 GMP模型 Go运行时系统的核心元素容器 Go调度器 调度器基本数据结构 调度器的一整轮调度 一整轮调度子流程(全力查找可运行的G) 一整轮调度子流程(启用/停止M) 系统监测任务 Go并发特色 Go在内核线程之上,搭建了一个特有的两级线程模型。除了内核对内核线
阅读全文