Aug 22
因为需要测试算法的效率,所以专门找了一下在Linux下C/C++如何取得精确的时间来进行判断。
有两个办法,
1. 调用系统命令data +%s.%N,可以取得当前的Unix时间戳,格式为 秒数.毫秒数
FILE *pipe = popen("data +%s.%N", "r");
fscanf(pipe, "%d.%d", &s, &ns);
这样就取得了精确的时间。
2. 使用gettimeofday()函数
struct timeval { long tv_sec, tv_usec; }; //这个结构体保存秒数和毫秒数(0~1000000)
int gettimeofday(struct timeval *tv,struct timezone *tz); //调用时tz一般用NULL代替

下面对第二种方法给出样例程序:Linux下测试程序运行时间的一个类
Aug 19
因为Vista挂掉的原因使得我Wubi安装的Ubuntu 8.04 Hardy启动后只能引导到一个叫做什么Busybox的sh shell界面,没有读取root.disk,上网搜了一下,有一个解决办法是,打开grub的menu.lst,或者直接在grub界面按e进入修改模式,找到这一行:
kernel    /boot/vmlinuz-2.6.24-21-generic root=UUID=2874D2DE74D2AE36 loop=/ubuntu/disks/root.disk ro quiet splash
删掉quiet splash, 换成irqpoll  回车,按下b键(boot)然后等两三分钟,终于进入了可爱的Ubuntu...
Tags:
Aug 14
linux下的shell用惯了,在windows的cmd下面总是习惯打上ls和clear这样的命令,然后就会很郁闷。于是又把cygwin装上了。本来打算等过了15天包换期再说的,但是实在受不了windows垃圾的cmd了。。不过郁闷的是,在cygwin下面居然没有clear这个命令,那个汗啊。不过可以自己为它写一个名为clear的脚本,保存在/bin下面。其实也很简单,就是调用cmd, 运行一个cls命令。

#vim /bin/clear

---以下为clear的内容---
#!/bin/bash
cmd /c cls
---clear结束---

保存退出,OK,以后就可以尽管用clear啦!

然后把c:\cygwin\bin加到系统的path变量里面去,以后在cmd下面也可以用ls这些命令了。不过在cmd下面还是不能用clear这个命令——其实这个更容易解决了,在c:\cygwin\bin下面加入一个clear.bat, 内容为@cls, 保存,OK!
Tags: ,
Aug 11
1. 到bbs.whu.edu.cn的Unix/Linux版搜索以前的主题,找到专为Hardy编译的superstar.tar.gz(400多KB),解压得到superstar, 是1.2MB左右大小的,这个静态编译加入了旧版本的libpcap库,因为Ubuntu8.04的新版本不兼容
2. copy到"/home/你的用户名"这个文件夹下
3. 打开 主菜单->附件->终端
4. 输入chmod 755 superstar 回车,设置superstar的文件权限
5. 输入sudo cp superstar /usr/bin 把superstar拷贝到系统可执行文件存放的目录
6. 打开网络配置(右击左上角的网络图标,选择手动配置),点击解锁,输入密码
7. 双击你的网卡,勾掉漫游模式前面的勾勾,下面的下拉菜单选择 DHCP, 确定
8. 选择DNS选项卡,添加一个为202.114.112.13的条目(whu的DNS服务器)
9. 在打开终端,输入"sudo superstar -i eth0 -u 学号 -p 密码"进行连接。

10. 如果嫌每次输入密码麻烦,可以建立一个脚本,示例:
打开gedit(主菜单->附件->文本编辑器), 输入
引用
#!/bin/bash
sudo superstar -i eth0 -u 帐号 -p 密码

保存到"/home/你的用户名",文件名为ruijie
打开终端
#chmod 700 ruijie
#sudo cp ruijie /usr/bin
以后只要打开终端输入 ruijie 就可以了。
Tags: ,
Aug 11
在Ubuntu下sudo apt-get install apache2安装完Apache2以后,启动apache2的默认用户名是www-data, 属于www-data用户组
在shell中按如下输入
#apache2
会出现错误提示:
apache2: bad user name ${APACHE_RUN_USER}

解决办法:
1. 打开apache2的配置文件
#sudo gedit /etc/apache2/apache2.conf
(本来应该改envvars这个文件的,但是不知道为什么修改了不起作用)
2. 修改默认的用户名和组
找到 ${APACHE_RUN_USER} 和 ${APACHE_RUN_GROUP}
替换为自己的用户名和组,然后保存退出。
3.重启apache2
#apache2 -k graceful

注意,要让自己的用户对/var/www这个目录有写权限,否则你的脚本可能会出问题的。
当然,可以打开/etc/apache2/sites-enabled/000-default修改网站文件的根目录。
Tags: ,
Aug 11
在Ubuntu里面安装了Compiz-Fusion以后可能会出现窗口的初始位置不对,每次都出现在窗口的左上角,并且标题栏还被主菜单遮挡,这种情况下只要打开Compiz-Fusion的设置选项,然后在"窗口管理"大类中找到Place Window, 把Placement Mode选项改为Centered即可。

我遇到了这个问题,是在Ubuntu中文论坛找到答案的,具体网址是 http://forum.ubuntu.org.cn/viewtopic.php?t=59298
Tags:
Jul 23
1. 打开terminal

2. 登陆为root
#su
(输入root的密码)

3. 加载所有网卡
#ifconfig -a plumb

4. 配置IP和子网掩码,并开启网卡
#ifconfig -a (查看所有网卡状态, 找到需要配置的网卡,一般是rtls0, 另外的lo0是自回路,也就是用来访问本机的)
#ifconfig rtls0 192.168.5.1 netmask 255.255.255.0 up
(格式是 ifconfig 网卡名 IP地址 netmask 子网掩码 up)
#ifconfig -a (查看所有网卡的状态,看看配置的网卡状态是否正常,如果包括了ip并显示为up,说明配置成功)

至此Solaris应该就可以访问局域网中的所有机器了。如果想要访问外网,还需要进一步的配置:
Jun 20
from http://www.digbuzz.com/story/ubuntu-8.10-intrepid-ibex%E5%8F%91%E5%B8%83%E6%97%B6%E9%97%B4

不得不佩服Ubuntu团队,Ubuntu 8.04 Hardy Heron正式版发布了近十天,按照往常的计划,新版本发布后一个月左右,下一个版本的开发计划和时间表才会放出。没想到才十天,Ubuntu官方便放出了Ubuntu 8.10 Intrepid Ibex的发布时间表.而且Ubuntu不会找各种各样的原因跳票,其他的团队公司等动不动就跳票,实在恶心~。 Ubuntu 8.10,代号“Intrepid Ibex”,将是一个完全改变Ubuntu外观,提升移动网络功能和进军高端工作站的版本。 跟以往的版本一样,Ubuntu 8.10将有6个Alpha版,1个Beta版和1个RC版。具体的发布时间安排如下: 2008-06-13:Ubuntu 8.10 Alpha1 2008-07-03:Ubuntu 8.10 Alpha2 2008-07-24:Ubuntu 8.10 Alpha3 2008-08-14:Ubuntu 8.10 Alpha4 2008-09-04:Ubuntu 8.10 Alpha5 2008-09-18:Ubuntu 8.10 Alpha6 2008-10-02:Ubuntu 8.10 Beta 2008-10-23

Tags:
分页: 8/18 第一页 上页 3 4 5 6 7 8 9 10 11 12 下页 最后页 [ 显示模式: 摘要 | 列表 ]