设为首页收藏本站

                      LUPA开源社区

                       找回密码
                       注册
                      文章 帖子 博客
                      • 软件追踪
                      项目追踪
                      • 热门项目
                      • 最新项目
                      • 项目分类

                      Linux是最受?#38431;?#30340;自由电脑操作系统内核。它是一个用C语言写成,符合POSIX标准的类Unix操作系统。Linux最早是由芬兰黑客林納斯·托瓦茲为尝试在英特尔x86架构上提供自由免费的类Unix操作系统而开发的。该计划开始于1991年,这里有一份林納斯·托瓦茲当时在Usenet新闻组comp.os.minix所登载的帖子,这份著名的帖子标志着Linux计划的正式开始。

                      在计划的早期有一些Minix 黑客提供了协助,而今天全球无数程序员正在为该计划无偿提供帮助。

                      技术上说Linux是一个内核。“内核”指的是一个提供硬件抽象层、磁盘及文件系统控制、多任务等功能的系统软件。一个内核不是一套完整的操作系统。一套基于Linux内核的完整操作系统叫作Linux操作系统,或是GNU/Linux

                      Linux是一个宏内核(monolithic kernel)系统。设备驱动程序可以完全访问硬件。Linux内的设备驱动程序可以方便地以模块化(modularize)的?#38382;?#35774;置,并在系统运行期间可直接装载或?#23545;亍?/P>

                      Linux不是微内核(microkernel)架构的事实曾经引起了林納斯·托瓦茲与安德鲁·斯图尔特·塔能鲍姆(? Andy Tanenbaum)之间一场著名的争论。

                      尽管林納斯·托瓦茲的初衷不是使Linux成为一个可移植的操作系统,今天的Linux却是全球被最广泛移植的操作系统内核。从掌?#31995;?#33041;iPAQIBM S/390(一種可以同時跑成千上百個Linux的大型電腦),甚至於有人成功的將Linux内核在新力出品的遊戲機PS2PS3微軟出品的遊戲機Xbox上使用。Linux也是IBM超级计算机Blue Gene的操作系统。直至2008年11月,全球前五百大超級電腦(TOP 500)有高達87.8%的比例採用Linux為它們的作業?#21040;y,最快的超級電腦IBM_Roadrunner正是採用Linux的。

                      专利权

                      原先托瓦茲将Linux置于一个禁止任何商业行为的条例之下,但之后改用GNU通用公共许可证第二版。该协议允许任何人对软件进行修改或发行,包括商业行为,只要其遵守该协议,所有基于Linux的软件也必须以该协议的?#38382;?#21457;表,并提供源代码。

                      托瓦茲曾经公开声?#24179;獿inux置于GNU通用公共许可证之下是他一生中所做的“最好的决定”。

                      Linux內核有三個不同的命名方案。
                      早期版本:

                      • 第一個版本的內核是0.01。其?#38382;?.02,0.03,0.10,0.11,0.12(第一GPL版本),0.95,0.96,0.97,0.98,0.99及1.0。[6]

                      從0.95版有許多的補丁發布於主要版本版本之間。

                      舊計劃(1.0和2.6版之間):

                      • A大幅度轉變的內核。這是很少發生變化,只有當發生重大變化的代碼和核心發生才會發生。在歷史上曾改變兩次的內核:1994年的1.0及1996年的2.0。
                      • B是指一些重大修改的內核。
                        • 內核使用了傳統的奇數次要版本號碼的軟件號碼?#21040;y(用偶數的次要版本號碼來表示穩定版本)。
                      • C是指輕微修訂的內核。這個數字當有安全補丁,bug修復,新的功能或驅動程序,內核便會有變化。

                      自2.6.0(2003年12月)发布後,人們認識到,更短的發布週期將是有益的。自那時起:

                      • AB是無關要的
                      • C是內核的版本
                      • D是安全補丁(通常會以'rc'表示)

                      文/维基百科

                      Redland 是一套 C 语言?#30446;猓?#29992;来提供对 RDF (Resource Description Framework) 的操作支持。

                      主要特性有:

                      • 模块化, object based libraries and APIs for manipulating the RDF graph, triples, URIs and Literals.
                      • Storage for graphs in memory and persistently with Sleepycat/Berkeley DB, MySQL 3-5, PostgreSQL, AKT Triplestore, SQLite, files or URIs.
                      • Support for multiple syntaxes for reading and writing RDF as RDF/XML, N-Triples and Turtle Terse RDF Triple Language, RSS and Atom syntaxes via the Raptor RDF Parser Library.
                      • Querying with SPARQL and RDQL using the Rasqal RDF Query Library.
                      • Data aggregation and recording provenance support with Redland contexts.
                      • Language Bindings in Perl, PHP, Python and Ruby via the Redland Bindings package.
                      • Command line utility programs rdfproc (RDF), rapper (parsing) and roqet (query).
                      • 可移植、快速无内存泄露

                      1.   概述

                      在使用Struts2进行web项目开发的时候,我?#20999;?#35201;使用配置文件来解耦action和视图资源(例如:jsp页面)

                      开发完某个功能之后,我们在页面做一个操作(例如点击一个?#30913;ィ?#28982;后跳转到另一个页面,在调试的过程中,我?#20999;?#35201;知道我的这个操作调用了哪个action,并且action执行之后,返回到哪个页面,然后在action中,或页面上,或配置文件中来找到是否出错

                      一般的调试过程是:

                      l  根据url,在Struts2配置文件中找到该url对应的配置信息

                      l  然后根据配置信息,找到对应的action类,以及对应的方法

                      l  然后看该操作返回那个结果字符串

                      l  再到配置文件中,找到该结果字符串对应的视图资源位置

                      l  最后找到视图资源

                      这个过程对开发人员?#27492;擔?#26159;繁琐的,无聊的。

                      我们要做的,就是省去上面的步骤,直接找到需要的调试相关信息

                      2.   功能列表

                      l  用户进行一个操作,如果经过Struts2处理,就会在控制台打印相应的信息,信息如下:

                      该操作的访问方式:例如POSTGET

                      调试url地址:url?#23433;问?/SPAN>(POST方式的?#38382;?#34987;转为GET方式),便于用url直接调试

                      POSTGET?#38382;?#30340;多行显示?#22909;?#34892;显示一个键值对,?#38382;?#21517;称=?#38382;?#20540;

                      执行的action以及方法:便于快速找到该操作对应的action及方法

                      该操作的执行时间(单位毫秒):便于?#33539;?#35813;操作的执行效率

                      action配置信息所在配置文件的路径以及名称:便于快速找到对应的配置文件

                      action配置信息在配置文件中的行数:便于快速找到配置该action的位置

                      action返回的结果名称:便于快速?#33539;?/SPAN>action中方法返回的结果名称

                      action返回的视图位置:便于快速找到该操作返回的视图资源的?#23548;?#20301;置

                      Session范围中的信息:便于观察session中的信息

                      l  方便的开关控制台信息的显示

                      通过配置Struts.xml文件中的devMode的值为truefalse,来启用或停用控制台的提示信息,从而达到在开发的时候,设置devMode=true(打印信息),在程序上线的时候,设置devMode=false(不打印信息),?#25442;?#36896;成效率的影响。

                      或者在Struts.xml中去掉该插件相关的拦截器配置(在项目发布时,可以不包含该插件包),来关闭调试信息。

                      l  可自定义提示前缀和提示信息

                      configdebug.properties属性文件中进行配置。

                      3.   使用效果

                      3.1.  操作

                      用户在一个添加用户页面中,输入如下信息,然后点击提交?#30913;?/FONT>

                      该操作调用Struts2action



                       

                       

                      3.2.  结果

                       

                      在控制台打印出如上信息,说明:

                      1.         accessMethod

                      该操作的访问方法是POST方式提交的

                      2.         debugUrl

                      调试的url,显示完整的url以?#23433;问?#23545;于?#38382;?#30340;处理,如果是GET方式,就按原样打印,如果是POST方式,就将?#38382;?#36716;换为GET方式,即在url后面添?#30828;问?#23545;儿。如果这次增加操作出现异常,那么在修改后台代码之后,就不用在添加页码再?#38382;?#20837;这些信息,只需要将该debugUrl在浏览器的地?#38450;?#20013;执行即可,直到该功能调试成功,节省了输入信息的时间。

                      3.         parameters(Multirow)

                      如果有?#38382;?#23558;?#38382;?#20998;开,多行显示,便于开发人员观察?#38382;?#30340;值是否正确等

                      4.         actionAndMethod

                      该操作?#23548;?#35843;用的是com.demo.action.UserAction中的add方法,便于开发人员快速找到该方法进行修改逻辑,或修改bug

                      5.         executeTime

                      该操作的执行时间是375毫秒

                      6.         configFilePath

                      action(com.demo.action.UserAction)是在类路径下的struts.xml中配置的

                      7.         configFileLineNumber

                      action(com.demo.action.UserAction)struts.xml中配置位置的行号是47

                      8.         actionReturnResult

                      action(com.demo.action.UserAction)add方法中的返回结果值为success

                      9.         actionReturnView

                      action(com.demo.action.UserAction)返回的视图资源(例如:jsp)的位置在项目根路径下的app/user/user_list.jsp

                      10.     sessionInfo

                      当前session中的信息有,loginUser=张三

                       

                       

                      下载地址:http://code.google.com/p/configdebug/downloads/list

                      • 快毕业了,没工作经验,
                        找份工作好难啊?
                        赶紧去人才芯片公司磨练吧!!
                      双色球中奖图片