go-asm

0x00 Introduce

 比较重要的一点那就是go的汇编不是对底层机器指令的最直接的标识。有些汇编指令直接映射到机器指令,有些则不是.

Read More

memory-allocator

0x00 Introduce

 我们知道用户的程序所能访问的内存就是虚拟内存,虚拟内存的布局一般分为如下几个部分:

Read More

k8s-eventbroadcaster

0x00 概述

Event是k8s一种重要的资源对象,k8s重要的组件基本都是基于event事件来作出相对应反映,驱动着整个k8s集群的运作。但是event 是如何产生的?如何上报给k8s APIserver?

Read More

programming-kubernetes-part2

0x001 基本概念

  • Kind: 仅仅一个struct field, go type name, 通常大写,例如Pod

Read More

csapp-char1

操作系统漫游

 主要介绍了文件/源程序在磁盘上存储格式,以及源代码-可执行文件期间经过几次加工处理,可执行文件怎么被加载到内存里面执行。 用户无法直接操作CPU,无法直接操作硬盘。。这就需要操作系统的协助,操作系统主要让用户更简单的使用硬件,怎么让用户更好的使用硬件(硬件杂七杂八有很多中),这个就需要操作系统对这些做个抽象, 有文件抽象(io设备,统一unix io调用),虚拟内存(方便内存管理,内存分段),进程(正在运行的程序的抽象), 以及CPU并发并行机介绍,CPU的一些歪门邪道技术实现了超线程,并发指令来加速程序的运行.

Read More

go启动流程分析

0x00 golang 启动过程

 通过一段简单的demo来看下go 代码启动发生了啥

Read More

go-interface

0x00 相关概念

 在go语言里面interface用于定义一组行为,一个具体的类型只要实现了这一组行为,那么就可以称这个具体的类型实现了这个接口。下面是interface结构体

Read More

k8s编程-介绍

0x00 什么是kubernetes编程

 kubernetes编程在这个里面指的是开发一个k8s原生应用程序,通过直接和k8sAPI交互,查询/更改resource的状态.

Read More

golang 逃逸机制

0x00 内存管理

 go变量声明存在两部分:

  • Heap: 全局存储空间, 由runtime来管理,这部分区域是可以共享的, 生命周期由gc来管理, 对象可以被其他函数访问到(通过指针方式)
  • Stack: 局部变量存储,生命周期由对应的函数来管理,并且只能被这个函数内部来访问到,没有gc。

Read More

interview

0x00 iintroduce

 收集整理互联网上相关面试题

0x01 字节电商

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
字节跳动电商一面

时间:70min

1. 介绍项目
2. ``select(), poll(), epoll()`` 的区别定义
3. Linux QPS怎么统计?
4. CSRF攻击原理、防范
5. 四次挥手、time_wait的意义
6. 进程和线程、Goroutine概念
7. Golang map的扩容
8. gRPC原理、几种模式?
9. MySQL聚簇索引和非聚簇索引
10. MySQL为何要用自增主键
11. 什么是B+树
12. 事务隔离机制、可重复读实现
13. 手撕LRU

Read More