午夜稻草人

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

2013年11月12日

摘要: 内存文件系统使用及示例:ramdisk, ramfs, tmpfs 第一部分在Linux中可以将一部分内存mount为分区来使用,通常称之为RamDisk。 RamDisk有三种实现方式: 第一种就是传统意义上的,可以格式化,然后加载。 这在Linux内核2.0/2.2就已经支持,其不足之处是大小固定,之后不能改变。 为了能够使用Ramdisk,我们在编译内核时须将block device中的Ramdisk支持选上,它下面还有两个选项,一个是设定Ramdisk的大小,默认是4096k;另一个是initrd的支持。 如果对Ramdisk的支持已经编译进内核,我们就可以使用它了: 查看一下可用的R 阅读全文
posted @ 2013-11-12 15:42 午夜稻草人 阅读(670) 评论(0) 推荐(0) 编辑

2013年10月18日

摘要: 你可以使用AC_ARG_ENABLE来定义一个命令行选项。这个宏接受三个参数1.flag_base2.该选项的帮助说明3.当configure带该选项运行时所执行的代码,代码中的命令行变量enableval被设为此选项的值其实应该还有一个就是缺省值。AC_ARG_ENABLE(server,[AC_HELP_STRING([--enable-server],[enable server build])],[ case "${enableval}" in yes) server=true ;; no) server=false ;; *) AC_MSG_ERROR(bad v 阅读全文
posted @ 2013-10-18 09:27 午夜稻草人 阅读(1932) 评论(0) 推荐(0) 编辑

2013年10月8日

摘要: 1. 安装JDK到官网下载最新的jdk版本,并安装http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html2.下载Eclipse IDE for C/C++ Developers到官网下载最新的Eclipse for c/c++http://www.eclipse.org/downloads/3. 安装MinGW到目前为止,但还需要一个 "编译程序" 才能编译程序,因此要下载可在Windows上使用的GNU C、C++编译程序,这里要下载的是:MinGW。下载网址: 阅读全文
posted @ 2013-10-08 15:10 午夜稻草人 阅读(2736) 评论(0) 推荐(0) 编辑

2013年6月4日

摘要: 转载于http://www.cnblogs.com/zhenyulu/ 代码都是c#的,仅作参考 工厂模式专门负责将大量有共同接口的类实例化。工厂模式可以动态决定将哪一个类实例化,不必事先知道每次要实例化哪一个类。工厂模式有以下几种形态: 简单工厂(Simple Factory)模式 工厂方法(Fa 阅读全文
posted @ 2013-06-04 20:17 午夜稻草人 阅读(290) 评论(0) 推荐(0) 编辑

2013年6月2日

摘要: vector与list区别vector为存储的对象分配一块连续的地址空间,因此对vector中的元素随机访问效率很高。在vecotor中插入或者删除某个元素,需要将现有元素进行复制,移动。如果vector中存储的对象很大,或者构造函数复杂,则在对现有元素进行拷贝时开销较大,因为拷贝对象要调用拷贝构造... 阅读全文
posted @ 2013-06-02 09:28 午夜稻草人 阅读(269) 评论(0) 推荐(0) 编辑

2013年5月15日

摘要: vmstat命令是最常见的Linux/Unix监控工具,可以展现给定时间间隔的服务器的状态值,包括服务器的CPU使用率,内存使用,虚拟内存交换情况,IO读写情况。这个命令是我查看Linux/Unix最喜爱的命令,一个是Linux/Unix都支持,二是相比top,我可以看到整个机器的CPU,内存,IO的使用情况,而不是单单看到各个进程的CPU使用率和内存使用率(使用场景不一样)。一般vmstat工具的使用是通过两个数字参数来完成的,第一个参数是采样的时间间隔数,单位是秒,第二个参数是采样的次数,如:root@ubuntu:~# vmstat 2 1procs -----------memory- 阅读全文
posted @ 2013-05-15 10:14 午夜稻草人 阅读(244) 评论(0) 推荐(0) 编辑

2013年5月4日

摘要: 一、插入排序直接插入排序(Insertion Sort)的算法描述是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。插入排序在实现上,通常采用in-place排序(即只需用到O(1)的额外空间的排序),因而在从后向前扫描过程中,... 阅读全文
posted @ 2013-05-04 09:06 午夜稻草人 阅读(609) 评论(0) 推荐(0) 编辑

2013年5月1日

摘要: Linux iostat监测IO状态Linux系统出现了性能问题,一般我们可以通过top、iostat、free、vmstat等命令 来查看初步定位问题。其中iostat可以给我们提供丰富的IO状态数据。[命令:] iostat [-c|-d] [-k] [-t] [间隔描述] [检测次数]参 数:-c : 仅显示cpu的状态-d : 仅显示存储设备的状态,不可以和-c一起使用-k : 默认显示的是读入读出的block信息,用-k可以改成KB大小来显示-t : 显示日期-p device | ALL : device为某个设备或者某个分区,如果使用ALL,就表示要显示所有分区和设备的信息1. 阅读全文
posted @ 2013-05-01 12:37 午夜稻草人 阅读(197) 评论(0) 推荐(0) 编辑

摘要: 例:tcpdump host 172.16.29.40 and port 4600 -X -s 500 tcpdump采用命令行方式,它的命令格式为: tcpdump [ -adeflnNOpqStvx ] [ -c 数量 ] [ -F 文件名 ] [ -i 网络接口 ] [ -r 文件名] [ - 阅读全文
posted @ 2013-05-01 12:23 午夜稻草人 阅读(10920) 评论(1) 推荐(0) 编辑

摘要: Valgrind 概述体系结构Valgrind是一套Linux下,开放源代码(GPL V2)的仿真调试工具的集合。Valgrind由内核(core)以及基于内核的其他调试工具组成。内核类似于一个框架(framework),它模拟了一个CPU环境,并提供服务给其他工具;而其他工具则类似于插件 (plug-in),利用内核提供的服务完成各种特定的内存调试任务。Valgrind的体系结构如下图所示:Valgrind包括如下一些工具:Memcheck。这是valgrind应用最广泛的工具,一个重量级的内存检查器,能够发现开发中绝大多数内存错误使用情况,比如:使用未初始化的内存,使用已经释放了的内存,内 阅读全文
posted @ 2013-05-01 11:01 午夜稻草人 阅读(327) 评论(0) 推荐(0) 编辑