自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Grub2 引导 Windows 与 Linux

最近重装了系统,由于一直是双系统,重装系统后需要linux的grub去引导windows。 现在的linux用grub2做为bootloader,grub通过命令update-grub方便地换核,但是去引导windows我却不知道要执行什么命令,不过我相信应该有命令可以直接实现用grub2去引导windows。 于是就直接改了 grub.cfg 这个只读文件,这篇博文也只是记...

2012-09-17 09:30:28 431

原创 [zz] debian英文环境下 安装fcitx 4.2.3 用双拼

这个blog内容大部分为转载。[小企鹅输入法] Fcitx [ˈfaɪtɪks] is a input method framework with extension support. Currently it supports linux and Unix system, like freebsd. It has three builtin Input Method Engin...

2012-09-16 23:40:07 159

原创 [zz]linux进程打开文件数限制

这是一篇转载的分析。源地址是:[url]http://www.cnblogs.com/aka-blog/articles/filemax.html[/url]。 最近一个群里同志问了个问题,运行一个网络服务程序是提示打开的文件太多,是个多进程的程序,当时想到的是链接太多用尽了进程的文件描述符,又不知道具体的系统限制的值是多少所以用sysconf(3)测试了一下:sysconf(_SC...

2012-08-11 16:52:16 97

原创 pthread_mutex实现进程间同步

前面实验室的师兄们在讨论pthread这套接口能不能实现进程间同步,自己对这个不是十分地了解,但是对这个比较感兴趣,于是就在实验室师兄的指导下去实现了这个同步机制。 测试的结果就是可以用pthread_mutex_t来实现进程间的同步。 需要注意的是初始化 mutex 时需要指定 [b]PTHREAD_PROCESS_SHARED[/b] 这个属性,代码如下[co...

2012-08-01 23:57:18 573

原创 Linux 多核启动过程

以这篇博文来纪念自己与“Linux kernel多核启动”相处的两个多月。本文章以2.6.33.1的linux内核在x86_64平台上为例进行说明。本文参考了[url]http://tldp.org/HOWTO/Linux-i386-Boot-Code-HOWTO/smpboot.html[/url]Linux kernel启动的过程概览init/main.c:start_ke...

2012-06-12 19:26:53 1090

原创 Linux 启动过程阅读

我阅读的代码是2.6.33.1的代码。本文没有详细分析代码逻辑,主要是看函数执行流程。启动过程从arch/x86/boot/header.S开始。按代码所在位置分为两部分,一部分是在boot目录下的,另一部分是在kernel目录下。1. arch/x86/boot/header.S(Based on bootsect.S and setup.S) 是在16-bit的实模...

2012-04-20 16:04:43 228

原创 C 语言中的constructor与destructor

最近在看代码的时候碰到一个问题,这项目中有一个全局变量,里面有许多系统用的属性。但是一直找不到它在哪里被赋值。后来跟了代码才发现在系统开始之前已经有一个constructor将这个东西初始化好。 GCC可以给函数若干属性,其中construction就是其中一个。具体有哪些属性,可以看GCC的文档。[url]http://gcc.gnu.org/onlinedocs/gcc/Func...

2012-04-11 21:48:49 299

原创 Define 语句中的do{} while(0)

经常在define语句中看到用do{} while(0)将一个程序片段包起来,一直感觉很奇怪,经查找,才发现这是在define语句使用中的一个tricky的情况。 define表达使用do{} while(0)的两个例子:[code="c"]#define LIST_INSERT_AFTER(listelm, elm, field) do { ...

2012-04-09 13:36:09 268

原创 some useful links

The Joel Test: 12 Steps to Better Code[url]http://www.joelonsoftware.com/articles/fog0000000043.html[/url]homempage 刘末鹏[url]http://mindhacks.cn/[/url]

2011-11-07 14:40:45 105

原创 wireshark 抓包

wireshark是一款非常不错的抓包工具。 但是如果使用wireshark抓包却不配置filter的话,估计找到我们需要的包,会花费半天时间。 不过还好wireshark自带了很好的帮助文档,有它们几乎可以解决所有的问题。 如果要使用wireshark抓包,强烈建议看一下[url]http://wiki.wireshark.org/CaptureFilters[/u...

2011-10-29 12:19:27 204

cache的若干问题

前面发现自己对cache的概念模糊了,又拿起《计算机组成与设计:软硬件接口》这本经典之作温习了一下。 cache的存在是为了解决CPU处理速度比memory范围速度快得多的问题。如果没有CPU与memory速度上的差异,cache不需要存在。 采用cache技术,需要关注一下几个问题:1.如何知道数据在cache中 2.如何定位一个数据 3.如何处理cache和memory数...

2011-09-24 21:48:18 230

原创 os-进程线程概念

操作系统中为了提供CPU的利用率,引入了多道编程,于是就有了进程的概念。 进程模型无疑提高了CPU的利用率,因为多个进程可以“同时”运行在一个CPU上,一个进程被阻塞掉了,另一个进程就可以被调度上CPU继续运行了。这样降低了CPU闲置的时间。 但是进程模型却存在一个问题。那就是如果一个进程被阻塞掉了,它就必须让出CPU了。同时对于一个任务,如果它是进程实现的(单进程),它实际...

2011-09-22 13:20:13 91

空空如也

空空如也

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

TA关注的人

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