自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(139)
  • 资源 (1)
  • 收藏
  • 关注

原创 读《人月神话》记录

1. 任何创造性活动都伴随着枯燥艰苦的劳动,编程也不例外2. 人们通常期望项目在接近结束时,软件项目能收敛的快一些,然而,情况却是越接近完成,收敛的越慢3. 缺乏合理的时间进度是造成项目滞后的最主要原因,它比其他所有因素的总和影响还大4. 关于进度安排,我的经验是1/3计划、1/6编码、1/4构件测试以及1/4系统测试5. Brooks法则:向进度落后的项目增加人手,只会使进度更加

2015-01-22 11:38:41 332

转载 动态库的搜索路径

动态库的搜索路径搜索的先后顺序是:1.编译目标代码时指定的动态库搜索路径;2.环境变量LD_LIBRARY_PATH指定的动态库搜索路径;3.配置文件/etc/ld.so.conf中指定的动态库搜索路径;4.默认的动态库搜索路径/lib;5.默认的动态库搜索路径/usr/lib。

2014-05-23 13:57:19 404

转载 solaris查看内存、CUP、硬盘总数

solaris查看内存、CUP、硬盘总数和使用情况情况一、内存查询1,查询总内存-bash-3.00# prtconf | grep Memory结果为:Memory size: 28672 Megabytes即总内存为 28672M2,查询剩余内存和总内存-bash-3.00# echo "::memstat" | mdb -k结果为:Page

2014-05-23 13:56:55 514

转载 逻辑卷管理

创建逻辑卷以下的一组命令执行创建逻辑卷所需的步骤:• 运行 vgscan 命令( 在集群中所有的 RAC 节点上运行 ),以创建 /etc/lvmtab 文件。• 使用 pvcreate 创建由逻辑卷管理器 (LVM) 所使用的物理卷。• 使用 vgcreate ,为驱动器或者为您希望用于 RAW 设备的分区创建一个卷组。在这里我们为整个驱动器创建卷。在我们的示例中

2014-05-23 13:56:14 444

转载 卷组管理

LVM卷组类似于非LVM系统中的物理硬盘,它是由一个或者多个物理卷所组成,可以在卷组上创建一个或多个逻辑卷。通过它可以方便地管理磁盘空间,当卷组空间不足的时候可以往卷组中添加新的物理卷,扩展卷组的容量。1.添加卷组物理卷创建完成后就可以开始创建卷组。卷组是由一个或多个物理卷所组成的存储池。例如要创建一个名为vg_data的卷组,可以使用下面的命令。 # vgcreate

2014-05-23 13:55:52 513

转载 物理卷管理

物理卷是卷组的组成部分,一个物理卷就是一个磁盘分区或在逻辑上与磁盘分区等价的设备(如RAID中的LUN)。每一个物理卷被划分成若干个被称为PE(Physical Extents)的基本单元,具有唯一编号的PE是可以被LVM寻址的最小单元。PE的大小是可以更改的,默认为4MB。1.添加物理卷使用pvcreate命令可以创建物理卷,可以在整个磁盘上创建物理卷,也可以在一个磁盘分区上创建物理

2014-05-23 13:55:30 398

转载 linux创建分区

