自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

转载 Buddy算法

最近在在研究Ext4文件系统,ext4预分配涉及到buddy思想,特转载相关概念。Buddy算法的优缺点:1)尽管伙伴内存算法在内存碎片问题上已经做的相当出色,但是该算法中,一个很小的块往往会阻碍一个大块的合并,一个系统中,对内存块的分配,大小是随机的,一片内存中仅一个小的内存块没有释放,旁边两个大的就不能合并。2)算法中有一定的浪费现象,伙伴算法是按2的幂次方大小进行分配内存块,当然这样做是有原...

2018-06-29 11:05:56 963

转载 关于ext4 buddy bitmap构建分析

我们知道常规的一个块组是128M,有1个block(假设1个block是4K)的bitmap,也就是4K=4096*8=32768个位,其中每个位代表一个block的使用情况,1代表使用,0代表空闲。这个大家都知道,现在分析一下buddy bitmap的构建:磁盘上的bitmap在内存里使用一个page来表示,而buddy bitmap只在内存里也是一个page,因此一个块组在磁盘的位图占用了两个...

2018-06-29 11:04:09 1263

原创 ext3 jbd 宏定义使用之set_buffer_dirty,clear_buffer_jbddirty

近来研究ext3 JBD系统,发现里面有个有意思的用法:voidjournal_release_buffer(handle_t *handle, struct buffer_head *bh){ ... clear_buffer_dirty(bh); clear_buffer_jbddirty(bh); ...}以上高亮两个函数,通篇搜索不到相关源码实现。怎...

2018-06-19 17:02:10 687

原创 VMware中找不到hgfs解决办法,重装VMware Tools

搭建ubuntu环境,虚拟机版本VMware14.1.2 build-8497320,ubuntu版本ubuntu-17.10.1-desktop-amd64在虚拟机->设置->选项->共享文件夹 中设置总是启用之后,在ubuntu mnt目录下找不到hgfs。网上找了很多方法尝试与宿主机共享目录,有一个能够暂时有效的方法:step1.确认VMware Too...

2018-06-13 19:23:17 11991

转载 Ext3文件系统及JDB介绍

Ext3文件系统及JDB介绍转自:http://www.chongchonggou.com/g_826205411.htmlExt3介绍对于ext3文件系统,磁盘空间划分一系列block groups,每个group有位图来跟踪inode和data块的分配和范围。其物理布局如下:Superblock:位于group内第0个block,为了保证兼容,前1024B字节为0,SB从1024B偏移处存储,...

2018-06-13 16:23:11 619 1

转载 linux中fd_set的内部实现

linux中fd_set的内部实现一、在网络编程中,经常用到selec系统调用来判断套接字上是否存在数据可读,或者能否向一个套接字写入数据。其原型为:  int select(int nfds, fd_set *readfds, fd_set *writefds, fd_set *exceptfds, struct timeval *timeout);其中,fd_set是一个socket集合,常用...

2018-06-01 16:42:46 1719

转载 【转】Linux命名空间

Linux的命名空间1. 为什么提供命名空间命名空间是一种轻量级的虚拟化手段。传统的虚拟化软件,是虚拟化多个不同的操作系统,对共享资源的限制很大。通过提供命名空间,可以让进程与进程之间,用户与用户之间彼此看不到对方。命名空间,相当于容器。命名空间,本质上建立了系统的不同视图。 chroot是一种简单的命名空间,仅限于将进程限制在文件系统的某一部分。2. 创建命名空间的方式1). fork/clon...

2018-05-17 15:02:45 225

转载 git lg 使用

        Git是一个强大的版本管理器,建议每一个开发者或者开发团队都可以使用git。想当初,自己code的时候还是用evernote来保存一些代码片段,以免写烂,自从用上git后,妈妈再也不用担心code shit了。[html] view plain copygit log  命令是查看全部提交日志  git log -2  查看最近2次的提交日志  git log -p  查看历史纪录...

2018-03-31 02:29:28 3220

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除