Huweicai
Home
(current)
About
Archives
Huweicai
好奇心探索世界
善意假设
做最酷的事情
Hello, World!
~ Enjoy Today ~
Categories
Go (3)
English (1)
Featured Tags
linux (12)
操作系统 (7)
计算机网络 (7)
go (6)
容器 (6)
编程语言 (6)
存储 (5)
cloudnative (4)
kubernetes (4)
cpp (3)
硬件 (3)
cilium (2)
cpu (2)
docker (2)
ebpf (2)
ip (2)
java (2)
kernel (2)
programming (2)
shell (2)
命令行 (2)
c++ (1)
compiler (1)
en (1)
ethernet (1)
git (1)
harbor (1)
hft (1)
http (1)
innodb (1)
jvm (1)
mysql (1)
pprof (1)
programing (1)
python (1)
redis (1)
tcp (1)
yuv (1)
办公效率 (1)
图像 (1)
并发 (1)
数据库 (1)
文件系统 (1)
日志 (1)
权限管理 (1)
磁盘 (1)
镜像 (1)
音视频 (1)
««
«
1
2
3
4
5
6
7
»
»»
Golang 如何排查协程泄漏问题
2020-05-29
3 minutes read
背景 周所周知,内存泄漏是一个很严重的问题,会导致系统运行占用资源越来越多,无法释放,直至崩溃。所幸 Go 语言是一门 具有垃圾回收的语言,能大大降低遇到内存泄漏的概率,而我们今天要说的是另外一个棘手的问题:协程泄漏。 协程泄漏:顾名思义就是出现了应该释放而没有被释放的协程,导致系统协程数量一直上升。不像对象回收需要引用计数、三色标记等手段,协程的回收是相当简单的,等待协程将代码从头到尾执行完毕之后这一块儿空......
go
go
pprof
编程语言
颜色是如何呈现的
2020-04-09
5 minutes read
现实的世界是丰富多彩的,然而我们又是怎么将这种色彩呈现到我们的显示器上的呢? 人眼如何感知色彩 众所周知,光是一种电磁波,可见光是人眼所能处理的一个电磁波频率区间子集,人眼看到事物是通过光来感知的,颜色的本质就是电磁波的频率,不同频率的光即我们语言中所定义的不同种类的颜色。本质上我们的眼睛和雷达并没有任何区别,只是大脑的解码渲染能力强一点罢了。 人的眼睛中有视锥细胞和视杆细胞,视杆细胞负责感受光的强度,......
yuv
图像
音视频
找出使用最频繁的Shell命令
2020-03-20
5 minutes read
使用最频繁 TOP 10命令: history | awk '{map[$2]++} END { for (a in map )print map[ a ]" " map[ a ]/NR*100 "% " a }'| sort -rn | nl | head 先上成品,然后,我们一步一步分析这行语句都涉及到了命令,它们又是如何拼凑到一块儿完成我们的目的的。 Shell 首先我们需要明确一下 shell 的定义,大家可能经常听到 shell ,shell 脚本这些词,那么 shell 到底是什么呢? Shell 翻译成中文的意思就是壳,和操作系统内核的核相对应,就是一个基于内核的可操作界面。可操作性界面又分为两种: 图形界面类:Graphi......
linux
shell
Linux 是如何启动的
2020-03-20
One minute read
inux系统是如何启动的?......
linux
shell
进程线程协程的本质区别
2020-03-17
10 minutes read
现代多任务操作系统通常都会有进程的概念来对任务进行隔离,而为了充分利用多核处理器性能同时又减少进程创建的开销,通常又都会引入更细粒度的调度单元:线程。 我们经常能在教科书上看到对于进程和线程的定义: 进程是操作系统分配资源的最小单位,线程是进行调度的最小单元。 这句话没错,但是只是从职责上给出的定义,而不是基于底层实现出发的。 广义上的线程分为内核态线程和用户态线程两种,内核态线程受操作系统直接调度可以充......
操作系统
Go
Linux
Go语言sync包实现原理分析
2020-01-10
6 minutes read
Java 语言中有一个 java.util.Concurrent 包提供了大量的并发工,而 Go 语言中也有这样的角色:sync包。 sync.Mutex 锁实现原理 sync.Mutext 是 Go 提供的一种同步原语,用于表达互斥,不过不推荐在业务中使用,根据 Go 的设计思想,应首先考虑通过传递消息(管道)来共享内存,而不是通过共享内存来传递消息 Mutex 结构体如下,只有两个变量,非常简单: type Mutex struct { state int32 // 状态,bitmap sema uint32 // 信号量 } state 字段是一个位图 第 0 位表示是否加锁 第 1 位表示是否已唤醒 第 2 位表示是否为饥饿模......
go
并发
编程语言
Go 多路条件语句 Switch 语法详解
2020-01-02
3 minutes read
Switch 是 Go 语言中一种多路条件语句,一般搭配 case 语句使用。 执行逻辑 一个 switch case 条件结构如下所示: switch simpleStatement; condition { case expression1,expression2: statements case expression3: statements default: statements } 和 if 语句类似,switch 语句也可以在条件语句之前执行一段简短的表达式(可以用于很方便的控制变量的作用域),switch case 开始执行时,会先执行这一个表达式(空也算一种),然后计算出条件语句的值,接着按从上到下,从左到右的顺序一个一个的执行 case 语句的条件表达式,如果值相等的话就会进入执行 case 条件......
go
go
编程语言
««
«
1
2
3
4
5
6
7
»
»»