- 浏览: 271884 次
- 性别:
- 来自: 上海
最新评论
-
AndMacLinuXp:
试了下,不错!
printk内核调试 -
klose:
我引用你的文章,并做了简单的分析:这里贴出url:http:/ ...
linux系统调用fork, vfork, clone -
klose:
你上面提到的问题:free的问题。首先你可能疏忽了,stack ...
linux系统调用fork, vfork, clone -
qwe_rt:
HI ,非常nice的文章,在阅读过程中,我发现我的ubunt ...
linux手动添加开机启动的服务 -
suifeng:
谢谢分享, 受用中.
shell编程分支,循环
文章列表
一个乘法器大致组成(最简单的真值乘法器,当然不存在真值乘法器,这里以2个正数为例,原码是相对于补码和反码而言)。3个寄存器和一个加法器和逻辑处理电路。
假设我们要计算 4 * 5。他们的原码则是 0100, 0101(注,以4位存贮单元,因为是原码,最高位不代表符号位)。用乘法器大致过程如下:
1. 3个寄存器分别存放乘数0101,被乘数0100和一个部分积(用来暂存部分结果的寄存器),部分积初值为0.
2. 首先判断乘数寄存器(目前值是0101,既为5)的最低位为1.如果为1则将部分积的值通过加法器加上被乘数0100。因此此次步骤结束后,部分积寄存器的内容是0100.
3. 将 ...
- 2009-03-20 16:04
- 浏览 1927
- 评论(0)
1. 仙剑4的主题曲《竹本不为》,正是由于这首曲子才会喜欢上这个游戏,本人不喜欢回合制。真是次不小心的意外。
2.[二胡阳炎之千秋恋歌(月阳炎)].专辑.(MP3) 每一首二胡都是经典
3.折护伸治的2首曲子《潮起潮落声》《小镇,时光的流逝,人》听上去还不错。以前还没注意这么个作曲家。
- 2009-01-14 17:48
- 浏览 1072
- 评论(0)
转自:http://linux.chinaunix.net/bbs/thread-725596-1-1.html
中文来自:
http://www.linuxforum.net/doc/smartq-grand.html
英文原版:
http://linuxmafia.com/faq/Essays/smart-questions.html
How To Ask Questions The Smart Way
译者 D.H.Grand
...
- 2009-01-12 11:25
- 浏览 1477
- 评论(0)
如果你只是想知道如何添加一个开机启动的服务时候,那建议你直接看本文第2部分,如果你想读的更流畅,那建议从头看起,如果你耐心不错,希望继续读的时候,就请读完本文。
第一部分,这里介绍一种最"原始的"( ...
- 2009-01-02 14:48
- 浏览 7204
- 评论(1)
限制用户登录的shell
- 博客分类:
- linux shell
限制用户登录
有时候我们需要限制一些用户登录,shell载入过程需要载入/etc/profile,我们可以从这里下手。修改之前先备份这个文件以免出问题,如果你不想让某个用户登录,你就可以在这个文件最后加上
if [ $LOGNAME = "用户名" ]; then
echo "sorry ${LOGNAME} cannot be login, get more infomation from admin"
exit 1
fi
这里$LOGNAME在此之前已经被赋予了登录名,只要用户名被你限制后,登录程序就会从这个判断退出,从 ...
- 2008-12-31 17:00
- 浏览 1544
- 评论(0)
函数语法:
函数名 () {
命令
}
或者
function 函数名() {
命令
}
调用方式
函数名 参数
参数和普通的shell脚本参数一模一样,以空格分隔,函数中同样以$1等来读取。
SHELL和其它语言的函数有个区别在于,他保存当 ...
- 2008-12-29 13:29
- 浏览 1669
- 评论(0)
1.&&
在一个普通的shell中,命令执行是没有相互依赖的,比如
cat my1.txt
cat my2.txt
大家可以试试,无论上面一个命令是否正确运行,下面的指令都会运行。但有时候我们需要前一个指令没有成功执行时候,后一个指令就不要 ...
- 2008-12-22 17:45
- 浏览 4274
- 评论(0)
1。分支
也就是判断了,先介绍下test(这里牵扯到一个问题,我们写shell时候无论是变量,还是文件名尽量不要和指令名冲突),例如我们想看看当前目录下是否有first.sh这个文件,有就输出haha ,没有就heihei.
[root@liumengli my_shell]# cat shell_example.sh
#!/bin/sh
if [ -f first.sh ]
then
echo 'This file exit!'
else
echo 'do not exit!'
fi
exit 0
[root@liumengli my_shell]#
...
- 2008-12-18 17:51
- 浏览 2248
- 评论(1)
变量不需要声明在shell中,对一个变量赋值就像这样 myvar='hello world',注意的是=号2端不要有空格,这和我们JAVA中为了程序好看常常带空格不一样,这里有空格,你就会发现这个变量用不了。
1变量
上面是变量的声明,如果你 ...
- 2008-12-18 15:38
- 浏览 1932
- 评论(0)
shell编程的缺点:1.移植性差 2.效率低。优点:简单,方便。他非常用来适合让我们完成一些自动的,重复性的,但要求效率不高,移植性不强的任务。比如每周定时对你的linux系统垃圾的清理任务就可以交给SHELL来完成。
谈到s ...
- 2008-12-18 11:54
- 浏览 2185
- 评论(0)
触发器算是蛮好用的一个功能了,所谓触发器就是在某种条件下会触发执行的一个小程序。比如我们做一个大型的数据处理,这种例子很多,有一个表有很多记录,我们要经常拿到这个表的一些统计信息,比如这个表有多少条数据。从实现上来讲思路很多。我们可以使用 select count(id) from 表名,这是个不错的选择,但数据量太大,速度怎么样就不能保证了。
另一个办法,我们不妨记录下这个表的现在大小,在这个表每次插入一条语句时候就对这个计数进行加一操作,然后但我们要统计信息时候就直接取这个数据比select count(id) from 表名的速度要快多了。
当然,这么做也有风险就是我们要过一段时间确定 ...
- 2008-12-17 16:55
- 浏览 953
- 评论(0)
光标和JAVA程序里面的ResultSet非常相似,可能ResultSet是由光标来实现的吧(玩笑,我没考证过)。每个数据库光标的语法不太相同,但他们作用相同,而且语法类似。由于机器没有ORCALE,我拿了mysql的光标玩了下。
主要是用光标批量处理数据,如把一个表中数据符合要求的某些字段照搬到另一个表中,这个功能有没有用就不说了,我们只是学习下光标的使用
mysql> describe pet;
+---------+-------------+------+-----+---------+-------+
| Field | Type | Null | Key ...
- 2008-12-17 15:20
- 浏览 930
- 评论(0)
这里以mysql为例,存贮过程是一组已经被编译好的SQL语句,所以他的速度要比没有编译的SQL语句速度要快,在有大量SQL语句时候,写成存贮过程是个不错选择,其次他还保证了数据修改的原子性。
mysql> select * from pet;
+----------+--------+---------+------+------------+------------+
| name | owener | species | sex | birth | death |
+----------+--------+---------+------+------ ...
- 2008-12-15 17:15
- 浏览 1047
- 评论(0)
前面我们谈到过管道,消息队列。我们可以使用他们可以解决了2个进程直接通信的问题,其实还有一个办法是共享内存,具体函数我没给出,大家可以自己查询资料。管道,消息队列除了提供进程通信的解决办法外,他还给我们提供了一个额外的功能,那就是多个进程对临界资源的共享问题。(共享内存没有,需要自己实现对资源的互斥操作)
无论是管道还是报文,发送方在写满的时候都会被阻塞,接受方在空的时候也会被阻塞。所以我们没有看到对同一个管道或者报文读写时候要加上额外的代码解决多个进程对资源共享产生的问题。但有些时候我们对某些资源操作需要实现互斥操作,不允许2个以上的进程同时操作资源,其实这个在JAVA里面由于封装,我们使 ...
- 2008-12-09 16:14
- 浏览 1611
- 评论(0)
报文和消息队列又是进程间通行的一种手段(用于发送大量信息,它没有信号那种异步性和命名管道很像,能发送接收大量数据,但管道的缺点是数据没有组织性)。
它的特点,他的生命周期很长,一个消息队列创建后,让他 ...
- 2008-12-04 17:39
- 浏览 1426
- 评论(0)