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

2013年5月21日

摘要: 对于sudo apt-get install apps命令,系统默认将下载文件放在/var/cache/apt/archives目录下,然后安装,如果使用后没有删掉,文件日积月累,磁盘空间浪费严重。这时就需要我们自己进行删除。删除命令:sudo apt-get clean删除/var/cache/apt/archives和/var/cache/apt/archives/partial目录下的所有包,当然,锁定的除外 阅读全文

posted @ 2013-05-21 14:25 藤一1222 阅读(670) 评论(0) 推荐(0) 编辑

2013年2月27日

摘要: 原文地址:http://www.nowamagic.net/librarys/veda/detail/2436做一名禅修程序员意味着什么?那意味着,你要持守我从禅宗 习得的10条戒律,它们与计算机程序员的现代世界息息相关。早晨,外面下着雨,我发觉自己正坐在办公桌上琢磨有关高效率工作(efficient working)的问题。在我成为自由职业者之前的那些日子,尽管做了许多工作,然而回首往昔,不过是一片狼藉罢了。回想2006年我开始禅修之际,当时有好一阵子,这种念头清晰地浮现在我的脑海里:几百年前,老禅师就已知晓今天的程序员到底该如何工作。尽管我并不喜欢那些诸如“成为更好的程序员”之类的帖子,但 阅读全文

posted @ 2013-02-27 10:37 藤一1222 阅读(166) 评论(0) 推荐(0) 编辑

2013年1月14日

摘要: 很多用户一般都会选择Windows + Ubuntu的双系统。用得时间久了,随着Ubuntu内核的不断升级,开机启动菜单会变得越来越臃肿。下面简单介绍一下如何删除开机启动菜单多余的内核(旧版本),以及如何调整不同操作系统的启动顺序。Ubuntu是由grub引导启动的。每当Ubuntu升级到新的版本后,grub会自动调整开机启动菜单的顺序,把新的内核放在启动菜单的开始, 同时也不会删除久的内核版本。这样,当Ubuntu的升级次数一多,启动菜单中将变得非常臃肿。而且那些旧版本的内核基本不会用,不如删除之。解决方案如 下:1.找出系统已经安装的内核版本,在终端里输入命令:dpkg --get-sel 阅读全文

posted @ 2013-01-14 16:41 藤一1222 阅读(925) 评论(0) 推荐(0) 编辑

2013年1月4日

摘要: 现行的Linux distros主流的有两种init方式:一种是广为流传的System V initialization,它来源于Unix并且至今仍被各种Linux distros所采用;另一种是近几年提出的Upstart方式,基于事件机制,系统的所有服务,任务都是由事件驱动的。据我所知,采用后一种方式的目前 有Ubuntu(6.10 and later),Fedora(9.10 and later),Debian(optional)。虽然采用Upstart的发行版并不多,但它旨在取代旧式的System V initialization。 作为知识梳理,我现在就先在这里总结一下这两种方式各自. 阅读全文

posted @ 2013-01-04 15:30 藤一1222 阅读(189) 评论(0) 推荐(0) 编辑

2012年12月29日

摘要: CHM文件是windows默认的帮助文件,一般在windows下直接双击即可打开。如果确认打不开1、检查下载的文件是否受损,下载的过程中是否被打断过。2、下载的文件本身的问题?请查看文件大小是否为零。3、您的系统目录下是否有HH.EXE这个文件(如:c:\\windows下),这个文件用来打开CHM文件。A) 有HH.EXE仍打不开—可能程序所需链接库文件受损 B)没有HH.EXE4、如果没有HH.exe,请从其它计算机中拷贝一个5. 如果都没问题的话,有可能是本电脑系统出于对系统的保护而设置的“自动锁定”,查看文件属性,然后解除锁定,再重新打开看是否可行。 阅读全文

posted @ 2012-12-29 13:28 藤一1222 阅读(230) 评论(0) 推荐(0) 编辑

2012年12月21日

