自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

漫漫求学中的孩儿

简简单单,就这样。。。

  • 博客(31)
  • 资源 (4)
  • 收藏
  • 关注

转载 Java实现加减乘除

package org.nutz.mvc.core;import java.math.BigDecimal;public class Arith { // 源文件Arith.java: /** * 由于Java的简单类型不能够精确的对浮点数进行运算,这个工具类提供精 确的浮点数运算,包括加减乘除和四舍五入。 */ // 默认除法运算精度 private static f

2012-09-28 13:22:03 5659

转载 Mutex和Semaphore区别

理解Semaphore和Mutex网摘1:Mutex 的发音是 /mjuteks/ ,其含义为互斥(体),这个词是Mutual Exclude的缩写。Mutex在计算机中是互斥也就是排他持有的一种方式,和信号量-Semaphore有可以对比之处。有人做过如下类比:    * Mutex是一把钥匙,一个人拿了就可进入一个房间,出来的时候把钥匙交给队列的第一个。一般的用法是用于串行

2012-09-27 13:16:26 5824

转载 MyEclipse快捷键大全

-------------------------------------MyEclipse 快捷键1(CTRL)-------------------------------------Ctrl+1 快速修复Ctrl+D: 删除当前行 Ctrl+Q  定位到最后编辑的地方 Ctrl+L  定位在某行  Ctrl+O  快速显示 OutLine Ctrl+T  快速

2012-09-27 09:22:55 5513 1

原创 Ubuntu 12.04 安装Adobe Air

Adobe Integrated Runtime (AIR)允许你利用现有的web开发技能(包括Flash, Flex, HTML, JavaScript, Ajax)优势,建立和配置跨平台(或跨操作系统)的桌面RIA(Internet Applications)应用。Air最大的优点是跨平台,现在支持windows,Mac,Linux,Android,ios,BlackBerry OS.

2012-09-23 10:11:37 6290

原创 C优先级详细列表

PrecedenceOperatorDescriptionExampleAssociativity1()[]->.::++--Grouping operatorArray accessMember access from a pointerMember access fr

2012-09-21 01:42:58 5511

原创 进程间通信——管道

管道是Linux系统中最古老的进程间通信(IPC,InterProcess Communication)手段,它把一个程序的输出直接连接到另一个程序的输出。1.无名管道无名管道是Linux中管道通信的一种原始方法。特点它只能用于具有亲缘关系的进程之间的通信它是一个半双工的通信模式,它具有固定的读端和写端管道也可以看做一种特殊的文件,对他的读写也可以直接使用普通的read()

2012-09-16 20:32:55 6123

原创 exit和_exit

exit和_exit函数都是用来终止进程的,当执行exit()和_exit()时,进程会无条件的停止剩下的所有操作,清除各种数据结构,并终止本进程的运行。但是,这两个函数还是有区别的。_exit()函数的作用是,直接使进程停止运行,清除其使用的内存,并清除其内核中的各种数据结构;exit()函数则在这些基础上做了一些包装,在执行退出之前加了若干道工序。exit和_exit函数最大的区别是exi

2012-09-16 10:18:16 5441

原创 孤儿进程

如果一个子进程的父进程先于子进程 结束, 子进程就成为一个孤儿进程,它由 init 进程收养,成为 init 进程的子进程。而一个子进程在其父进程还没有调用wait()或waitpid()的情况下退出。这个子进程就是僵尸进程。子进程执行exit后:1.如果父进程已经退出(没有wait),则该子进程将会成为孤儿进程过继给init进程 2.如果其父进程还没有退出,也没有

2012-09-16 09:46:16 5941

原创 详解僵尸状态(EXIT_ZOMBLE)

1. 产生原因:进程运行结束,父进程尚未使用wait函数族等来收尸,即等待父进程销毁它。那么他将变成一个僵尸进程。通过ps命令查看其带有defunct的标志。僵尸进程是一个早已死亡的进程,但在进程表(processs table)中仍占了一个位置(slot)。但是如果该进程的父进程已经先结束了,那么该进程就不会变成僵尸进程。因为每个进程结束的时候,系统都会扫描当前系统中所运行的所有进程

2012-09-16 09:29:23 8434

转载 写时复制

写时复制技术最初产生于Unix系统,用于实现一种傻瓜式的进程创建:当发出fork(  )系统调用时,内核原样复制父进程的整个地址空间并把复制的那一份分配给子进程。这种行为是非常耗时的,因为它需要:   ·      为子进程的页表分配页面 ·      为子进程的页分配页面 ·      初始化子进程的页表 ·      把父进程的页复制到子进程相应的页中   创建一个

2012-09-16 08:52:37 5550

转载 关于c的随机数

一说起随机函数,恐怕又有人说这是老生长谈了……一般很多人都形成了自己的固定格式,因为随机数用处比较大,用的时候比较多,拿过来就用了。但是新 手不这么干,他们总是抱有疑惑,我就是一个新手,而且较菜……为了让跟我一样的菜鸟看明白,我会尽量的说得让高手们不屑一顾(:由于可能内容太多可能会分 篇,大家见谅^计算机的好处是精确,所以它不擅长模拟信号,但它的缺点也是如此。于是在一些模拟问题上计算机

2012-09-14 09:05:13 5731

原创 设计模式之简单工厂模式

基本简介  从设计模式的类型上来说,简单工厂模式是属于创建型模式,又叫做静态工厂方法(StaticFactory Method)模式,但不属于23种GOF设计模式之一。简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。简单工厂模式是工厂模式家族中最简单实用的模式,可以理解为是不同工厂模式的一个特殊实现。  简单工厂模式的实质是由一个工厂类根据传入的参数,动态决定

2012-09-13 23:06:03 5525

转载 Linux信号列表

我们运行如下命令,可看到Linux支持的信号列表:$ kill -l1) SIGHUP        2) SIGINT        3) SIGQUIT       4) SIGILL 5) SIGTRAP       6) SIGABRT       7) SIGBUS        8) SIGFPE 9) SIGKILL      10) SIGUSR1      11) SIGSE