为了给一个硬盘分区,你得在你开始运行 fdisk 的时候指定设备的名称。比如:fdisk /dev/hda (对第一个 IDE 硬盘驱动器重新分区) fdisk /dev/hdb (对第二个 IDE 硬盘驱动器重新分区) fdisk /dev/sda (对第一个 SCSI 硬盘驱动器重新分区) fdisk /dev/sdb (对第二个 SCSI 硬盘驱动器重新分区)[注

2014-05-23 13:55:08 461

转载 LVM术语与命令详解

vgcreate-l卷组最大能包含的逻辑参数-p卷组最大能包含的物理卷数-e卷组中每个物理卷最多能包括的物理单元(PE)数-s卷组中物理单元(PE)的尺寸大小lvcreate-L 以MB为单位表示逻辑卷的大小-l 以逻辑单元的数目来表示逻辑卷的大小-n 逻辑卷的名称;若不指定,缺省的名为lvol1,lvol2等-C 用邻近的存储空间来创建逻辑卷

2014-05-23 13:54:46 450

转载 逻辑卷

LVM(logical volume manager) 逻辑卷管理器 其中主要分为这几个概念1物理卷-简称PV物理卷在逻辑卷管理器中属于最底层的,任何的逻辑卷和卷组都必需依靠物理卷来建立,物理卷可以是一个完整的硬盘,也可以是硬盘中的某一个分区2卷组-简称VG卷组是建立在物理卷之上,一个卷组中可以包含一个物理卷组或者多个物理卷3逻辑卷-简称LV逻辑卷是建立在卷组之上的

2014-05-23 13:54:20 346

转载 DS, ES, SS, DI, SI, BP, SP, IP, FS 寄存器

DS is called data segment register. It points to the segment of the data used by the running program. You can point this to anywhere you want as long as it contains the desired data.DS叫做段寄存器, 指向当前

2014-05-23 13:53:07 641

转载 AX,BX,CX,DX 寄存器

AX(AL):(1)在乘法指令中存放乘数和乘积(2)在除法指令中存放被除数和商(3)用在非组合型BCD码运算的调整中(4)用在某些串操作指令(LODS,STOS,SCAS)中(5)在输入/输出指令中作数据寄存器AH:在LAHF指令中作目的寄存器AL:(1)用在组合型BCD码的加减法调整指令中(2)在XLAT指令中,作目的寄存器BX:(1)在XLAT指

2014-05-23 13:51:32 4127

转载 LEA,LDS,LES,LFS,LGS,LSS指令功能

LEA reg,memmem有效地址->reg LDS reg,memmem低字->reg,mem高字->ds LES reg,memmem低字->reg,mem高字->es LFS reg,memmem低字->reg,mem高字->fs LGS reg,memmem低字->reg,mem高字-

2014-05-23 13:51:09 1773

转载 Linux 内核体系结构

Linux内核主要由5个模块构成:进程调度模块,内存管理模块,文件系统模块,进程间通信模块和网络接口模块 所有的模块都与进程调度模块存在依赖关系  内核态是不可被抢占的,用户态可以被抢占 10秒一个滴答,发出一个时间中断信号(IRQ0)。 do_timer函数根据特权级CPL对当前进程运行时间做累计。如果CPL=0,则

2014-05-23 13:49:59 377

转载 一致和非一致性代码段

对于一致代码段:也就是共享的段.1.特权级高的程序不允许访问特权级低的数据:核心态不允许调用用户态的数据.2.特权级低的程序可以访问到特权级高的数据.但是特权级不会改变:用户态还是用户态.对于普通代码段.也就是非一致代码段:0.只允许同级间访问.1.绝对禁止不同级访问:核心态不用用户态.用户态也不使用核心态.总结:似乎这些东西跟我们初学者预想的那样不同.核心态是老大

2014-05-23 13:48:34 411

转载 Why BIOS loads MBR into 0x7C00 in x86 ?

The mysteries arround "0x7C00" in x86 architecture bios bootloaderDo you know "0x7C00", a magic number, in x86 assembler programming ? "0x7C00" is the memory address which BIOS loads MBR(Master

2014-05-23 13:48:07 372

转载 /proc目录简介

Linux下/proc目录简介1. /proc目录Linux 内核提供了一种通过 /proc 文件系统,在运行时访问内核内部数据结构、改变内核设置的机制。proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间。它以文件系统的方式为访问系统内核数据的操作提供接口。用户和应用程序可以通过proc得到系统的信息,并可以改变内核的某些参数。由于系统的信息,如进程,是动态改

2014-05-23 13:47:26 320

转载 loop device介绍

在Linux中,有一种特殊的块设备叫loop device,这种loop device设备是通过影射操作系统上的正常的文件而形成的虚拟块设备。因为这种设备的存在,就为我们提供了一种创建一个存在于其他文件中的虚拟文件系统的机制.下面是一个示例:第一步:create a file with 'dd' command:dd if=/dev/zero of=FS_on_file bs=1k c

2014-05-23 13:46:53 463

转载 /dev目录

(1)dev 是设备(device)的英文缩写。这个目录对所有的用户都十分重要。因为在这个目录中包含了所有Linux系统中使用的外部设备。但是这里并不是放的外部设备的驱动程序。这一点和我们常用的windows, dos操作系统不一样。它实际上是一个访问这些外部设备的端口。我们可以非常方便地去访问这些外部设备,和访问一个文件,一个目录没有任何区别。 (2)设备文件UNIX系统与边

2014-05-23 13:46:26 410

转载 使用 /sys 文件系统访问 Linux 内核

sysfs 与 /syssysfs 文件系统总是被挂载在 /sys 挂载点上。虽然在较早期的2.6内核系统上并没有规定 sysfs 的标准挂载位置,可以把 sysfs 挂载在任何位置,但较近的2.6内核修正了这一规则,要求 sysfs 总是挂载在 /sys 目录上;针对以前的 sysfs 挂载位置不固定或没有标准被挂载,有些程序从 /proc/mounts 中解析出 sysfs 是否被挂载

2014-05-23 13:45:54 422

转载 使用 /proc 文件系统来访问 Linux 内核的内容

最初开发 /proc 文件系统是为了提供有关系统中进程的信息。但是由于这个文件系统非常有用,因此内核中的很多元素也开始使用它来报告信息,或启用动态运行时配置。/proc 文件系统包含了一些目录(用作组织信息的方式)和虚拟文件。虚拟文件可以向用户呈现内核中的一些信息,也可以用作一种从用户空间向内核发送信息的手段。实际上我们并不会同时需要实现这两点,但是本文将向您展示如何配置这个文件系统进行输

2014-05-23 13:44:50 252

转载 内核模块相关命令

lsmod功能:列出内核已载入模块的状态用法:lsmod描述:    lsmod 以美观的方式列出/proc/modules的内容。    输出为:    Module(模块名)    Size(模块大小)   Used by(被...使用) eg. ne2k_pci           8928               0

2014-05-23 13:42:06 387

转载 内部类

内部类主要有以下几类:成员内部类、局部内部类、静态内部类、匿名内部类 A:成员内部类作为外部类的一个成员存在,与外部类的属性、方法并列。 // 成员内部类中,不能定义静态成员// 成员内部类中,可以访问外部类的所有成员 注意:内部类是一个编译时的概念,一旦编译成功,就会成为完全不同的两类。对于一个名为outer的外部类和其内部定义的名为inner

2014-05-06 11:56:42 298

转载 Java中的clone

一个很典型的调用clone()代码如下:class CloneClass implements Cloneable{ public int aInt; public Object clone(){ CloneClass o = null; try{ o = (CloneClass)super.clone()

2014-05-06 11:55:32 353

转载 深入分析 Java I/O 的工作机制

I/O 调优下面就磁盘 I/O 和网络 I/O 的一些常用的优化技巧进行总结如下:磁盘 I/O 优化性能检测我们的应用程序通常都需要访问磁盘读取数据,而磁盘 I/O 通常都很耗时,我们要判断 I/O 是否是一个瓶颈,我们有一些参数指标可以参考:如我们可以压力测试应用程序看系统的 I/O wait 指标是否正常,例如测试机器有 4 个 CPU,那么理想的 I/

2014-05-06 11:53:02 360

转载 多态在 Java 和 C++ 编程语言中的实现比较

众所周知,多态是面向对象编程语言的重要特性,它允许基类的指针或引用指向派生类的对象,而在具体访问时实现方法的动态绑定。C++ 和 Java 作为当前最为流行的两种面向对象编程语言,其内部对于多态的支持到底是如何实现的呢,本文对此做了全面的介绍。注意到在本文中,指针和引用会互换使用,它们仅是一个抽象概念,表示和另一个对象的连接关系,无须在意其具体的实现。Java 的实现方式Java 对于

2014-05-06 11:50:19 383

转载 学习之路

第一步是安装好JDK        写一个Hello World,? 其实JDK的学习没有那么简单,关于JDK有两个问题是很容易一直困扰Java程序员的地方:一个是CLASSPATH的问题,其实从原理上来说,是要搞清楚JRE的ClassLoader是如何加载Class的;另一个问题是package和import问题,如何来寻找类的路径问题。把这两个问题摸索清楚了,就扫除了学习Java和使用

2014-05-06 09:48:36 280

转载 break和continue关键字使用总结

一、作用和区别 break的作用是跳出当前循环块(for、while、do while)或程序块(switch)。在循环块中的作用是跳出当前正在循环的循环体。在程序块中的作用是中断和下一个case条件的比较。 continue用于结束循环体中其后语句的执行,并跳回循环程序块的开头执行下一次循环,而不是立刻循环体。 二、其他用途 bre

2014-05-06 09:47:55 522

转载 final、static使用总结

一、final        根据程序上下文环境,Java关键字final有“这是无法改变的”或者“终态的”含义,它可以修饰非抽象类、非抽象类成员方法和变量。你可能出于两种理解而需要阻止改变:设计或效率。        final类不能被继承,没有子类,final类中的方法默认是final的。        final方法不能被子类的方法覆盖,但可以被继承。    

2014-05-06 09:47:31 295

转载 main()方法详解

Java中的main()方法详解 在Java中,main()方法是Java应用程序的入口方法,也就是说,程序在运行的时候,第一个执行的方法就是main()方法,这个方法和其他的方法有很大的不同,比如方法的名字必须是main,方法必须是public static void 类型的,方法必须接收一个字符串数组的参数等等。 在看Java中的main()方法之前,先看一个最

2014-05-06 09:46:04 638

转载 return语句使用总结

Java中的return语句使用总结 Java中的return语句总是和方法有密切关系,return语句总是用在方法中,有两个作用,一个是返回方法指定类型的值(这个值总是确定的),一个是结束方法的执行(仅仅一个return语句)。 在return语句的各类文章中,大多仅仅介绍了return语句用于有返回值(非void返回值)的方法中。而很少或没有介绍return语句

2014-05-06 09:45:42 454

转载 this、super使用总结

一、this        Java关键字this只能用于方法方法体内。当一个对象创建后,Java虚拟机(JVM)就会给这个对象分配一个引用自身的指针,这个指针的名字就是this。因此,this只能在类中的非静态方法中使用,静态方法和静态的代码块中绝对不能出现this,这在“Java关键字static、final使用总结”一文中给出了明确解释。并且this只和特定的对象关联,而不和类关联,

2014-05-06 09:45:12 390

转载 垃圾回收总结

内存是稀缺的资源,哪怕内存一块钱一条!如果在编程中使用不当,再大的内存也会耗光。 一、认识Java的自动垃圾回收 垃圾回收是Java语言的一大特性,方便了编程,是以消耗性能为代价的。而垃圾在这里只无用的对象。而C++是需要程序员自己写析构函数来释放内存的,麻烦,也有可能忘记而导致内存泄露。 Java语言对内存的分配管理是通过JVM内部机制决定的。程序

2014-05-06 09:44:44 328

转载 字符串使用总结

一、String类String 类不是原始基本数据类型,在Java中,字符串是一个对象。String 类代表字符串。Java 程序中的所有字符串字面值(如 "abc" )都作为此类的实例来实现。  字符串是常量;它们的值在创建之后不能改变。字符串缓冲区支持可变的字符串。因为 String 对象是不可变的,所以可以共享它们。例如:       

2014-05-06 09:43:17 186

转载 异常处理总结

异常处理是程序设计中一个非常重要的方面,也是程序设计的一大难点,从C开始,你也许已经知道如何用if...else...来控制异常了,也许是自发的,然而这种控制异常痛苦,同一个异常或者错误如果多个地方出现,那么你每个地方都要做相同处理,感觉相当的麻烦!        Java语言在设计的当初就考虑到这些问题,提出异常处理的框架的方案,所有的异常都可以用一个类型来表示,不同类型的异常对应不同的

2014-05-06 09:42:28 321

转载 日期时间使用总结

一、Java中的日期概述 日期在Java中是一块非常复杂的内容,对于一个日期在不同的语言国别环境中,日期的国际化,日期和时间之间的转换,日期的加减运算,日期的展示格式都是非常复杂的问题。 在Java中,操作日期主要涉及到一下几个类: 1、java.util.Date        类 Date 表示特定的瞬间,精确到毫秒。从 JDK 1.1

2014-05-06 09:39:40 355

转载 集合框架使用总结

一、概述数据结构对程序设计着深远的影响,在面向过程的C语言中,数据库结构用struct来描述,而在面向对象的编程中,数据结构是用类来描述的,并且包含有对该数据结构操作的方法。在Java语言中,Java语言的设计者对常用的数据结构和算法做了一些规范(接口)和实现(具体实现接口的类)。所有抽象出来的数据结构和操作(算法)统称为Java集合框架(Java Collection Frame

2014-05-06 09:39:03 430

转载 volatile关键字

Java™ 语言包含两种内在的同步机制:同步块(或方法)和 volatile 变量。这两种机制的提出都是为了实现代码线程的安全性。其中 Volatile 变量的同步性较差(但有时它更简单并且开销更低),而且其使用也更容易出错。 谈及到volatile关键字,不得不提的一篇文章是:《Java 理论与实践: 正确使用 Volatile 变量》,这篇文章对volatile关键字的用法

2014-05-06 09:36:46 281

转载 创建与启动

一、定义线程 1、扩展java.lang.Thread类。 此类中个run()方法,应该注意其用法:public void run() 如果该线程是使用独立的 Runnable 运行对象构造的,则调用该 Runnable 对象的 run 方法;否则,该方法不执行任何操作并返回。  Thread 的子类应该重写该方法。2、实现java.

2014-05-06 09:36:22 306

转载 并发协作-死锁

线程发生死锁可能性很小,即使看似可能发生死锁的代码,在运行时发生死锁的可能性也是小之又小。 发生死锁的原因一般是两个对象的锁相互等待造成的。 在《Java线程:线程的同步与锁》一文中,简述死锁的概念与简单例子,但是所给的例子是不完整的,这里给出一个完整的例子。 /** * Java线程:并发协作-死锁 * * @author

2014-05-06 09:35:59 420

转载 并发协作-生产者消费者模型

对于多线程程序来说,不管任何编程语言,生产者和消费者模型都是最经典的。就像学习每一门编程语言一样,Hello World!都是最经典的例子。 实际上,准确说应该是“生产者-消费者-仓储”模型,离开了仓储,生产者消费者模型就显得没有说服力了。对于此模型,应该明确一下几点:1、生产者仅仅在仓储未满时候生产,仓满则停止生产。2、消费者仅仅在仓储有产品时候才能消费,

2014-05-06 09:35:39 384

Nginx模块开发与架构解析(带书签)

是阿里巴巴资深nginx技术专家呕心沥血之作,是作者多年的经验结晶,也是目前市场上唯一一本通过还原nginx设计思想,剖析nginx架构来帮助读者快速高效开发http模块的图书。

2014-10-16

空空如也

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

TA关注的人

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