February 10th, 2010
nanyo
对Unix (or Linux)一窍不通,在同学的推荐下买了apue 2nd edition,看了几章了。今天想试试书上提供的源代码,首先解压源代码,得到目录apue.2e,打开此目录,按照readme里提供的方法,先将文件Make.defines.linux里的WKDIR改为你的源代码存放路径,默认是WKDIR=/home/var/apue.2e,修改完后,在目录apue.2e下执行make命令,出错。我的系统是Ubuntu 9.10,linux内核好像是2.6.30的。编译出错的原因应该是兼容性的问题,错误显示threadctl/getenv1.c下ARG_MAX未定义。ARG_MAX是在头文件limits.h中定义的,但该文件位于目录/usr/include/linux/下,而getenv1.c的include语句是“#include <limits.h>”,这将在usr/include/下查找文件limits.h,但include目录下的文件limits.h并没有定义ARG_MAX。因此将include语句改为“#include <linux/limits.h>”就行了。除了getenv1.c,还需修改同一目录下的getenv3.c的头文件声明部分,将“#include <limits.h>”改为“#include <linux/limits.h>”。修改保存后,在apue.2e目录下执行make,显示了两个warning,问题出在文件/threads/badexit2.c的两个函数里:printfoo和thr_fn2,我没理会这两个warning,这样源代码算是编译完成了。另外一个问题,网上不少文章说要改apue.2e/std/目录下的linux.mk文件,将nawk改为awk,这只需要在你的linux内核版本较老时才需要,nawk是新的awk,内核版本低的不支持nawk。如果内核版本较高,不需要修改。我在改和不改的情况下都试了一次,结果都一样。
Read more…
之前在台式机上装了双系统,电脑自带的是Vista Home Premium,而我装了Ubuntu 9.10。Ubuntu的Grub自动给电脑做好了引导程序,但默认的启动系统我选的是Ubuntu,不是Vista。后来发现,还是Vista用的多,但启动系统时一不留神就进来Ubuntu,得重启后再进Vista,如此折腾了多次。今天心血来潮,想把默认启动的系统改为Vista。Google了很多修改grub的文章,大多是针对Ubuntu 9.10之前的版本的,这些版本使用的是grub,而Ubuntu 9.10用的是Grub2。Grub2和Grub还是有些不同的,比如/boot/grub/文件夹下就找不到menu.lst。而网上的多数方法都是针对Grub。有关Grub2的修改的文章有一些,但大部分方法不对头,这些方法建议修改/boot/grub/grub.cfg的相关内容,如set default=”0″,来指定默认的启动系统。但这样治标不治本,更新grub之后,所作的修改都会失效。究其原因,可以看grub.cfg文件开头的一段描述:
Read more…
前几天给新买的lenovo desktop装了双系统,装完之后,引导和启动都没问题,系统能够正常的启动。隔了几天没用,今天又开了电脑,装了一些其他程序,还有Vista的更新,重启,发现系统启动不了了。每次总是进入Intel Boot Agent的界面:先显示电脑的MAC Address,然后加载DHCP(Dynamic Host Configuration Protocol (DHCP)),最后出现了两行PXE提示,说是no boot filename received,并退出了intel boot agent,如下所示:
Intel(R) boot Agent FE v4.1.21
Copyright (C) 1997-2007. Intel Corporation
CLIENT MAC ADDR:…
PXE-E53:…
PXE-mof:…
Read more…
等了好久的desktop主机今天终于到了,UPS Ground,从下订单到收到主机过了整整八天,有点慢,等得我心力交瘁。Google手机nexus one今天也到了(帮同学买的),昨天下的订单,今天就收到了,用了Fedex Overnight,效率真赞。拿到主机后,迫不及待的拆了瞧一瞧,这可是我人生中的第一台desktop,有点兴奋。拿出安装说明书,配上前几天到的Dell显示器,花了点时间把机子装好,启动。启动速度很快,比我的笔记本快好多,台式机内存4G,笔记本的3G,笔记本的主频比台式的高一点,为毛笔记本那么慢,看来随着使用时间的推移操作系统也有老化的问题,kidding。台式机的系统是Vista Home Premium,笔记本的是Vista Ultimate,应该是OS的区别导致不同的启动速度,sigh,功能多的不一定好。打算在台式机上装双系统,Windows和Linux,但硬盘没有分区,折腾了一会,把硬盘分成了四个区,Vista占三个,150G,250G,100G,剩下的75G留给Ubuntu。其他的空间要么莫名消失,要么被整到了不可控的分区里,不过硬盘已经够大,我不是那种喜欢存电视剧or电影的人,五百多G的空间足够我瞎整了。
Read more…
September 29th, 2009
nanyo
听Sumeet说过,老板的研究方向正在往CPS转移,CPS是个比较新的领域,注重计算资源与物理资源的紧密结合与协调,个人觉得,比较像Embedded System和Wireless Sensor Network的结合,主要用于一些智能系统上,如机器人,智能导航等。以下是Wikipedia对CPS的描述,比我说的权威多了。
A cyber-physical system (CPS) is a system featuring a tight combination of, and coordination between, the system’s computational and physical elements. Today, a pre-cursor generation of cyber-physical systems can be found in areas as diverse as aerospace, automotive, chemical processes, civil infrastructure, energy, healthcare, manufacturing, transportation, entertainment, and consumer appliances. This generation is often referred to as embedded systems. In embedded systems the emphasis tends to be more on the computational elements, and less on an intense link between the computational and physical elements.
Read more…
最新评论