自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(188)
  • 资源 (3)
  • 收藏
  • 关注

原创 linux知识地图

1, 操作系统原理2,linux驱动程序

2014-08-24 21:16:29 2624

转载 同一进程中的线程究竟共享哪些资源

线程共享的环境包括:进程代码段、进程的公有数据(利用这些共享的数据,线程很容易的实现相互之间的通讯)、进程打开的文件描述符、信号的处理器、进程的当前目录和进程用户ID与进程组ID。 进程拥有这许多共性的同时,还拥有自己的个性。有了这些个性,线程才能实现并发性。这些个性包括:1.线程ID每个线程都有自己的线程ID,这个ID在本进程中是唯一的。进程用此来标识线程。2.寄存器组的值

2015-10-26 20:44:14 871

转载 编写最简单的内核:HelloWorld

原文出处: Arjun Sreedharan   译文出处:NOALGO博客   欢迎分享原创到伯乐头条内核是操作系统最核心的内容,主要提供硬件抽象层、磁盘及文件系统控制、多任务等功能,由于其涉及非常广泛的计算机知识,很少被人们所熟悉,因而披上了一层神秘的面纱。本文将从零开始实现一个最简单的内核,其可以通过x86系统的GRUB引导启动,并向屏幕输出“Hello World!

2015-10-26 20:16:07 1096

转载 How to Design a Good API and Why it Matters

http://wenku.baidu.com/link?url=DNX_g0Q2q3oWM5PaAZUjUVQU09CigFjf9Qr87d1ZY2RhoEwNoUbzQ0OOYfgvlUFGBq_H0VRHBWcbW7ikzsPSTWwfZolFKXBMeIngv3Rv_SqCharacteristics of a Good API• Easy to learn• E

2015-01-31 20:54:54 696

转载 Linux监控命令全覆盖

http://blog.jobbole.com/81173/1.1 top1.1.1 命令说明Top 命令能够实时监控系统的运行状态,并且可以按照cpu、内存和执行时间进行排序 1.1.2 参数说明命令行启动参数:用法: top -hv | -bcisSHM -d delay -n iterations [-u user | -U user]

2015-01-25 18:58:11 694

转载 7个示例科普CPU Cache

原文:http://coolshell.cn/page/8(感谢网友 @我的上铺叫路遥 翻译投稿)CPU cache一直是理解计算机体系架构的重要知识点,也是并发编程设计中的技术难点,而且相关参考资料如同过江之鲫,浩瀚繁星,阅之如临深渊,味同嚼蜡,三言两语难以入门。正好网上有人推荐了微软大牛Igor Ostrovsky一篇博文《漫游处理器缓存效应》,文章不仅仅用7个最简单的源码

2014-11-30 22:16:44 478

转载 linux虚拟进程地址映射机制

原帖:http://www.eefocus.com/article/09-06/75169s.html1、每个进程都有4G虚拟内存,但大多数进程用不到那么多内存,甚至只会用其中很小的一部分。当进程真的要用内存时,操作系统让将那一段虚拟地址空间与一块物理内存关联起来。所以进程的4G虚拟内存中只有一小部分后面有物理内存支撑着,访问其它虚拟地址空间部分就会出错(段错误)。实际上,大多数操作系

2014-11-29 21:52:27 952

转载 MMU和cache学习

原帖:http://blog.csdn.net/chinesedragon2010/article/details/59223241.      MMUMMU:memory management unit,称为内存管理单元,或者是存储器管理单元,MMU是硬件设备,它被保存在主存(main memory)的两级页表控制,并且是由协处理器CP15的寄存器1的M位来决定是enabled还是d

2014-11-29 21:32:34 443

转载 虚拟内存,MMU/TLB,PAGE,Cache

原帖:http://hi.baidu.com/gilbertjuly/item/6690ba0dfdf57adfdde5b040虚拟地址VA到物理地址PA以页page为单位。通常page的大小为4K。物理页面称为page frame。查看应用程序进程的地址空间,可以看到分为很多段,比如代码段(只读)、数据段(读写)、堆、共享库(其中进一步分段)、栈空间等。整个应用程序的

2014-11-29 21:12:25 1164

转载 重装xp找回ubuntu

很多朋友在安装 ubuntu 之后因为种种原因需要重新安装 xp ,这样就会将硬盘的 mbr (主引导扇区)覆盖,导致 ubuntu 无法启动,网上对于这种情况提供了很多解决办法,但是有些复杂。经过参考网上的一些资料,以及自己的实践,提供给大家两种最简便的方法:准备:下载 grub4dos 文件,http://download.gna.org/grub4dos/ 将 grldr 、 g

