08 2012 档案

摘要:经过试验,不管是否是Jar包,不管是否是Tomcat部署,以下三个方法均可实现。package test;public class MyPath { public static String getProjectPath() { java.net.URL url = MyPath.class.getProtectionDomain().getCodeSource().getLocation(); String filePath = null; try { filePath = java.net.URLDecoder.decode(url.getPath(), "utf-8" 阅读全文
posted @ 2012-08-25 23:05 CN.SnailRun 阅读(4119) 评论(0) 推荐(0)
摘要:java.versionJava运行时环境版本java.vendorJava运行时环境供应商java.vendor.urlJava供应商的 URLjava.homeJava安装目录java.vm.specification.versionJava虚拟机规范版本java.vm.specification.vendorJava虚拟机规范供应商java.vm.specification.nameJava虚拟机规范名称java.vm.versionJava虚拟机实现版本java.vm.vendorJava虚拟机实现供应商java.vm.nameJava虚拟机实现名称java.specification 阅读全文
posted @ 2012-08-25 17:30 CN.SnailRun 阅读(2653) 评论(0) 推荐(0)
摘要://将CString型IP地址在IPAddressCtrl中显示CStringstrIP="192.168.0.10";DWORDdwIP;dwIP=inet_addr(strIP);unsignedchar*pIP=(unsignedchar*)&dwIP;m_ipAddr.SetAddress(*pIP,*(pIP+1),*(pIP+2),*(pIP+3));//将IPAddressCtrl中的IP地址获得并转换成CString型unsignedchar*pIP;CStringstrIP;DWORDdwIP;m_ipAddr.GetAddress(dwIP);p 阅读全文
posted @ 2012-08-18 00:11 CN.SnailRun 阅读(343) 评论(0) 推荐(0)
摘要:最近在Linux下编程发现一个诡异的现象,就是在链接一个静态库的时候总是报错,类似下面这样的错误:(.text+0x13):undefinedreferenceto`func'关于undefined reference这样的问题,大家其实经常会遇到,在此,我以详细地示例给出常见错误的各种原因以及解决方法,希望对初学者有所帮助。1.链接时缺失了相关目标文件(.o)测试代码如下:然后编译。gcc-ctest.c gcc–cmain.c得到两个 .o 文件,一个是 main.o,一个是 test.o ,然后我们链接 .o 得到可执行程序:gcc-omainmain.o这时,你会发现,报错了: 阅读全文
posted @ 2012-08-17 23:53 CN.SnailRun 阅读(471) 评论(0) 推荐(0)
摘要:一、托盘简介所谓的“托盘”,在Windows系统界面中,指的就是下面任务条右侧,有系统时间等等的标志的那一部分。在程序最小化或挂起时,但有不希望占据任务栏的时候,就可以把程序放到托盘区。二、托盘编程相关函数把程序放到托盘上的本质就是先在托盘区绘制一个图标,然后把程序隐藏不见,再对托盘的图标进行消息处理,就可以了。绘制图标以及确定图标所传送消息的函数只有一个:WINSHELLAPI BOOL WINAPI Shell_NotifyIcon(DWORD dwMessage,PNOTIFYICONDATA pnid);这个函数,负责向系统传递消息,以添加、修改或删除托盘区的图标。参数dwMessag 阅读全文
posted @ 2012-08-17 23:52 CN.SnailRun 阅读(266) 评论(0) 推荐(0)
摘要:目录目录概要1. Example1.1 Unsafe access to control1.2 What’s mean?2. The first choice : CheckForIllegalCrossThreadCalls3. The second choice参考概要Windows Forms 控件通常不是thread-safe(直接或间接继承于System.Windows.Forms.Control),因此.NET Framework为防止multithread下对控件的存取可能导致控件状态的不一致,在调试时,CLR-Debugger会抛出一个 InvalidOperationExce 阅读全文
posted @ 2012-08-17 23:52 CN.SnailRun 阅读(801) 评论(0) 推荐(0)
摘要:清华大学杜志辉讲授的《网格计算》课程。清华大学出版社出版的《网格计算》一书,杜志辉等编著。Unit1网格基础@广义定义:“网格”就是一个集成的计算与资源环境,或者说是一个计算资源池。“网格计算”是基于网格问题的求解。狭义定义:网格资源主要指分布的计算机资源。“网格计算”是指将分布的计算机组织起来协同解决复杂的科学与工程计算问题。@随着计算机的发展和网上资源的不断扩大化,网格要具有超大规模的计算和数据分析能力。机器的发展趋势:大型机——>小型机——>微机——>机群。@网格的应用领域:一、科学计算领域分布式超级计算;高吞吐率计算;数据密集型计算……二、社会经济生活领域基于广泛信息 阅读全文
posted @ 2012-08-17 23:51 CN.SnailRun 阅读(2307) 评论(0) 推荐(0)
摘要:(网上有很多这方面的资料,但是大多数均不成功,这是唯一一个我做成的步骤。)可能是本人资质笨拙,显卡驱动安装了一个星期才成功。网上资料参考了不少,唯一觉得有用的参考:http://apps.hi.baidu.com/share/detail/34941860以本人Nvidia 8400 gs 显卡为例,步骤如下:一,准备工作。其实安装方法都是大同小异,开始失败多次根本原因就是预先安装包没装全。开始安装如下包:yum install gccyum install kernelyum install dkmsyum install kernel-develyum install kernel-hea 阅读全文
posted @ 2012-08-17 23:51 CN.SnailRun 阅读(293) 评论(0) 推荐(0)
摘要:摘要:Windows编程和Dos编程,一个很大的区别就是,Windows编程是事件驱动,消息传递的。所以,要学好Windows编程,必须对消息机制有一个清楚的认识,本文希望能够对消息的传递做一个全面的分析。一、什么是消息?消息系统对于一个win32程序来说十分重要,它是一个程序运行的动力源泉。一个消息,是系统定义的一个32位的值,他唯一的定义了一个事件,向Windows发出一个通知,告诉应用程序某个事情发生了。例如,单击鼠标、改变窗口尺寸、按下键盘上的一个键都会使Windows发送一个消息给应用程序。消息本身是作为一个记录传递给应用程序的,这个记录中包含了消息的类型以及其他信息。例如,对于单击 阅读全文
posted @ 2012-08-17 23:50 CN.SnailRun 阅读(365) 评论(0) 推荐(0)
摘要:一、DLL的不同类型使用MFC可以生成两种类型的DLL:MFC扩展DLL和常规DLL。常规DLL有可以分为动态连接和静态连接。Visual C++还可以生成WIN32 DLL,但不是这里讨论的主要对象。1、MFC扩展DLL每个DLL都有某种类型的接口:变量、指针、函数、客户程序访问的类。它们的作用是让客户程序使用DLL,MFC扩展DLL可以有C++的接口。也就是它可以导出C++类给客户端。导出的函数可以使用C++/MFC数据类型做参数或返回值,导出一个类时客户端能创建类对象或者派生这个类。同时,在DLL中也可以使用DLL和MFC。Visual C++使用的MFC类库也是保存在一个DLL中,MF 阅读全文
posted @ 2012-08-17 23:49 CN.SnailRun 阅读(684) 评论(0) 推荐(0)
摘要:4.1.Net平台AOP技术概览.Net平台与Java平台相比,由于它至今在服务端仍不具备与unix系统的兼容性,也不具备类似于Java平台下J2EE这样的企业级容器,使得.Net平台在大型的企业级应用上,常常为人所诟病。就目前而言,.Net平台并没有提供AOP技术的直接实现,而微软在未来对于.Net的发展战略目标,我们仍未可知。但我相信微软对于目前炙手可热的AOP技术应该不会视而不见。也许在未来的.Net平台下,会出现类似于Spring那样的轻量级IoC容器,加上O/R Mapping的进一步实现与完善,随着Windows Server操作系统的逐步推新,.Net平台对于企业级系统开发的支持 阅读全文
posted @ 2012-08-17 23:48 CN.SnailRun 阅读(300) 评论(0) 推荐(0)
摘要:3.1 Java平台AOP技术概览3.1.1 AOP技术在Java平台中的应用AOP在实验室应用和商业应用上,Java平台始终走在前面。从最初也是目前最成熟的AOP工具——AspectJ,到目前已经融和在企业级容器JBoss中的JBoss AOP,均建立在Java平台上。前面已经描述到,AOP的目的就是将核心关注点和横切关注点分离,实际上这就是一种分散关注(seperation of concerns)的思路。在Java平台下,如果要开发企业级的应用,非J2EE莫属。一个J2EE应用系统只有部署在J2EE容器中才能运行,那么为什么要划分为J2EE容器和J2EE应用系统? 通过对J2EE容器运行 阅读全文
posted @ 2012-08-17 23:47 CN.SnailRun 阅读(157) 评论(0) 推荐(0)
摘要:2.1 AOP技术起源AOP技术的诞生并不算晚,早在1990年开始,来自Xerox Palo Alto Research Lab(即PARC)的研究人员就对面向对象思想的局限性进行了分析。他们研究出了一种新的编程思想,借助这一思想或许可以通过减少代码重复模块从而帮助开发人员提高工作效率。随着研究的逐渐深入,AOP也逐渐发展成一套完整的程序设计思想,各种应用AOP的技术也应运而生。AOP技术在Java平台下是最先得到应用的。就在PARC对于面向方面编程进行研究的同时,美国Northeastern University的博士生Cristina Lopes和其同事也开始了类似的思考。最终,美国国防先 阅读全文
posted @ 2012-08-17 23:45 CN.SnailRun 阅读(170) 评论(0) 推荐(0)
摘要:本文转载自:http://wayfarer.cnblogs.com/articles/241012.html软件设计因为引入面向对象思想而逐渐变得丰富起来。“一切皆为对象”的精义,使得程序世界所要处理的逻辑简化,开发者可以用一组对象以及这些对象之间的关系将软件系统形象地表示出来。而从对象的定义,进而到模块,到组件的定义,利用面向对象思想的封装、继承、多态的思想,使得软件系统开发可以向搭建房屋那样,循序渐进,从砖石到楼层,进而到整幢大厦的建成。应用面向对象思想,在设计规模更大、逻辑更复杂的系统时,开发周期反而能变的更短。自然其中,需要应用到软件工程的开发定义、流程的过程控制,乃至于质量的缺陷管理 阅读全文
posted @ 2012-08-17 23:44 CN.SnailRun 阅读(125) 评论(0) 推荐(0)
摘要:静态库在linux环境中, 使用ar命令创建静态库文件.如下是命令的选项:d -----从指定的静态库文件中删除文件m -----把文件移动到指定的静态库文件中p -----把静态库文件中指定的文件输出到标准输出q -----快速地把文件追加到静态库文件中r -----把文件插入到静态库文件中t -----显示静态库文件中文件的列表x -----从静态库文件中提取文件还有多个修饰符修改以上基本选项,详细请man ar 以下列出三个:a -----把新的目标文件(*.o)添加到静态库文件中现有文件之后b -----***************************************之前 阅读全文
posted @ 2012-08-17 23:43 CN.SnailRun 阅读(208) 评论(0) 推荐(0)
摘要:$gcc -c hello.c -o hello.o1.连接成静态库连接成静态库使用ar命令,其实ar是archive的意思$ar cqs libhello.a hello.o2.连接成动态库生成动态库用gcc来完成,由于可能存在多个版本,因此通常指定版本号:$gcc -shared -Wl,-soname,libhello.so.1 -o libhello.so.1.0 hello.o另外再建立两个符号连接:$ln -s libhello.so.1.0 libhello.so.1$ln -s libhello.so.1 libhello.so这样一个libhello的动态连接库就生成了。最重 阅读全文
posted @ 2012-08-17 23:43 CN.SnailRun 阅读(421) 评论(0) 推荐(0)
摘要:1)SQL的指令格式所有的SQL指令都是以分号(;)结尾的。如果遇到两个减号(--)则代表注解,sqlite3会略过去。2)建立资料表假设我们要建一个名叫film的资料表,只要键入以下指令就可以了:create table film(title, length, year, starring);这样我们就建立了一个名叫film的资料表,里面有name、length、year、starring四个字段。这个create table指令的语法为:create table table_name(field1, field2, field3, ...);table_name是资料表的名称,fieldx 阅读全文
posted @ 2012-08-17 23:42 CN.SnailRun 阅读(348) 评论(0) 推荐(0)
摘要:安装Ubuntu Apache下面,我们首先介绍如何安装Ubuntu Apache。具体安装命令如下所示: $ sudo apt-get install apache2然后运行Ubuntu Apache,命令如下所示: $ sudo /etc/init.d/apache2 restartApache在安装期间将会新建一个目录:/var/www,该目录是该服务器中存放文档的根目录。只要在浏览器的地址栏输入http://localhost/或机器的IP地址就能访问放置在此目录中的所有文档。 安装PHP PHP是一种流行的服务器端脚本语言,一般与MySQL或 Postgres结合起来用于管理... 阅读全文
posted @ 2012-08-17 23:42 CN.SnailRun 阅读(174) 评论(0) 推荐(0)
摘要:串口设备无论是在工控领域,还是在嵌入式设备领域,应用都非常广泛。而串口编程也就显得必不可少。偶然的一次机会,需要使用串口,而且操作系统还要求是Linux,因此,趁着这次机会,综合别人的代码,进行了一次整理和封装。具体的封装格式为C代码,这样做是为了很好的移植性,使它可以在C和C++环境下,都可以编译和使用。代码的头文件如下://///////////////////////////////////////////////////////////////////////////////filename:stty.h#ifndef __STTY_H__#define __STTY_H__#incl 阅读全文
posted @ 2012-08-17 23:41 CN.SnailRun 阅读(789) 评论(0) 推荐(0)
摘要:#include <winsock2.h>#include <Iphlpapi.h>#include <stdio.h>void byte2Hex(unsigned char bData,unsigned char hex[]){inthigh=bData/16,low =bData ;hex[0]= (high <10)?('0'+high):('A'+high-10);hex[1]= (low <10)?('0'+low):('A'+low-10);}int getLocalMa 阅读全文
posted @ 2012-08-17 23:40 CN.SnailRun 阅读(521) 评论(0) 推荐(0)
摘要:最近想学一下Qt,下载qt-sdk-win-opensource-2010.05.exe编译里面的例子,居然莫名其妙的有很多错误,对我这样的小白来说,看得眼都花了。神马 redeclaration of C++ built-in type 'wchar_h', 之类的。无奈,求助于百度谷歌。可以如下解决:如果你以前安装过visual studio 2008之类的软件,那么装上Qt Creator 后,编译运行其自带的演示程序时就可能出现如上图错误,几十个警告的问题。点击Qt Creator界面左侧的projects图标,查看工程信息。这里我们主要查看编辑环境Buid Envir 阅读全文
posted @ 2012-08-17 23:39 CN.SnailRun 阅读(723) 评论(0) 推荐(0)
摘要:VC++调程序出现如下错误:DebugAssertionFailed!Program:D:\wyuStud\debug\wyuStud.exeFile:afx.inlLine:157可能问题:1.野指针;2.内存泄露解决方法:1.看一看你的程序里是不是有ASSERT()或VERIFY()语句。这两个宏是用来测试它的参数是否为真的。出现你说的,这说明你的指针或表达试有问题2.File:afx.inlLine:157打开看看就知道了3.vc++中遇到过此问题,在release下回忽略此问题,其实就是野指针的问题,在release版本下不用关心这个问题,也就是系统帮你给屏蔽了,但是问题还是存在的,真 阅读全文
posted @ 2012-08-17 23:38 CN.SnailRun 阅读(322) 评论(0) 推荐(0)
摘要:Linux的grub是一个非常好的引导程序,它可以引导多操作系统。当windows和linux共存时有时候我们想删除 grub,重新启用单一的windows该如何操作呢,本文会给答案的。由于windows 2000、windows XP、windows 2003的启动机制与vista 的启动管理器有明显的差别,所以本文分两部分来说:一:删除grub,恢复windows 2000、windows XP、windows 2003原来的引导mbr方法一:使用其它dos命令(以XP为例)前提是您的系统的引导分区是在fat格式下,对于ntfs不起作用,因为dos命令不识别nfts的文件系统。用带启动盘功 阅读全文
posted @ 2012-08-17 23:37 CN.SnailRun 阅读(1054) 评论(1) 推荐(0)
摘要:1、通过编辑menu.lst来引导Windows系统如果您的Windows所处于的分区在(hd0,0),可以在menu.lst加如下的一段就能引导起来了;title WinXprootnoverify (hd0,0)chainloader +1如果您的机器有两块硬盘,而Windows位于第二个硬盘的第一个分区,也就是(hd1,0)您可以用grub的map来指令来操作把两块硬盘的序列对调,这样就不用在BIOS中设置了;在menu.lst中加如下的内容,比如下面的title WinXpmap (hd0) (hd1)map (hd1) (hd0)rootnoverify (hd0,0)chainlo 阅读全文
posted @ 2012-08-17 23:36 CN.SnailRun 阅读(2273) 评论(0) 推荐(0)
摘要:按照《鸟哥私房菜些》的shell编程例子,但是却出现莫名其妙的问题。如,文件名为sh06.sh:#!/bin/bash#Program:#This program will show the user's choice#History:#2010/08/01cnhjq First releasePATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/binexport PATHread -p "Please input (Y/N): "yn[ "$yn" == &qu 阅读全文
posted @ 2012-08-17 23:35 CN.SnailRun 阅读(266) 评论(0) 推荐(0)
摘要:物理地址扩展 (PAE) X86 允许软件使用地址窗口扩展 (AWE) API 集并在具有 Intel Pentium Pro 或更高版本处理器的计算机上运行,而 4 GB 以上物理内存允许将更多物理内存映射为应用程序的虚拟地址空间。不使用 AWE API 集的应用程序也可以从 PAE X86 获益,因为操作系统使用更大的物理内存来减小页面,从而提高了性能。同样,这还使驻留多个应用程序的合并服务器受益。在计算机科学中,物理地址扩展或实体位置延伸(PAE)是指x86和x86-64位处理器的一个特色,即如果操作系统提供适当支持,则可以在32位的系统中使用超过4GiB字节的实体内存。PAE为Inte 阅读全文
posted @ 2012-08-17 23:35 CN.SnailRun 阅读(631) 评论(0) 推荐(0)
摘要:大家在基于webform中使用水晶报表时如果简单的按照网上“阿刀”的做法,肯定会提示你:登陆失败。对于这个问题,斑竹我花了整整一天的时间研究水晶报表的帮助文件,终于得到解决方案。我不是一个保守的人,我相信有很多的网友正和我一样在花费精力在研究这个问题,我不愿意大家再和我一样白白的花费精力。下面是我实现该方案的几个步骤。大家不要着急,慢慢的看下去会对你有很大的帮助。步骤一:看示例文件水晶报表自带一个示例文件,数据库是access(不带密码的)。我首先运行示例文件(基于webform和winform)结果显示了正确的报表,正如“飞刀”的示例。于是,我自己建立了一个报表文件和.aspx文件,结果显示 阅读全文
posted @ 2012-08-17 23:34 CN.SnailRun 阅读(297) 评论(0) 推荐(0)
摘要:参考一:sizeof (char unsinged charsinged char ) =1字符类型规定为1sizeof ()[signed] int216bitunsinged int2[signed]short [int]2unsigned short [int]2[singed] long [int]432bitunsigned long [int]4float4double864bitlong double16128bitsizeof(数组) = 数组长度sizeof(指针) = 2sizeof(结构体struct) = 所有结构字节数总和sizeof(联合体union) = 最大成员 阅读全文
posted @ 2012-08-17 23:28 CN.SnailRun 阅读(530) 评论(0) 推荐(0)
摘要:下面摘抄于MSDN《ThreadPooling》。有许多应用程序创建的线程花费了大量时间在睡眠状态来等待事件的发生。还有一些线程进入睡眠状态后定期被唤醒以轮询工作方式来改变或者更新状态信息。线程池可以让你更有效地使用线程,它为你的应用程序提供一个由系统管理的工作者线程池。至少会有一个线程来监听放到线程池的所有等待操作,当等待操作完成后,线程池中将会有一个工作者线程来执行相应的回调函数。你也可以把没有等待操作的工作项目放到线程池中,用QueueUserWorkItem函数来完成这个工作,把要执行的工作项目函数通过一个参数传递给线程池。工作项目被放到线程池中后,就不能再取消了。Timer-queu 阅读全文
posted @ 2012-08-17 23:25 CN.SnailRun 阅读(1066) 评论(0) 推荐(0)
摘要:Alertable IO(告警IO)提供了更有效的异步通知形式。ReadFileEx / WriteFileEx在发出IO请求的同时,提供一个回调函数(APC过程),当IO请求完成后,一旦线程进入可告警状态,回调函数将会执行。以下五个函数能够使线程进入告警状态:SleepExWaitForSingleObjectExWaitForMultipleObjectsExSignalObjectAndWaitMsgWaitForMultipleObjectsEx线程进入告警状态时,内核将会检查线程的APC队列,如果队列中有APC,将会按FIFO方式依次执行。如果队列为空,线程将会挂起等待事件对象。以后 阅读全文
posted @ 2012-08-17 23:24 CN.SnailRun 阅读(676) 评论(0) 推荐(0)
摘要:早期IO设备的速度与CPU相比,还不是太悬殊。CPU定时轮询一遍IO设备,看看有无处理要求,有则加以处理,完成后返回继续工作。至今,软盘驱动器还保留着这种轮询工作方式。 随着CPU性能的迅速提高,这种效率低下的工作方式浪费了大量的CPU时间。因此,中断工作方式开始成为普遍采用的技术。这种技术使得IO设备在需要得到服务时,能够产生一个硬件中断,迫使CPU放弃目前的处理任务,进入特定的中断服务过程,中断服务完成后,再继续原先的处理。这样一来,IO设备和CPU可以同时进行处理,从而避免了CPU等待IO完成。 早期数据的传输方式主要是PIO(程控IO)方式。通过对IO地址编程方式的方式来传输数据... 阅读全文
posted @ 2012-08-17 23:23 CN.SnailRun 阅读(518) 评论(0) 推荐(0)
摘要:I/O完成端口是一种机制,通过这个机制,应用程序在启动时会首先创建一个线程池,然后该应用程序使用线程池处理异步I/O请求。这些线程被创建的唯一目的就是用于处理I/O请求。对于处理大量并发异步I/O请求的应用程序来说,相比于在I/O请求发生时创建线程来说,使用完成端口(s)它就可以做的更快且更有效率。CreateIoCompletionPort函数会使一个I/O完成端口与一个或多个文件句柄发生关联。当与一个完成端口相关的文件句柄上启动的异步I/O操作完成时,一个I/O完成包就会进入到该完成端口的队列中。对于多个文件句柄来说,这种机制可以用来把多文件句柄的同步点放在单个对象中。(言下之意,如果我们 阅读全文
posted @ 2012-08-17 23:22 CN.SnailRun 阅读(826) 评论(0) 推荐(0)
摘要:一、STL简介 STL(Standard Template Library,标准模板库)是惠普实验室开发的一系列软件的统称。它是由Alexander Stepanov、Meng Lee和David R Musser在惠普实验室工作时所开发出来的。现在虽说它主要出现在C++中,但在被引入C++之前该技术就已经存在了很长的一段时间。 STL的代码从广义上讲分为三类:algorithm(算法)、container(容器)和iterator(迭代器),几乎所有的代码都采用了模板类和模版函数的方式,这相比于传统的由函数和类组成的库来说提供了更好的代码重用机会。在C++标准中,STL被组织为下面的13.. 阅读全文
posted @ 2012-08-17 23:21 CN.SnailRun 阅读(254) 评论(0) 推荐(0)
摘要:Ant的概念可能有些读者并不连接什么是Ant以及入可使用它,但只要使用通过Linux系统得读者,应该知道make这个命令。当编译Linux内核及一些软件的源程序时,经常要用这个命令。Make命令其实就是一个项目管理工具,而Ant所实现功能与此类似。像make,gnumake和nmake这些编译工具都有一定的缺陷,但是Ant却克服了这些工具的缺陷。最Ant开发者在开发跨平台的应用时,用样也是基于这些缺陷对Ant做了更好的设计。Ant 与 makefileMakefile有一些不足之处,比如很多人都会碰到的烦人的Tab问题。最初的Ant开发者多次强调”只是我在Tab前面加了一个空格,所以我的命令就 阅读全文
posted @ 2012-08-17 23:20 CN.SnailRun 阅读(173) 评论(0) 推荐(0)
摘要:设立封锁机制主要是为了对并发操作进行控制,对干扰进行封锁,保证数据的一致性和准确性。Oracle数据库封锁方式有三种:共享封锁,独占封锁,共享更新封锁 封锁类型 Oracle RDBMS的封锁类型可分为如下三类:1、内部级封锁 内部级封锁是用于保护ORACLE内部结构,由系统内部实现,用户不能访问,因此我们不必对此做过多的了解。 2、DDL级封锁(字典/语法分析封锁) DDL级封锁也是由ORACLE RDBMS来控制,它用于保护数据字典和数据定义改变时的一致性和完整性。它是系统在对SQL定义语句作语法分析时自动地加锁,无需用户干予。字典/语法分析封锁共分三类: (1... 阅读全文
posted @ 2012-08-17 23:20 CN.SnailRun 阅读(151) 评论(0) 推荐(0)
摘要:从80386开始,cpu有三种工作方式:实模式,保护模式和虚拟8086模式。只有在刚刚启动的时候是real-mode,等到linux操作系统运行起来以后就运行在保护模式。实模式只能访问地址在1M以下的内存称为常规内存,我们把地址在1M 以上的内存称为扩展内存。在保护模式下,全部32条地址线有效,可寻址高达4G字节的物理地址空间; 扩充的存储器分段管理机制和可选的存储器分页管理机制,不仅为存储器共享和保护提供了硬件支持,而且为实现虚拟存储器提供了硬件支持; 支持多任务,能够快速地进行任务切换和保护任务环境; 4个特权级和完善的特权检查机制,既能实现资源共享又能保证代码和数据的安全和保密及任务.. 阅读全文
posted @ 2012-08-17 23:19 CN.SnailRun 阅读(395) 评论(0) 推荐(0)
摘要:chroot $LFS /tools/bin/env -i \HOME=/root TERM=$TERM PS1='\u:\w\$ ' \PATH=/bin:/usr/bin:/sbin:/usr/sbin \/tools/bin/bash --login/tools/bin/find /{,usr/}{bin,lib,sbin} -type f \-exec /tools/bin/strip --strip-debug '{}' ';'cd sourcestar xvf lfs-bootscripts-6.3.tar.bz2cd lfs-boo 阅读全文
posted @ 2012-08-17 23:17 CN.SnailRun 阅读(252) 评论(0) 推荐(0)
摘要:tar xvf db-4.5.20.tar.gzcd db-4.5.20patch -Np1 -i ../db-4.5.20-fixes-1.patchcd build_unix../dist/configure --prefix=/usr --enable-compat185 --enable-cxxmakemake docdir=/usr/share/doc/db-4.5.20 installchown -Rv root:root /usr/share/doc/db-4.5.20cd ..cd ..rm -rf db-4.5.20tar xvf sed-4.1.5.tar.gzcd sed 阅读全文
posted @ 2012-08-17 23:15 CN.SnailRun 阅读(284) 评论(0) 推荐(0)
摘要:mkdir -pv $LFS/{dev,proc,sys}mknod -m 600 $LFS/dev/console c 5 1mknod -m 666 $LFS/dev/null c 1 3mount -v --bind /dev $LFS/devmount -vt devpts devpts $LFS/dev/ptsmount -vt tmpfs shm $LFS/dev/shmmount -vt proc proc $LFS/procmount -vt sysfs sysfs $LFS/syschroot "$LFS" /tools/bin/env -i \HOME= 阅读全文
posted @ 2012-08-17 23:14 CN.SnailRun 阅读(249) 评论(0) 推荐(0)
摘要:tar xvf /lfs-sources/binutils-2.17.tar.bz2cd binutils-2.17mkdir -v ../binutils-buildcd ../binutils-buildCC="gcc -B/usr/bin/" ../binutils-2.17/configure \--prefix=/tools --disable-nls --disable-werrormakemake installmake -C ld cleanmake -C ld LIB_PATH=/tools/libcp -v ld/ld-new /tools/bincd 阅读全文
posted @ 2012-08-17 23:09 CN.SnailRun 阅读(550) 评论(0) 推荐(0)
摘要:(文章配备详细过程讲解请参见一步一步打造自己的Linux--LFS6.3安装过程(一)一步一步打造自己的Linux--LFS6.3安装过程(二)一步一步打造自己的Linux--LFS6.3安装过程(三)一步一步打造自己的Linux--LFS6.3安装过程(四)一步一步打造自己的Linux--LFS6.3安装过程(五)一步一步打造自己的Linux--LFS6.3安装过程(六)一步一步打造自己的Linux--LFS6.3安装过程(七)一步一步打造自己的Linux--LFS6.3安装过程(八)Youbest的手把手教你如何建立自己的linux系统(第二版))1. 从光驱启动。2. boot后进行简单 阅读全文
posted @ 2012-08-17 23:07 CN.SnailRun 阅读(441) 评论(0) 推荐(0)