排序:
默认
按更新时间
按访问量

多线程中使用fork()导致分页

最近和同事一起处理了一个 fuse 的大bug;首先看堆栈:Core was generated by `/sf/cluster/bin/pmxcfs'.Program terminated with signal SIGABRT, Aborted.#0  0x00007f2debdcc475 i...

2018-04-28 17:41:18

阅读数:108

评论数:0

为什么CSDN做的越来有丑了??

为什么CSDN做的越来越丑了? 真不知道CSDN的产品经理怎么当的,视觉设计师是怎么做的,真是做的越来越差了。丑的我都无法接受了。 不要站在自己的角度,不要站在公司的角度,也不要站在技术的角度 去做产品,这样只能把产品做死。 我们应该站在用户角度、使用者的角度 来思考问题。因为你们产品是给这...

2018-02-06 11:21:29

阅读数:332

评论数:3

linux c删除文件中指定内容行或指定行

1、增加个临时文件;把源文件内容逐个字节或者逐行读取出来,然后修改或者丢弃,放到临时文件中,当把源文件中所有内容过滤后,再把临时文件全部覆盖回源文件; 2、读取到内存中修改;把整个文件读取到内存中,然后修改,再覆盖回到源文件; 我们应该怀疑下,为什么 shell 命令可以很方便的删除、修改文件内容...

2017-04-16 00:16:37

阅读数:3881

评论数:0

qemu-kvm内存虚拟化原理

关系:客户机虚拟地址---> 哈希表 ---> 影子页表 ---> 虚拟地址--->宿主物理地址; 哈希表之所以用物理地址映射(到影子页表是用虚拟机地址的)是因为每个客户机只有一个哈希表,而虚拟地址每个客户机有多个进程对应的虚拟机地址,也有多个影子表。而物理地址只有一...

2017-03-20 11:59:18

阅读数:425

评论数:0

node + express 中ejs页面中文乱码问题

1、在页面上设置   2、如果还不行,那就是文件本身不是utf-8的格式;linux中的文件格式一般是utf-8的,而Windows上的格式一般是gb2312 和 iso-8859-1 的;因为有的时候我们是在Windows上调试页面,调试满意后再上传到linux,就会导致这样的问题; ...

2016-12-15 00:57:23

阅读数:1685

评论数:0

父进程为1号进程(ppid=1)的僵尸进程处理和分析

但是,父进程为1号进程的进程 其实也是有可能成为僵尸进程的。下面说几种情况: 1、进程还在被其它进程使用,退出; 2、进程的子线程还在执行任务,但主线程已经死掉了(可能主线程已经被杀了,systemd停止服务时会发SIGTERM信号); 3、进程阻塞在某一IO请求上,这时控制权已交到内核手上,这...

2016-11-02 21:02:10

阅读数:8679

评论数:0

SSD卡驱动中trim命令的实现原理

有关trim命令的简介 可以看下http://blog.csdn.net/yuzhihui_no1/article/details/46519701 这里就大概的说下驱动中对trim命令的实现吧,由于对公司代码的保密性,这里就不沾贴代码了,就大概的说下实现原理; 首先是块设备的基本框架:队列 qu...

2016-05-06 00:00:13

阅读数:1273

评论数:0

linux文件系统之读流程 SYSCALL_DEFINE3(read, xxx)

SYSCALL_DEFINE3(read, unsigned int, fd, char __user *, buf, size_t, count);fget_light();fcheck_files();ssize_t vfs_read(struct file *file, char __use...

2016-05-05 00:50:55

阅读数:1411

评论数:0

linux中页缓冲和块缓冲之概念

页缓冲在《linux内核情景分析》一书的第5.6节文件的写与读一章中说明的很详细,这里摘抄下来; 在文件系统层中有三隔主要的数据结构,file结构、dentry结构和inode结构; file结构:代表目标文件的一个上下文,不同进程可以在同一文件上建立不同的上下文,而且同一进程也可以通过打开一个文...

2016-04-27 22:41:01

阅读数:4454

评论数:0

linux内存管理--实际分配函数 buffered_rmqueue

不管是快速分配还是慢速分配,实际分配内存的都是 buffered_rmqueue()函数,其他的都是在选择从哪个地方来分配比较合适; 还是先来说说各个参数: struct zone *preferred_zone 表示分配所能接受的最大zone类型 struct zone *zone  表示就在该...

2016-04-27 22:39:41

阅读数:4430

评论数:0

linux内存管理--slab

struct kmem_cache * kmem_cache_create(const char *name, size_t size, size_t align, unsigned long flags, void (*ctor)(void *)) { return...

2016-04-27 22:38:26

阅读数:3696

评论数:0

linux内存管理--高端内存映射

void *kmap(struct page *page) { might_sleep(); if (!PageHighMem(page)) return page_address(page); return kmap_high(page); } /...

2016-04-27 22:30:03

阅读数:598

评论数:0

linux内存管理--vmalloc

/** * vmalloc - allocate virtually contiguous memory * @size: allocation size * Allocate enough pages to cover @size from the page level...

2016-04-27 22:29:10

阅读数:3633

评论数:0

linux内存管理--慢速分配内存页 __alloc_pages_slowpath

page = __alloc_pages_slowpath(gfp_mask, order, zonelist, high_zoneidx, nodemask, preferred_zone, migratetype); stat...

2016-04-27 22:27:56

阅读数:1855

评论数:0

linux内存管理--分配内存页(快速) get_page_from_freelist

page = get_page_from_freelist(gfp_mask|__GFP_HARDWALL, nodemask, order, zonelist, high_zoneidx, alloc_flags, preferred_zone, ...

2016-04-27 22:26:58

阅读数:1951

评论数:0

linux内存管理--伙伴系统分配内存准备工作

linux内核内存管理的代码改变的有点大,主要是细节方面; 首先从 __get_free_pages()开始总结起: unsigned long  __get_free_pages(grp_t  gfp_mask, unsigned int order) /* ...

2016-04-27 22:26:07

阅读数:1020

评论数:0

__get_free_pages

说下分配策略,这个分配策略主要是获取到节点的编号(也就是得到 pgdat 结构体);下面是分配策略的结构体 static inline struct page * __alloc_pages(gfp_t gfp_mask, unsigned int order, ...

2016-04-27 22:24:51

阅读数:1002

评论数:0

linux内核源码分析(内存管理)--之数据结构

#define PGDIR_SHIFT 22  虚拟地址address >> PGDIR_SHIFT就可以得到PGD的下标,然后根据 (PGD + address>> PGDIR_SHIFT) 得到PGD的指针; #define PGDIR_SIZE (1UL #d...

2016-04-27 22:24:14

阅读数:943

评论数:0

bash shell 的知识点--参考书

我记得下面的知识点基本都是来自于shell的13问,好像。不管怎么样,知识在于分享。  ==============echo=====================  事实上,echo 除了 -n options 之外,常用选项还有:  -e :启用反斜线控制字符的转换(参考下表) ...

2016-04-19 10:19:52

阅读数:847

评论数:0

linux内存管理之初始化zonelists

初始化后zonelists: m1 == node1 movable ; h1 == node1 highmen; n1 == node1 normal; d32.1 == node1 DMA32; d1 == node1 DMA m2 == node2 movable; ...

2016-02-28 13:06:32

阅读数:1166

评论数:0

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