2014-11-25 22:43:32 406

转载 xp下安装ubuntu.

一、下载Ubuntu11.10系统镜像文件,放在C盘。  二、将硬盘最后一个分区空出部分空间,使那些空间属于未分配状态(自己的是500G硬盘,留了50个G)。 三、下载Grub4Dos(下载地址:http://download.csdn.net/detail/maylian7700/4275799),解压grldr和menu.lst两个文件至XP的C盘根目录下,然后修改menu.l

2014-11-25 22:42:40 498

转载 使用virtualenv创建虚拟python环境

1, 安装virtualenvsudo apt-get install python-virtualenv或者 sudo pip install virtualenv2,建立一个测试目录mkdir venvcd venv然后创建一个虚拟环境:virtualenv env1cd切换到env1目录下,执行命令:source bin/activate你会发现在shel

2014-11-25 22:40:16 447

转载 ubuntu增加国内源

1、修改源地址:cp /etc/apt/sources.list /etc/apt/sources.list.bakvim /etc/apt/sources.list2、在文件末尾增加网易源:## neteasedeb http://mirrors.163.com/ubuntu/ precise-updates main restricteddeb-src

2014-11-25 22:38:43 622

转载 uboot启动代码

u-boot-2014.07.tarDirectory Hierarchy:====================/arch Architecture specific files  /arc Files generic to ARC architecture    /cpu CPU specific files      /arc700 Files specif

2014-11-22 22:29:43 749

转载 UBOOT启动过程zz

http://www.cnblogs.com/andrew-wang/archive/2012/12/06/2806238.html

2014-11-22 22:16:38 465

转载 initrd

解开一个cpio initrd: > mkdir work > cp /boot/initrd.img ./initrd.img.gz > gunzip -c initrd.img.gz > cpio -i --make-directories 制作一个cpio initrd > find . | cpio -c -o > ../initrd.img > gzip

2014-11-06 21:27:32 416

转载 软件开发2:代码检视

看见了if,就想else;看见malloc,就去找free;函数调用要小心,需要看看返回值;看见for循环,就找边界值;看见return要注意,要去前面找资源;看见数组把神提,问题往往在下标;不要小看字符串,长度是个大问题;得到函数不要急,看看变量初始化,各种路径要小心;赋值函数最危险,变量没有初始化。

2014-11-05 22:51:33 1385

转载 软件开发1

1,版本管理1) SVN2)GIT

2014-11-05 22:05:21 425

转载 用字符设备实现一个pipe