摘要: 数据库的两段锁协议是指所有事务必须分两个阶段对数据项进行加锁和解锁1.扩展阶段在对任何数据项的读、写之前,要申请并获得该数据项的封锁。2.收缩阶段每个事务中,所有的封锁请求必须先于解锁请求。例如:事务T遵循两段锁协议,其封锁协议为:BEGIN TRANSACTION;LOCK(A);READ A; A := A + 100; WRITE A; LOCK(B); UNLOCK(A); READ(B), UNLOCK(B),;COMMIT;可以证明:若并发执行的所有事务均遵守两段锁协议,则对这些并行事务的任何并行调度策略都是可串行化需要说明的是,并发执行的所有事务若均遵守两段锁协议,只是这些事务的 阅读全文

posted @ 2012-12-21 16:42 藤一1222 阅读(9804) 评论(0) 推荐(2) 编辑

摘要: 1.事务的概念事务是一个数据库操作序列,这么事务要么全做要么都不做,是一个不可分割的工作单位。用户可以显式地定义事务的开始与结束,如果用户没有定义,DBMS按缺省规定自动划分事务。2.事务的特点(ACID)(1)原子性:事务的操作序列要么全做要么全不做,是一个不可分割的工作单位。(2)一致性:事务执行的结果必须使数据库从一个一致性状态变成另一个一致性状态。(3)隔离性:一个事务的执行不被其他事务影响,并行运行的事务互不影响。(4)持久性:事务一旦提交,对数据库数据的改变是永久性的。3.故障的种类(1)事务故障事务故障说明事务没有达到预期的终点,因此,数据库可能处于不正确的状态。恢复程序应该在不 阅读全文

posted @ 2012-12-21 15:03 藤一1222 阅读(265) 评论(0) 推荐(0) 编辑

2012年12月20日

摘要: 1.视图的定义视图是一张虚拟表,其内容由查询定义。数据库中存储的是视图的定义,而不存储视图的数据。2.视图的作用摘自百度百科http://baike.baidu.com/view/71981.htm* 简单性。看到的就是需要的。视图不仅可以简化用户对数据的理解,也可以简化他们的操作。那些被经常使用的查询可以被定义为视图,从而使得用户不必为以后的操作每次指定全部的条件。* 安全性。通过视图用户只能查询和修改他们所能见到的数据。数据库中的其它数据则既看不见也取不到。数据库授权命令可以使每个用户对数据库的检索限制到特定的数据库对象上,但不能授权到数据库特定行和特定的列上。通过视图,用户可以被限制在数 阅读全文

posted @ 2012-12-20 21:16 藤一1222 阅读(165) 评论(0) 推荐(0) 编辑

摘要: 1.什么是存储过程存储过程就是由一些SQL语句和控制语句组成的被封装起来的过程。它们驻留在数据库中,可以被客户应用程序调用2. 使用存储过程的好处(1)减少网络通讯量。调用一个行数不多的存储过程与直接调用SQL语句的网络通信量可能不会有很大的差别,可是如果存储过程包含上百行SQL语句,那么其性能绝对比一条一条的调用SQL语句要高得多。(2)加快执行速度。由于存储过程首次运行时被编译,这将产生一个执行计划,然后执行计划在内存中得到缓存,以备以后调用,可以改善存储过程的性能。(3)可维护性和抽象性。理想情况下,数据库架构从不更改,业务规则不被修改,但在现实环境中,情况则完全不同。既然情况如此,那么 阅读全文

posted @ 2012-12-20 11:28 藤一1222 阅读(139) 评论(0) 推荐(0) 编辑

2012年12月11日

摘要: error C2471: 无法更新程序数据库“c:\documents and settings\.......\debug\vc90.pdb”fatal error C1083: 无法打开程序数据库文件:“c:\documents and settings\........\debug\vc90.pdb”: No such file or directory ....解决方法:修改一下设置,就可以解决C2471:C\C++ | General | Debug Information format | C7 Compatible (/Z7)C\C++ | Code Generation | E 阅读全文

posted @ 2012-12-11 14:36 藤一1222 阅读(957) 评论(0) 推荐(0) 编辑