2012-09-13 17:19:04 6374

原创 关于Readline函数

简介Readline 是一个强大的库,只要使用了它的程序,都可以用同一个配置文件配置,而且用同样的方法操作命令行,让你可以方便的编辑命令行。 使用 readline 的程序现在主要有 Bash, GDB,ftp 等。readline 付予这些程序强大的 Emacs 似的命令行编辑方式,你可以随意绑定你的键盘。测试程序test.c#include ;#include

2012-09-13 12:46:25 6280

转载 编写自己的Shell解释器

编写自己的Shell解释器摘要:本期的目的是向大家介绍shell的概念和基本原理,并且在此基础上动手做一个简单shell解释器。同时,还将就用到的一些 linux环境编程的知识做一定讲解。本文适合的读者对象       对linux环境上的c语言开发有一定经验;对linux环境编程(比如进程、管道)有一点了解。概述本章的目的是带大家了解shell的基本原理,并且自己动手

2012-09-13 12:30:35 5556

转载 pthread_cond_wait()分析

/************pthread_cond_wait()的使用方法**********/    pthread_mutex_lock(&qlock);        pthread_cond_wait(&qready, &qlock);    pthread_mutex_unlock(&qlock);/************************************

2012-09-13 10:54:26 5301

原创 exec运行shell语句

用fork函数创建子进程后,子进程往往要调用一种exec函数以执行另一个程序。当进程调用一种exec函数时,该进程完全由新程序代换。exec只是用另一个新程序替换了当前进程的正文、数据、堆和栈段。#include   extern char **environ;  int execl(const char *path, const char *arg, ..

2012-09-12 11:57:52 6068

转载 linux 文件描述符表 打开文件表 inode

在Linux中,进程是通过文件描述符(file descriptors,简称fd)而不是文件名来访问文件的,文件描述符实际上是一个整数。Linux中规定每个进程能最多能同时使用NR_OPEN个文件描述符,这个值在fs.h中定义,为1024*1024(2.0版中仅定义为256)。每个文件都有一个32位的数字来表示下一个读写的字节位置,这个数字叫做文件位置。每次打开一个文件,除非明确要求,否则文件

2012-09-11 17:08:51 5919

转载 fork,vfork

第一点,Linux中,创建进程的方式,只有一种,那就是调用fork(或者vfork)。 当然,系统的交换进程(0),init进程(1)除外,它们是操作系统自举时用特殊方式创建的最初的进程。第二点,举个例子,父进程A 创建子进程B 后,进程B 就拥有了A 的所有数据(包括父进程的数据空间、堆和栈)的相同副本,并且共享代码片段(正文段)。父子进程的运行路线仅靠fork的返回值来区分

2012-09-11 14:44:17 5634

转载 【c语言】清空缓存 的问题

我们使用函数向某个文件从当前流标签所在位置,读取n个字符。我们也会使用函数想文件的某个流位置写如n字符。但是,当这种写的动作小、而频繁。每次写又必须反映到硬盘上,也就是说需要频繁的操作硬盘,写一些小的更改,这是非常耗损效率。所以自然我们想到了,我们设立一个缓冲区,将那些要写如的数据先写到缓冲区中,当缓冲区满,或者其他情况发生的是否,我们在一起将他们写入到硬盘上。这样可以大大提高应用程序读写文件的速

2012-09-11 09:46:06 10073

原创 VFS的索引节点 链接

文件系统处理文件所需要的所有信息都放在称为索引节点的数据结构中。文件名可以随时更改,但是索引节点对文件是唯一的,并且随文件的存在而存在。VFS索引节点的数据结构inode在/includ/fs/fs.h中定义如下(2.4.x版本) 当一个文件系统被格式化成ext2或者ext3的时候,就会产生Inode number。  1、用ls -i命令来查看文件系统对象的索引节点号  $ ls

2012-09-11 09:33:38 5765

原创 大端模式和小端模式

大端模式(Big_endian):字数据的高字节存储在低地址中,而字数据的低字节则存放在高地址中。小端模式(Little_endian):字数据的高字节存储在高地址中,而字数据的低字节则存放在低地址中。int checkSystem( ){union check{int i;char ch;} c;c.i = 1;return (c.ch ==1

2012-09-10 23:04:12 5497

原创 【笔记】柔性数组

也许你从来没有听说过柔性数组(flexible array)这个概念,但是它确实是存在的。C99 中,结构中的最后一个元素允许是未知大小的数组,这就叫做柔性数组成员,但结构中的柔性数组成员前面必须至少一个其他成员。柔性数组成员允许结构中包含一个大小可变的数组。sizeof 返回的这种结构大小不包括柔性数组的内存。包含柔性数组成员的结构用malloc ()函数进行内存的动态分配,并且

2012-09-10 23:03:22 5248

原创 【笔记】空结构体多大

struct student{}stu;sizeof(stu)的值是多少呢?很遗憾,不是0,而是1。为什么呢?你想想,如果我们把struct student 看成一个模子的话,你能造出一个没有任何容积的模子吗?显然不行。编译器也是如此认为。编译器认为任何一种数据类型都有其大小,用它来定义一个变量能够分配确定大小的空间。既然如此,编译器就理所当然的认为任何一个结构体都是有大小

2012-09-10 22:49:03 6264

原创 Java——类的加载

假设有一个类PersionPersion p = new Persion();当new 的时候会加载.class进内存(堆),(也就是说Persion p = null不会打印静态代码块(static {})中的代码)。然后是执行静态代码块,再开辟空间(为成员变量),默认初始化(字符串为null,int为0),然后是显示初始化,然后构造函数初始化Persion p = new Pe

2012-09-10 22:07:47 5227

原创 Java——代码块

静态代码块格式:static {代码}特点:随着累的加载而执行,只执行一次用于给类进行初始化的public class StaticCodeDemo { static { System.out.println("a"); } public static void main(String[] args) { System.out.p

2012-09-10 22:06:21 5191

原创 Java 生成帮助文档

Javadoc是Sun公司提供的一个技术,它从程序源代码中抽取类、方法、成员等注释形成一个和源代码配套的API帮助文档。也就是说,只要在编写程序时以一套特定的标签作注释,在程序编写完成后,通过Javadoc就可以同时形成程序的开发文档了。 javadoc -d 存放的目录 [-author -version] *.java要处理的java中的类必须是public 才可以创建帮助文档。否

2012-09-10 21:58:03 5529

原创 Java——Static

Static修饰的成员多了一个调用方式,除了可以被对象调用,还可以使用类名。类名.静态变量。Static 类型的数据特点:l 随着类的加载而加载。随着类的释放而释放,说明它的生命周期最长,而创建对象时普通成员变量(实例变量)才会被创建。l 先于对象存在l 被所有对象所共享l 可以直接被类名调用与实例对象区别:1.静态变量随着类的加载而加载,而

2012-09-10 21:50:44 5238

转载 C——static 的作用

在C语言中,static的字面意思很容易把我们导入歧途,其实它的作用有三条。(1)先来介绍它的第一条也是最重要的一条:隐藏。当我们同时编译多个文件时,所有未加static前缀的全局变量和函数都具有全局可见性。为理解这句话,我举例来说明。我们要同时编译两个源文件,一个是a.c,另一个是main.c。下面是a.c的内容char a = 'A'; // global variable

2012-09-10 21:45:48 5378

原创 C——定义与声明

声明一个变量只是将变量名标识符的有关信息告诉编译器,使编译器“认识”该标识符,但是声明并不一定引起内存的分配!有两重含义:1.告诉编译器,这个编译器已经匹配到一块内存上了。2.告诉编译器,这个名字已经被预订了,别的地方不能用它来作为变量名或对象名。 定义:就是创建一个对象,为这个对象分配一块内存并给它娶一个名字,也就是对象名或变量名。一个变量或对象在一定的区域中只能被定义一

2012-09-10 21:37:39 5462

原创 快递

快递控件测试

2012-09-09 17:15:26 5281

mysql-connector-java-5.1.10-bin

mysql-connector-java-5.1.10-bin.jar

2012-10-18

JAVA API英文版

JAVA API 的英文版

2012-09-28

JAVA api 源码 chm格式

Java类的方法的具体实现 api源码 chm文档格式,方便查阅

2012-09-28

notepad函数列表插件

notepad++显示文件函数的插件,超好用,放在Notepad++\plugins\文件夹下即可用

2012-08-18

空空如也

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

TA关注的人

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