/****************************************************************************** *Name: memdev.c *Desc: 字符设备驱动程序的框架结构*Parameter: *Return: *Author: derek *Date: 2013-6-4 ************************

2014-11-01 15:54:29 649

转载 多核和亲和性

1,进程绑定2,线程绑定3,内核态

2014-10-28 20:09:49 678

转载 linux VFS

http://www.ibm.com/developerworks/cn/linux/l-vfs/

2014-09-28 22:02:44 841

转载 linux inode理解

http://www.cnblogs.com/itech/archive/2012/05/15/2502284.html一、inode是什么?理解inode,要从文件储存说起。文件储存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector)。每个扇区储存512字节(相当于0.5KB)。操作系统读取硬盘的时候,不会一个个扇区地读取,这样效率太低,而是一次性连续读取多个扇区,即

2014-09-28 21:42:06 365

转载 加密算法

1、原理介绍2、duic

2014-09-15 23:15:48 1292

转载 字符设备框架(ioctrl)

1、driver#include #include #include #include #include #include #include #include #include #include //module_param(mem_major, int, S_IRUGO); #define MEMDEV_MAJOR 260

2014-09-14 17:34:55 616

原创 将一个静态库(.a)链接/打包到动态库中。

1, 如果简单用-l的方式,则so只会链接需要的

2014-09-13 11:59:19 4020

转载 内核线程、用户线程、LWP

http://www.cnitblog.com/tarius.wu/articles/2277.html在现代操作系统中,进程支持多线程。进程是资源管理的最小单元;而线程是程序执行的最小单元。一个进程的组成实体可以分为两大部分:线程集合资源集。进程中的线程是动态的对象;代表了进程指令的执行。资源,包括地址空间、打开的文件、用户信息等等,由进程内的线程共享。线程有自己的私有数据:

2014-09-01 22:05:14 1927

转载 Linux 线程模型的比较:LinuxThreads 和 NPTL

当 Linux 最初开发时,在内核中并不能真正支持线程。但是它的确可以通过 clone() 系统调用将进程作为可调度的实体。这个调用创建了调用进程(calling process)的一个拷贝,这个拷贝与调用进程共享相同的地址空间。LinuxThreads 项目使用这个调用来完全在用户空间模拟对线程的支持。不幸的是,这种方法有一些缺点,尤其是在信号处理、调度和进程间同步原语方面都存在问题。另外,

2014-09-01 21:34:15 520

转载 insmod和modprobe

1,insmodinsmod 是靠一个在kernel/module.c里定义的系统调用来实现的。1. 此系统调用(sys_init_module )分配内核存储空间(kernel memory)给相关的模块,这个内存分配动作是由vmalloc完成;2. 然后将该模块内容拷贝到这块存储空间里;3. 接着声明内核引用该模块;4. 呼叫该模块的初始化涵数这样,

2014-09-01 21:18:14 611

转载 linux进程调度

1,为什么需要进程调度

2014-08-30 22:31:16 452

转载 glibc和eglibc

GNU C 库(GNU C Library,又称为glibc)是一种按照LGPL许可协议发布的,公开源代码的,免费的,方便从网络下载的C的编译程序。GNU C运行期库,是一种C函数库,是程序运行时使用到的一些API集合,它们一般是已预先编译好,以二进制代码形式存在Linux类系统中,GNU C运行期库通常作为GNU C编译程序的一个部分发布。Glibc最初是自由软件基金会为其GNU操作系统所写

2014-08-24 21:27:13 1675

转载 系统调用的解释

1,系统调用只是进程状态发生切换,并没有进程之间的切换,当调用系统调用时,只是一个进程从用户太到内核态的转换,而且还是要保存进程在用户态的各个寄存器的值,因为从内核态返回的时候不能保证能返回到这个进程中.从用户态传递参数到系统调用在x86中是通过寄存器传递的.2,每个进程都有两个栈:用户态的栈和核心态的栈。在什么态下运行,就用相应的栈3,

2014-08-23 16:27:30 1890

原创 so的函数重名和重载

1,两个so有同名的函数,如何解决冲突的问题?1)链接sh

2014-07-14 21:58:13 2343

转载 linux的中断2: 线程模式

1、注册中断1)static inline int __must_checkrequest_irq(unsigned int irq, irq_handler_t handler, unsigned long flags,   const char *name, void *dev){return request_threaded_irq(irq, handler, NULL,

2014-06-14 23:35:43 921

转载 linux的中断1

本帖最后由 Godbach 于 2011-07-19 09:59 编辑本文描述内容针对2.6.31+x86平台,不包含硬件相关的细节。作者:独孤九贱;版权所有,转载请注明出处。有问题欢迎与我交流讨论。一、概述中断,本质上是一个电信号,早期的计算的并没有中断这一概念,这使得CPU与外围设备的交互变得困难,CPU需要不

2014-06-14 22:56:04 543

转载 linux在用户态的定时器

1、alarmunsigned int alarm(unsigned int seconds)函数说明: alarm()用来设置信号SIGALRM在经过参数seconds指定的秒数后传送给目前的进程。如果参数seconds为0,则之前设置的闹钟会被取消,并将剩下的时间返回。void sigalrm_fn(int sig){  printf("alarm!\n");

2014-06-13 23:22:59 2320

转载 线程绑定核,线程调度属性

1、pthread_setaffinity_np#include  #include  #include

2014-06-13 23:05:46 1281

原创 linux的系统调用

/* 0 */        CALL(sys_restart_syscall)   //         CALL(sys_exit) CALL(sys_fork)          CALL(sys_read)         CALL(sys_write) /* 5 */        CALL(sys_open)         CALL(sys_c

2014-06-07 23:08:53 626

转载 GDB使用技巧

1、断点(gdb)bmake_  // 支持联想功能2、

2014-06-07 15:13:52 434

转载 VI中的命令

2014-06-07 14:21:45 436

转载 linux常用命令

1、查看系统信息2804459512

2014-06-07 14:11:40 418

大话处理器v2.0.ppt

大话处理器v2.0.ppt 华为公司一个牛人写过一本书《大话处理器》 这是ppt版本的介绍胶片

2013-01-27

High-Performance Packet Switching Architectures

High-Performance Packet Switching Architectures 英文版本,文如其名。

2013-01-27

Broadband Packet Switching Technologies.pdf

Broadband Packet Switching Technologies.pdf 英文非扫描版本,讲交换网的经典学术教材,搞交换的同学必看红宝书。

2013-01-27

空空如也

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

TA关注的人

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