Shell Tools and Scripting

PokPok
前言 这篇笔记主要是说明一些bash scripts中要注意的问题,比如变量的赋值,函数,Shebang,特殊变量,通配符等;以及介绍一些提高在shell环境下提高工作效率的工具,例如查看使用方法的时候,

6.824 Lab3 Fault-tolerant Key/Value Service

PokPok
强一致性Key/Value服务 其实在写完Raft后,K/V的接口已经比较明显了,只需要将操作写入Raft entry的Command内,然后等待Raft的同步,再应用到状态机(例如map[string]

Protection Mechanism on 80386

PokPok
80386 下的保护模式划为5个部分: 类型检查 界限检查 可寻址域的限制 过程调用的限制 指令集的限制 事实上按照段页机制又需要分为段机制下的保护和页机制下的保护。 段级别的保护 段描述符中存储了保护参数,当段描述符到段寄存

Hugo is comming !

PokPok
将博客从 hexo 迁到了 hugo,主要原因是文章越来越多,hexo build速度就显得力不从心了,hexo 很多主题都不再维护,甚至很少有新的主题发布出来,而 hugo 相反,随着golang热度的上涨,社区也很活跃,其

6.824 Notes:MapReduce、GFS、Raft

PokPok
最近这段时间有一些空闲时间,可以开始做下6.824,目前是Spring 2018,最新的2019也快出了,提前刷下notes和paper。 分布式系统是关于多个计算机系统共同合作并且进行存储大量的网站数据

Effective Go

PokPok
goroutine部分 goroutine的一些tricks,比如 func Announce(message string, delay time.Duration) { go func() { time.Sleep(delay) fmt.Println(message) }() // 注意括号 - 必须调用该函数。 } 直接在go关键字后面接一个lambada表达式作为例程。 goroutine通常和c

线程同步

PokPok
这篇文章是针对APUE习题11-2的writeup,进程在开启线程后,不同线程需要完成不同的工作,然后在运行中可能引用同一个元素,举一个例子,当多个线程创建后,需要从消息队列中获取一个作业信息的结构体

算法与数据结构总结

PokPok
CLRS快撸完一半了,所以趁开学前做下小总结,CLRS研究问题的方式和平时的感觉有那么些不太一样,但是接触久了就会慢慢习惯,主要注重算法的运行时间和算法可行性。初阶学习目标是掌握几种重要的排序算法和课

apue-file and directory

PokPok
文件类型 stat函数簇(fstat,lstat, lstat, fstatat)是用来获取文件状态的函数,需要提前定义一个结构体struct stat来获取这些文件的特殊信息。 文件类型包括普通文件,目录文件,块特殊文

apue-file I/O

PokPok
写在前面的话 暑期撸了一阵子算法导论,在红黑树的删除操作卡主了,暂时放下算法,稍微看看别的计算机知识,APUE是一本关于Linux下C语言API的书籍,中间穿插了关于UNIX操作系统的知识,趁这个机会,