Yes, Virginia

天真可爱的小女孩,一脸困惑地望着你,”这世界上真的有圣诞老人么?”此情此景,你当如何作答?

1879年,一个8岁的美国小女孩写信给《纽约太阳报》的编辑,问了这个问题。

Dear Editor-

I am 8 years old. Some of my little friends say there is no Santa Claus. Papa says, “If you see it in The Sun, it’s so.” Please tell me the truth, is there a Santa Claus?

Virginia O’Hanlon

当时太阳报的编辑Francis P. Church给Virginia写了一篇名为”Yes, Virginia, There is a Santa Claus”的回信。

弗吉尼亚,你的小朋友们是错误的。在这个怀疑一切的年代,他们也被这种论调影响了。不能亲眼看到的东西,他们就不愿相信。他们觉得凡是自己的小脑瓜理解不了的事情就不是真的。而所有的头脑,弗吉尼亚,不管是大人的还是小孩的,都是非常渺小的。我们居住在广阔的宇宙里,人类的知识和周围无边无际的世界比起来,和能了解这个世界一切真相的智慧比起来,就像蠕虫,像蚂蚁一样微不足道。

没错,弗吉尼亚,世界上是有圣诞老人的。就像有爱,有无私,有奉献存在一样。你知道,正因为生活中充满了这些,我们才会拥有那些最美好,最快乐的时刻。天哪,要是没有圣诞老人,这个世界会变得多么单调!简直就要像没有你这样的小朋友一样无趣了。如果没有圣诞老人,就不会有小孩子一样天真的信仰,就不会有诗歌,不会有浪漫的爱情,给我们的生活带来慰籍。我们徒然拥有知觉和视力,却不会感受的欢乐,因为照亮世界的童心之光已经熄灭了。

不相信圣诞老人!那我们还怎样去相信小仙女?你可以让爸爸雇一个人,在圣诞节前一天晚上看住所有的烟筒,试试能不能撞见他。不过,就算你没有看到圣诞老人从烟筒里滑下来,那又能说明什么呢?没有人见过圣诞老人,可是却有各种各样的事情证明他存在。世界上最真实的东西是大人们和孩子们都看不到的。你看到小仙女在草地上跳舞了吗?当然没有,但这并不能说明她们就不存在。这个世界上看不到的奇迹太多了,多得我们想象不出,更不能随便怀疑。

你可以打开会响的布娃娃,看看到底是什么让她发出声音。但我们看不到的那个世界面前隔着一层帘子,是最有力气的人都拉不开的,世界上所有最有力气的人加起来都不行。只有信仰,诗歌,爱和浪漫,才能揭开这层帘子,为我们描绘后面最惊人的美丽,最崇高的乐趣。这是真的吗?啊,弗吉尼亚,世界上再没有比这更真实的事情了。

没有圣诞老人!感谢上帝!他要一直一直存在下去,一千年,弗吉尼亚,不,一千年还要乘以十倍,他要一直给有童心的人带来快乐。

看到100多年前的文章,不得不感慨

  1. 孩子的问题不好回答。而困难的根源在于我们自己所立的土壤是否坚实。我们自己的价值观、信仰、以及对生活本身的热情;
  2. 书刊、报纸应当始终肩负启蒙的重任。这是个人的幸福之源,也是国家的强盛之本。

Link:
http://beebo.org/smackerels/yes-virginia.html
http://bbs.hpac.net.cn/redirect.php?fid=11&tid=1513&goto=nextoldset (中文翻译出处)

linux C函数库参考

第1章 字符测试函数
isalnum(测试字符是否为英文字母或数字)
isalpha(测试字符是否为英文字母)
isascii(测试字符是否为ASCII码字符)
isblank(测试字符是否为空格字符)
iscntrl(测试字符是否为ASCII码的控制字符)
isdigit(测试字符是否为阿拉伯数字)
isgraph(测试字符是否为可打印字符)
islower(测试字符是否为小写英文字母)
isprint(测试字符是否为可打印字符)
isspace(测试字符是否为空格字符)
ispunct(测试字符是否为标点符号或特殊符号)
isupper(测试字符是否为大写英文字母)
isxdigit(测试字符是否为16进制数字)
第2章 数据转换函数
atof(将字符串转换成浮点型数)
atoi(将字符串转换成整型数)
atol(将字符串转换成长整型数)
ecvt(将浮点型数转换成字符串,取四舍五入)
fcvt(将浮点型数转换为字符串,取四舍五入)
gcvt(将浮点型数转换为字符串,取四舍五入)
strtod(将字符串转换成浮点型数)
strtol(将字符串转换成长整型数)
strtoul(将字符串转换成无符号长整型数)
toascii(将整型数转换成合法的ASCII码字符)
tolower(将大写字母转换成小写字母)
toupper(将小写字母转换成大写字母)
第3章 内存配置函数
alloca(配置内存空间)
brk(改变数据字节的范围)
calloc(配置内存空间)
free(释放原先配置的内存)
getpagesize(取得内存分页大小)
malloc(配置内存空间)
mmap(建立内存映射)
munmap(解除内存映射)
realloc(更改己配置的内存空间)
sbrk(增加程序可用的数据空间)
第4章 时间函数
asctime(将时间和日期以字符串格式表示)
clock(取得进程占用CPU的大约时间)
ctime(将时间和日期以字符串格式表示)
difftime(计算时间差距)
ftime(取得目前的时间和日期)
gettimeofday(取得目前的时间)
gmtime(取得目前的时间和日期)
localtime(取得当地目前的时间和日期)
mktime(将时间结构数据转换成经过的秒数)
settimeofday(设置目前的时间)
strftime(格式化日期和时间)
time(取得目前的时间)
tzset(设置时区以供时间转换)
第5章 字符串处理函数
bcmp(比较内存内容)
bcopy(拷贝内存内容)
bzero(将一段内存内容全清为零)
ffs(在一整型数中查找第一个值为真的位)
index(查找字符串中第一个出现的指定字符)
memccpy(拷贝内存内容)
memchr(在某一内存范围中查找一特定字符)
memcmp(比较内存内容)
memcpy(拷贝内存内容)
memfrob(对内存区域编码)
memmove(拷贝内存内容)
memset(将一段内存空间填入某值)
rindex(查找字符串中最后一个出现的指定字符)
strcasecmp(忽略大小写比较字符串)
strcat(连接两字符串)
strchr(查找字符串中第一个出现的指定字符)
strcmp(比较字符串)
strcoll(采用目前区域的字符排列次序来比较字符串)
strcpy(拷贝字符串)
strcspn(返回字符串中连续不含指定字符串内容的字符数)
strdup(复制字符串)
strfry(随机重组字符串内的字符)
strlen(返回字符串长度)
strncasecmp(忽略大小写比较字符串)
strncat(连接两字符串)
strncmp(比较字符串)
strncpy(拷贝字符串)
strpbrk(查找字符串中第一个出现的指定字符)
strrchr(查找字符串中最后一个出现的指定字符)
strspn(返回字符串中连续不合指定字符串内容的字符数)
strstr(在一字符串中查找指定的字符串)
strtok(分割字符串)
第6章 数学计算函数
abs(计算整型数的绝对值)
acos(取反余弦函数值)
asin(取反正弦函数值)
atan(取反正切函数值)
atan2(取得反正切函数值)
ceil(取不小于参数的最小整型数)
cos(取余弦函数值)
cosh(取双曲线余弦函数值)
div(取得两整型数相除后的商及余数)
exp(计算指数)
fabs(计算浮点型数的绝对值)
frexp(将浮点型数分为底数与指数)
hypot(计算直角三角形斜边长)
labs(计算长整型数的绝对值)
ldexp(计算2的次方值)
ldiv(取得两长整数相除后的商及余数)
log(计算以e为底的对数值)
log10(计算以10为底的对数值)
modf(将浮点型数分解成整数与小数)
pow(计算次方值)
sin(取正弦函数值)
sinh(取双曲线正弦函数值)
sqrt(计算平方根值)
tan(取正切函数值)
tanh(取双曲线正切函数值)
第7章 用户和组函数
cuserid(取得用户帐号名称)
endgrent(关闭组文件)
endpwent(关闭密码文件)
endutent(关闭utmp文件)
fgetgrent(从指定的文件来读取组格式)
fgetpwent(从指定的文件来读取密码格式)
getegid(取得有效的组识别码)
geteuid(取得有效的用户识别码)
getgid(取得真实的组识别码)
getgrent(从组文件文件中取得帐号的数据)
getgrgid(从组文件中取得指定gid的数据)
getgrnan(从组文件中取得指定组的数据)
getgroups(取得组代码)
getlogin(取得登录的用户帐号名称)
getpw(取得指定用户的密码文件数据)
getpwent(从密码文件中取得帐号的数据)
getpwnam(从密码文件中取得指定帐号的数据)
getpwuid(从密码文件中取得指定uid的数据)
getuid(取得真实的用户识别码)
getutent(从utmp文件中取得帐号登录数据)
getutid(从utmp文件中查找特定的记录)
getutline(从utmp文件中查找特定的记录)
initgroups(初始化组清单)
logwtmp(将一登录数据记录到wtmp文件)
pututline(将utmp记录写入文件)
setegid(设置有效的组识别码)
seteuid(设置有效的用户识别码)
setfsgid(设置文件系统的组识别码)
setfsuid(设置文件系统的用户识别码)
setgid(设置真实的组识别码)
setgrent(从头读取组文件中的组数据)
setgroups(设置组代码)
setpwent(从头读取密码文件中的帐号数据)
setregid(设置真实及有效的组识别码)
setreuid(设置真实及有效的用户识别码)
setuid(设置真实的用户识别码)
setutent(从头读取utmp/文件中的登录数据)
updwtmp(将一登录数据记录到wtmp文件)
utmpname(设置utmp文件路径)
第8章 数据加密函数
crypt(将密码或数据编码)
getpass(取得一密码输入)
第9章 数据结构函数
bsearch(二元搜索)
hcreate(建立哈希表)
hdestory(删除哈希表)
hsearch(哈希表搜索)
insque(加入一项目至队列中)
lfind(线性搜索)
lsearch(线性搜索)
qsort(利用快速排序法排列数组)
rremque(从队列中删除一项目)
tdelete(从二叉树中删除数据)
tfind(搜索二叉树)
tsearch(二叉树)
twalk(走访二叉树)
第10章 随机数函数
drand48(产生一个正的浮点型随机数)
erand48(产生一个正的浮点型随机数)
initstate(建立随机数状态数组)
jrand48(产生一个长整型数随机数)
lcong48(设置48位运算的随机数种子)
lrand48(产生一个正的长整型随机数)
mrand48(产生一个长整型随机数)
nrand48(产生一个正的长整型随机数)
rand(产生随机数)
random(产生随机数)
seed48(设置48位运算的随机数种子)
setstate(建立随机数状态数组)
srand(设置随机数种子)
srand48(设置48位运算的随机数种子)
srandom(设置随机数种子)
第11章 初级I/O函数
close(关闭文件)
creat(建立文件)
dup(复制文件描述词)
dup2(复制文件描述词)
fcntl(文件描述词操作)
flock(锁定文件或解除锁定)
fsync(将缓冲区数据写回磁盘)
lseek(移动文件的读写位置)
mkstemp(建立唯一的临时文件)
open(打开文件)
read(由己打开的文件读取数据)
sync(将缓冲区数据写回磁盘)
write(将数据写入已打开的文件内)
第12章 标准I/O函数
clearerr(清除文件流的错误旗标)
fclose(关闭文件)
fdopen(将文件描述词转为文件指针)
feof(检查文件流是否读到了文件尾)
fflush(更新缓冲区)
fgetc(由文件中读取一个字符)
fgetpos(取得文件流的读取位置)
fgets(由文件中读取一字符串)
fileno(返回文件流所使用的文件描述词)
fopen(打开文件)
fputc(将一指定字符写入文件流中)
fputs(将一指定的字符串写入文件内)
fread(从文件流读取数据)
freopen(打开文件)
fseek(移动文件流的读写位置)
fsetpos(移动文件流的读写位置)
ftell(取得文件流的读取位置)
fwrite(将数据写至文件流)
getc(由文件中读取一个字符)
getchar(由标准输入设备内读进一字符)
gets(由标准输入设备内读进一字符串)
mktemp(产生唯一的临时文件文件名)
putc(将一指定字符写入文件中)
putchar(将指定的字符写到标准输出设备)
puts(将指定的字符串写到标准输出设备)
rewind(重设文件流的读写位置为文件开头)
setbuf(设置文件流的缓冲区)
setbuffer(设置文件流的缓冲区)
setlinebuf(设置文件流为线性缓冲区)
setvbuf(设置文件流的缓冲区)
tmpfile(建立临时文件)
ungetc(将一指定字符写回文件流中)
第13章 进程及流程控制
abort(以异常方式结束进程)
assert(若测试的条件不成立则终止进程)
atexit(设置程序正常结束前调用的函数)
execl(执行文件)
execle(执行文件)
execlp(从PATH环境变量中查找文件并执行)
execv(执行文件)
execve(执行文件)
execvp(执行文件)
exit(正常结束进程)
_exit(结束进程执行)
fork(建立一个新的进程)
getpgid(取得进程组识别码)
getpgrp(取得进程组识别码)
getpid(取得进程识别码)
getppid(取得父进程的进程识别码)
getpriority(取得程序进程执行优先权)
longjmp(跳转到原先setjmp保存的堆栈环境)
nice(改变进程优先顺序)
on_exit(设置程序正常结束前调用的函数)
ptrace(进程追踪)
setjmp(保存目前堆栈环境)
setpgid(设置进程组识别码)
setpgrp(设置进程组识别码)
setpriority(设置程序进程执行优先权)
siglongjmp(跳转到原先sigsetjmp保存的堆栈环境)
sigsetjmp(保存目前堆栈环境)
system(执行shell命令)
wait(等待子进程中断或结束)
waitpid(等待子进程中断或结束)
第14章 格式化输人输出函数
fprintf(格式化输出数据至文件)
fscanf(格式化字符串输入)
printf(格式化输出数据)
scanf(格式化字符串输入)
snprintf(格式化字符串复制)
sprintf(格式化字符串复制)
sscanf(格式化字符串输入)
vfprintf(格式化输出数据至文件)
vfcanf(格式化字符串输入)
vprintf(格式化输出数据)
vscanf(格式化字符串输入)
vsnprintf(格式化字符串复制)
vsprintf(格式化字符串复制)
vsscanf(格式化字符串输入)
第15章 文件及目录函数
access(判断是否具有存取文件的权限)
alphasort(依字母顺序排序目录结构)
chdir(改变当前的工作目录)
chmod(改变文件的权限)
chown(改变文件的所有者)
chroot(改变根目录)
closedir(关闭目录)
fchdir(改变当前的工作目录)
fchmod(改变文件的权限)
fchown(改变文件的所有者)
fstat(由文件描述词取得文件状态)
ftruncate(改变文件大小)
ftw(遍历目录树)
get_current_dir_name(取得当前的工作目录)
getcwd(取得当前的工作目录)
getwd(取得当前的工作目录)
lchown(改变文件的所有者)
link(建立文件连接)
lstat(由文件描述词取得文件状态)
nftw(遍历目录树)
opendir(打开目录)
readdir(读取目录)
readlink(取得符号连接所指的文件)
realpath(将相对目录路径转换成绝对路径)
remove(删除文件)
rename(更改文件名称或位置)
rewinddir(重设读取目录的位置为开头位置)
scandir(读取特定的目录数据)
seekdir(设置下回读取目录的位置)
stat(取得文件状态)
symlink(建立文件符号连接)
telldir(取得目录流的读取位置)
truncate(改变文件大小)
umask(设置建立新文件时的权限遮罩)
unlink(删除文件)
utime(修改文件的存取时间和更改时间)
utimes(修改文件的存取时间和更改时间)
第16章 信号函数
alarm(设置信号传送闹钟)
kill(传送信号给指定的进程)
pause(让进程暂停直到信号出现)
psignal(列出信号描述和指定字符串)
raise(传送信号给目前的进程)
sigaction(查询或设置信号处理方式)
sigaddset(增加一个信号至信号集)
sigdelset(从信号集里删除一个信号)
sigemptyset(初始化信号集)
sigfillset(将所有信号加入至信号集)
sigismember(测试某个信号是否已加入至信号集里)
signal(设置信号处理方式)
sigpause(暂停直到信号到来)
sigpending(查询被搁置的信号)
sigprocmask(查询或设置信号遮罩)
sigsuspend(暂停直到信号到来)
sleep(让进程暂停执行一段时间)
isdigit(测试字符是否为阿拉伯数字)
第17章 错误处理函数
ferror(检查文件流是否有错误发生)
perror(打印出错误原因信息字符串)
streror(返回错误原因的描述字符串)
第18章 管道相关函数
mkfifo(建立具名管道)
pclose(关闭管道I/O)
pipe(建立管道)
popen(建立管道I/O)
第19章 Socket相关函数
accept(接受socket连线)
bind(对socket定位)
connect(建立socket连线)
endprotoent(结束网络协议数据的读取)
endservent(结束网络服务数据的读取)
gethostbyaddr(由IP地址取得网络数据)
gethostbyname(由主机名称取得网络数据)
getprotobyname(由网络协议名称取得协议数据)
getprotobynumber(由网络协议编号取得协议数据)
getprotoent(取得网络协议数据)
getservbyname(依名称取得网络服务的数据)
getservbyport(依port号码取得网络服务的数据)
getservent(取得主机网络服务的数据)
getsockopt(取得socket状态)
herror(打印出网络错误原因信息字符串)
hstrerror(返回网络错误原因的描述字符串)
htonl(将32位主机字符顺序转换成网络字符顺序)
htons(将16位主机字符顺序转换成网络字符顺序)
inet_addr(将网络地址转成网络二进制的数字)
inet_aton(将网络地址转成网络二进制的数字)
inet_ntoa(将网络二进制的数字转换成网络地址)
listen(等待连接)
ntohl(将32位网络字符顺序转换成主机字符顺序)
ntohs(将16位网络字符顺序转换成主机字符顺序)
recv(经socket接收数据)
recvfrom(经socket接收数据)
recvmsg(经socket接收数据)
send(经socket传送数据)
sendmsg(经socket传送数据)
sendto(经socket传送数据)
setprotoent(打开网络协议的数据文件)
setservent(打开主机网络服务的数据文件)
setsockopt(设置socket状态)
shutdown(终止socket通信)
socket(建立一个socket通信)
第20章 进程通信(IPC)函数
ftok(将文件路径和计划代号转为System VIPCkey)
msgctl(控制信息队列的运作)
msgget(建立信息队列)
msgrcv(从信息队列读取信息)
msgsnd(将信息送入信息队列)
semctl(控制信号队列的操作)
semget(配置信号队列)
semop(信号处理)
shmat(attach共享内存)
shmctl(控制共享内存的操作)
shmdt(detach共享内存)
shmget(配置共享内存)
第21章 记录函数
closelog(关闭信息记录)
openlog(准备做信息记录)
syslog(将信息记录至系统日志文件)
第22章 环境变量函数
getenv(取得环境变量内容)
putenv(改变或增加环境变量)
setenv(改变或增加环境变量)
unsetenv(清除环境变量内容)
第23章 正则表达式
regcomp(编译正则表达式字符串)
regerror(取得正则搜索的错误原因)
regexec(进行正则表达式的搜索)
regfree(释放正则表达式使用的内存)
第24章 动态函数
dlclose(关闭动态函数库文件)
dlerror(动态函数错误处理)
dlopen(打开动态函数库文件)
dlsym(从共享对象中搜索动态函数)
第25章 其他函数
getopt(分析命令行参数)
isatty(判断文件描述词是否是为终端机)
select(I/O多工机制)
ttyname(返回一终端机名称)
附录A 编译程序-gcc
附录B 宏与函数
附录C 不定参数
附录D Linux信号列表
附录E 常见错误代码及原因

书页

一不小心,就看见了书页间异样的光彩。。。。只可惜我拍不出来

没话找话说

不得不承认,一些大方面–哲学?尽管我不想用这个词–总在影响我生活中的小方面。

比如骑自行车,每当我想起每出行一次都要骑回头路时,就觉得简直难以容忍。而这种感觉在当天骑来回的那种路程上尤为强烈。我觉得自行车的乐趣在于路的无限延伸,在于真的可以切身体会到行者无疆的无拘无束。在写字楼的日子长了了,久而久之,竟然失去了好奇心。楼上是什么样的?没人会知道,更没人想关心。城市住久了,久而久之,竟忘记了郊外的风物。即便是搭着飞机,乘着火车,也只能是在城市与城市之间移来移去。有谁曾记得城市不过是个人群聚居的地方呢?又还有多少人想念无人的野外或是陌生的角落呢?自行车就会给我这样的快乐。只可惜那后一半的逆过程太煞风景。还是骑远道的好啊。。。

比如Blog,前段时间给自己立了规矩,不写消极的内容。可问题在于,恰恰是消极的时候会想写点什么。嗯……这就对了,我不想让自己在这种时候乱说话。雪莱在诗里叹道,”我们最美的歌曲,是最能倾诉哀思的曲调”。冯至也在诘问,”我怎样才能谱出,正午的一套大曲–“……”欢腾腾,都是爱情,欢腾腾,都是生命!”这种的确是人的劣根性啊。。。我要顽强!我要战胜!

比如读书,这问题倒真是第一回遇上。读了一本心理学方面的书籍,前后让我三个月处于低谷。并非上面有什么惊世骇俗的言语,只是读着读着,我发现自己世界观的一部分面临着挑战。思想上的颠覆啊。。。不是每个人都能幸存的。我活过来了,嗯!! ^_^

开启心智大门的书籍哪~我疏远你们了
善良可亲的老朋友们哪~我想念你们了
那颗永远跳动着的心哪~它又开始唱歌了。唱罢~我的心!

疏远的,请原谅我吧!想念的,你们都还好么?唱歌的,请继续吧~

晚安~ amen

职业的分类

小的时候有一个困惑:不知道问题该去哪里寻求答案。

在没有互联网的时候,在没有咨询这一概念的时候,我实在想不出来该去哪里寻找一份专业而又能让人信赖的答案。

职业曾经就是这样一个问题。世界上有如此之多的人,依靠各式各样的职业活着;另一方面,却完全没有人对各式各样的职业做一个全景式的介绍,难道不奇怪么?

当然,也许这样的地方一直都有,只是我不知道罢了。比如今天就发现了一个

http://www.bls.gov/k12/

美国劳工部的网站,一个简单的职业指引。可以依据个人兴趣选择12个大类,每个大的类别里面又区分的5-6个职业类型。每一种职业类型,网页分布提供了What is this job like?How do you get ready?How much does this job pay?How many jobs are there?What about the future?Are there other jobs like this?Where can you find more information?等几方面信息。当然,都是美国的信息。-_-b

补充:

Occupational Outlook Handbook (OOH) 更详细的手册
http://www.bls.gov/oco/home.htm
Career Voyages
http://www.careervoyages.gov/

秋天、十一、毕业前

也许是又看到了秋天?也许是十一长假的突然到来?也许是这熟悉的招聘会场面提醒了自己毕业的临近?也许。。。也许吧。十一之前的这个夜晚,翻起大学毕业时候的email信件,心里竟有一种莫名的伤感。
就像一篇南大毕业生的校园回忆文章里所说,”南京的秋天几乎是在瞬间就到了”,当”树都落叶了,只剩下光秃秃的树干。树下的长草也都枯黄了”,”秋风一起,看着它们在风中摇曳”,”你会感到你的心也在凋零”。这真真就是南京的秋天呵。。。一夜之间的萧瑟,让人感到初冬的寒意。在这样的早晨,你轻轻打着哆嗦。身体的微微热力,在这四面八方吹来的寒风一点一滴的消逝。这寒冷,让你意识突然到孤零零的自己,还有那随之而来的不可救药的孤独。最要命的还是秋天的雨,滴滴答答,敲打在落叶上,敲打在屋里屋外人们的心上,消耗掉夏天残存的最后的热情。可我还是愿意在傍晚出去走走,当夜幕降临,黄色的高压纳灯亮起,被雨水淋湿的马路像是涂了一层油。一片片梧桐树叶平展的贴在地上,被过往的车灯一照,反射出奇异的光芒。这样的道路依旧是寒冷、萧瑟、孤独的,尤其是当你看到匆匆赶回家去的行人的时候。万家灯火,也会让人意志消沉。可你偏偏又爱上了这大街,无处可去却也不想离去。是呵。。。这样的让人心碎的美丽属于你,难道你就不属于它了么?
茨威格在他自杀前的遗信中写道”年过花甲,要想再一次开始全新的生活,这需要一种非凡的力量,而我的力量在无家可归的漫长流浪岁月中业已消耗殆尽。这样,我认为最好是及时地和以正当的态度来结束这个生命”。南京的秋天就是这样一个可以将心力消耗殆尽的季节。。。

可不知怎地,在北京秋高气爽的怡人季节里,我还是会想起南京。躺在松软的草地上,仰望着高缈的天空。这个时候,只需要一片树叶,一片透亮的梧桐树叶就够了。。。

Debian笔记(5) - User Mode Linux

make-kpkg –append-to-version=-skas –added-patches=skas kernel_image modules_image –initrd

/usr/sbin/chroot sid-root /usr/bin/env -i HOME=/root TERM=”$TERM=”$TERM” PS1=’\u:\w\$ ‘ PATH=/bin:/usr/bin:/sbin:/usr/sbin /bin/bash –login +h

apt-get install bridge-utils uml-utilities screen

adduser user1 uml-net
adduser user2 uml-net
chgrp uml-net /dev/net/tun
chmod 660 /dev/net/tun

apt-get install user-mode-linux

Package: user-mode-linux
Priority: extra
Section: misc
Installed-Size: 61196
Maintainer: User Mode Linux Maintainers <[email protected]>
Architecture: i386
Version: 2.6.17-1um-2
Depends: uml-utilities (>= 20040406-1)
Suggests: x-terminal-emulator, rootstrap, user-mode-linux-doc, slirp, kernel-patch-skas
Filename: pool/main/u/user-mode-linux/user-mode-linux_2.6.17-1um-2_i386.deb
Size: 24933278

mv rootfs.i686.ext2 root_fs

sudo ~/sid-root/usr/bin/linux.uml con1=pts umid=woody
sudo screen /dev/pts/3

linux rootfstype=hostfs rootflags=/ rw mem=48M init=/bin/sh LD_ASSUME_KERNEL=2.4.1 quiet

Links:

http://www.monkeyhelper.com/2006/06/installing_user_mode_linux_on.html
http://uml.nagafix.co.uk/
http://tavi.debian.org.tw/UserModeLinux

http://www.landley.net/code/UML.html

Debian笔记(4) - 内核编译

传入编译所需变量
% MAKEFLAGS=”CC=gcc-3.2″ make-kpkg …

/etc/mkinitrd/mkinitrd.conf中更改initrd使用cramfs之外的其他fs
$Get_Root make-kpkg –revision=custom.1.0 kernel_image
$Get_Root make-kpkg –initrd –revision=custom.1.0 kernel_image

make-kpkg clean
make-kpkg -rootcmd fakeroot –append-to-version -custom.${VER} \
–revision custom.${VER} kernel_image modules-image

To create a source or header package, run
% make-kpkg clean
% $Get_Root make-kpkg –revision=custom.1.0 kernel_source
% $Get_Root make-kpkg –revision=custom.1.0 kernel_headers

Similarly, the documentation package is built by:
% $Get_Root make-kpkg –revision=custom.1.0 kernel_doc

Or if you want to generate the whole package,
% $Get_Root make-kpkg –revision=custom.1.0 \
–pgpsign=”Your pgp ID” buildpackage
Note that this needs a pgp key.
(Get_Root is whatever you need to become root — fakeroot or
sudo are examples that come to mind).
Here is a nice, practical example:
% make-kpkg -rfakeroot –append-to-version $(hostname) \
–revision $(date +’%Y%m%d’)

/etc/kernel-pkg.conf

摘自:
http://debian.linuxsir.org/book/reference/lyoo/ch-kernel.html
/usr/share/doc/kernel-package/README.gz

Debian笔记(3) - chroot环境

main # cd / ; mkdir /sid-root
main # debootstrap sid /sid-root http://ftp.debian.org/debian/
… watch it download the whole system
main # echo “proc-sid /sid-root/proc proc none 0 0” >> /etc/fstab
main # mount proc-sid /sid-root/proc -t proc
main # cp /etc/hosts /sid-root/etc/hosts
main # chroot /sid-root /bin/bash
chroot # apt-setup # set-up /etc/apt/sources.list
chroot # vi /etc/apt/sources.list # point the source to unstable
chroot # dselect # you may use aptitude, install mc and vim 🙂

从sarge安装chroot环境中的sid时
debootstrap –exclude=base-config,ipchains,libnewt0.51,libsigc++-1.2-5c102,slang1a-utf8 sid /sid-root http://debian.cn99.com/debian/
最终在如下步骤失败,尚未找到解决方案
I: Extracting libstdc++5…
mount: error while loading shared libraries: libdevmapper.so.1.02: cannot open shared object file: No such file or directory
W: Failure trying to run: chroot /home/qiuyu/sid-root mount -t proc proc /proc
umount: /home/qiuyu/sid-root/dev/pts: not mounted
umount: /home/qiuyu/sid-root/dev/shm: not mounted
umount: /home/qiuyu/sid-root/proc/bus/usb: not found
umount: /home/qiuyu/sid-root/proc: not mounted

http://www.backports.org/更新debootstrap版本后继续
参考:
http://www.debianhelp.org/node/1169
http://forums.debian.net/viewtopic.php?t=7840&sid=ce51f774b45788eb465ce71f771f1e90

sarge安装另一个chroot环境的sarge没有问题
可通过chroot sarge-root /usr/bin/env -i HOME=/root TERM=”$TERM” PS1=’\u:\w\$ ‘ PATH=/bin:/usr/bin:/sbin:/usr/sbin /bin/bash –login +h 登录消除环境变量影响

[转] 顶尖交易员的交易思路

顶尖交易员的交易思路

1. 安心:

每进行一笔交易,你都应该清楚建立部位的理由。你应该充分了解自己预期的发展,这样你才能对于该交易与部位觉得舒适。如果你觉得不安心,就不要进行交易。交易计划是安心进行交易的必要前提,这是最根本的交易观念。

2. 计划:

顶尖交易员通常都会挑选交易的”扳机与标的”。他们不会临时起意。计划绝对是交易成功的关键因子,即使是场内交易员需要立即针对行情反应,还是需要有”如果…….就…….”的明确情节分析。他们事先考虑所有的可能发展与对策。所以,交易计划可以降低压力,提高信心,让交易员觉得放心,最主要的效益是清晰的思绪与自律规范。

3. 体会:

没有充分的理由决不可买(买入时应该充满自信而不是犹犹豫豫),买入价位应该是配合大波段低点而决定,除非经验老到,事先做好计划是非常必要的。

风险

1. 耐心:

顶尖交易员都厌恶风险,他们耐心等待最有利的风险/报酬关系。如同比尔.利普舒茨说的,”如果交易员能够减少50%的交易次数,通常都可以赚更多的钱”。

优秀交易员都很有耐心,因为他们不担心错失机会。这是一种非常重要的心态—–机会永远都存在。

2. 资金:

交易资金的来源可能影响操作风格,尤其是在承担风险的程度上。

3. 运气:

顶尖交易员都会把自己摆在一个能够接受好运的位置。即尽量提高自己的胜算。戴维.凯特与比尔.利普舒茨都强调一点,每年只有少数几笔交易能够创造重大获利。当他们感觉某个部位具有极高的获利潜能,就会”拉起幸运的风帆”,扩大部位规模,不要过早结束部位。在这种情况下,他们有胆量押下庞大的资金。

4. 渐进的交易:

顶尖交易员采用渐进的交易手法,慢慢累积获利——不要贸然承担风险,不要尝试挥出全垒打。他们理解,明天仍然能够进场交易的重要性,远超过今天的获利。因此,他们绝对不允许连续亏损迫使自己退出。

5. 舒适界限:

顶尖交易员会把风险设定在自己的”舒适界限”内。如果发现风险太高,他们会缩小部位规模或采用价差交易。惟有留在舒适界限内,思绪才会清晰,决策才会客观,交易绩效也才会因此而提升。

6. 体会

买入价与止损价的差距与操作者的水平成正比(即水平越高,止损位置越是舒适),关键是买入价位最好是当日见分晓的”胜负手”,买入后收盘就应该知道是赢定了还是判断错误及早出局。做法是没有90%的胜算决不进场,潜在空间与潜在最大损失比至少为3:1。短线没有空间,中线没有较大的理论空间就是刀口舔血,因为要考虑到提前出局。(不可能每次都卖在最高价)

损失

1. 承认错误:

顶尖交易员不怕承认错误。承认错误无损于自我或自尊。他们知道,判断错误是交易过程中必然发生的现象。通过认赔而重新取得清晰的思考与专注能力。事实上许多受伤者都提到如何从亏损中学习。菲尔.弗林甚至说”学习如何热爱小额亏损”。

2. 出场:

顶尖交易员会预先规划他们准备接受的损失,他们有坚决的自律在预定的停损价位出场。对于伯纳德.奥佩帝特来说,如果预期发生的事件没有发生,或预期发生的事情已经发生,他就出场。对于比尔.利普舒茨来说,如果损失超过他愿意接受的程度,他就出场。换言之,出场位置取决于某个痛苦水准,一旦痛苦程度超过这个水准,也代表自己超出舒适界限。

3. 体会:

每次交易最大损失我定为x%,即只要价跌破买入价的x%以下,除非是极有把握的大底部,都会认赔出来。因为买入价位非常讲究,买入要求当日决不能被套(较高的成功率),因此有这个机会及早的认赔出局。买入价位跌下x%已经是非常的失败,通常应该是买入即涨,或买入当日不套。

从下至上的分析。

*了解所有的玩家,留意他们的言行。所谓玩家,是指具备不可忽视的影响力的人。

*了解他们为了本身的利益,应该说些什么话,或者他们说的话可能带来什么利益。动机是什么?隐藏的议题是什么?只要涉及利益关系,任何谈话都不可轻信。

*对于每一个利益集团,他们希望发生的最佳,次佳与第三种结果是什么 ?

*每个利益集团操纵事件发展的着力点与影响力在哪里。

*每个集团对于每个结果反应将如何?如果某人这样做了,其他人的反应和后续的发展可能如何?

动态分析

*任何事件背后都必定有一个故事,你必须了解这个故事。

*必须了解对手的想法,以及我与他的想法差异究竟在哪?

对待持仓部位

*保持开放的心态与客观的立场来对待未平仓的部位。

*当你尝试用客观的角度评估未平仓时,情绪总会产生干扰。

*对于一个优秀的交易员来说,如何控制”心”的能力,其重要性远超过如何运用”脑”。

*欺骗自己是在市场上发生亏损的主要理由。

如何面对损失和处理获利

*承受压力和恐惧,这是很重要的经验。

*面对一个新的价格,你问自己一个问题:假设还没有建立仓位,是否愿意在这个价格买进?答案是否定的话,那你就卖出。

*迅速认赔而让获利部位继续发展。

*建立仓位的根据是否正确。

资金管理

*任何单笔交易中,你能够承担的最大风险金额是多少?

*一旦建立仓位后,我最多准备承担多大的百分比的损失?

分散投资的策略

*如果个别部位都承担相同的市场风险,就不能提供分散投资的效益。

*个别部位的规模必须类似,如果九个部位规模都是100美元,第十个是10000美元,这类的分散投资没有太大的意义。

*个别部位的价格波动率应该类似。

交易员的特质

*热忱。必须了解市场为什么会出现这种情况,必须判断谁买进而谁卖出。他们的动机何在?无时无刻追求这些问题的答案,必须具备非凡的耐心,精力与欲望。

*勇气。如果你还有一点本事的话,任何差错都是本身的问题。持有一种与众不同的看法,也需要勇气。但看法不同,并不代表一定能够赚钱。最佳的交易机会必定无法得到普遍的认同。

*开放的心胸。

*自律。

资金

*交易的资金来源可能影响操作风格与绩效.

*资金管理是一场非常复杂的游戏,经常违背常理的判断

个人交易者的优势

*不需要勉强进行交易.务必了解场外观望的效益,如果没有适当的行情,如果没有胜算较高的机会,不要勉强进场.整个交易游戏的关键就是持续掌握优势.

*决策控制程序.

*资讯.千万不要让资讯方便性成为一项负数.所有的资讯都必须经过管理,否则没有太大的意义.

*弹性与敏锐性.

*压力.

专注与热忱

*如果交易的动机在于金钱,方向显然错了.正确的动机应该是如何做对、做正确。

*很多人没有办法维持长期的用功,因为他们不愿意投资时间. 懒惰

*面对生活中的一切,你必须有高度的组织能力,能够评估事情的优先顺序,如此才能保持专注. 主次

交易员的特质

*承受损失的自信,克服自我而承认错误的勇气.

*所谓的勇气,自信与自我.对象不是其他人,而是必须能够经常承认错误的心理特质.

*没有一面倒的绝对特质,每项特质都需要通过另一项辅助特质来维持均衡.

*内省与自我评估都是自我的一部分.

运气

*市场上有许多无能为力或无可奈何的事情,完全超过交易员的控制范围.交易员能够控制的仅限于明智的分析并下注.所谓明智,就是掌握胜算或提高有利结果的发生机率.

*在交易行业中,运气永远是一个重要的变量.

恐惧与忧虑

*交易者不可以因为自信而对损失产生麻痹的感觉,必须感受损失的痛苦,但不可以让忧虑变成恐惧.

*不论个人的心理驱动因子如何,恐惧来自于你自己.

*经过反省之后,或许会得到一些有用的东西,但这并不代表交易是否赚钱,只表示处理恐惧的能力.

*纯粹的意志力可以克服任何的个性障碍.

资讯

*市场分析的难处之一,是当你取得某项资讯或判定某项事件最可能的发展结果之后,你必须决定市场将因此而产生什么反应.

*评估任何部位或潜在部位之前,务必掌握市场对于某项资讯的解释与反应.

*深入而多方面的沟通,是处理市场资讯,市场认知,市场感受与市场反应的重要部分.

*绝不可以让别人的分析结果来取代自己的观点,必须评估别人的分析.

评估获利潜能与潜在损失

*架构一项交易,除了尝试获利潜能之外,还必须考虑风险保障.

*关于报酬与风险,处理心态不应该对称.为了长期的成功,必须专注于亏损这方面的相关问题.

*必须知道准备损失的程度,绝对不允许自己被震荡走势使之提前出局,必须保持再度进场的能力.

*结束亏损的二个理由,一是如果预期之中应该发生的情节没有可能发生了.二是价格到了预定的停损水准.不论预期如何的正确,一旦发生,立即出场.

风险管理

*只要存在风险承担的行为,就有风险管理的必要,就有明确衡量风险的需要.

*一个交易员必须具备理想的心理结构,承担风险的能力,具备勇气,配合心理的稳定性.

*输赢的关键不在于最初如何建立一笔交易.

*一旦部位发生亏损,首要原则就是不能加码.

*不要尝试在二个完全不同的商品上建立对冲部位,因为他们的盈亏不能彼此冲销.

*最初的损失往往就是最小的损失,正确的做法就是应该直接出场.

循序渐进

*为了取得最佳的交易结果与长期的获利,应该通过循序渐进的方式交易.

*必须愿意停留在场外.

*不进行交易是一种自律精神—非常重要的规范.

断然认赔

*对于每个交易员来说,最困难的部分往往就是如何判断正确的出场时机.

*首先,行情如果发生不利的局面,部位出现亏损,这是第一警讯.其次是你容忍痛苦的程度,容忍损失的能耐.

*资金损失的痛苦和自尊受伤的痛苦.

*市场会反映任何的资讯,然后决定价格.

*市场是存在的事实,不是抗衡的对象.你不能采取主动,只能被动的反应.你不应该对抗市场或尝试击败他.存在这种心理,认赔或许就比较简单一点.

*你没有必要比市场精明,不要让自尊妨碍你及早认赔.


顶尖交易员的特质

*热爱自己的工作,交易是人生不可或缺的部分。

*如果被挡在门外,必须具备拿头撞门的勇气,否则不会成功。

是否需要可供模仿的良师

*场内最炙手可热的交易员,通常也是最差劲的师傅。

*交易的时间构架如何?喜欢短线交易还是长期投资?

*偏爱的交易工具是什么?

优秀交易员的素质

*具备自律精神,个性外向,竞争欲望强。

*自律精神就是做应该做的事情,在交易领域中,应该做的事往往也最难做。

*如果行情将持续不利于部位,就是差劲的交易的,不管成本多高,立即认赔。

*认赔不仅仅是在避免损失扩大,同时也是在避免交易心态的扭曲。一个部位的损失可能带来其他部位的损失或坐失良机。

*认赔的自律精神

*认赔相当于抛弃痛苦,如果还在照顾损失的伤口,势必无暇寻找其它的机会。

*从错误中学习,这是不可避免的过程,必须吸取教训,因为已经付出代价了。

*每个人对于损失都有一个容忍的极限,只要痛苦超过了限度,就不要坐在那儿傻傻的享受。

培养自律精神

*最困难的部分就是如何学习在大家面前认错,而且不觉得困扰。

*缺乏自律精神完全来自于放纵的心理。

*必须诚实的对待自己:你是否逃避现实而不愿意承认损失?是否希望走一条最不痛苦的路径?

认知交易风险

*建立任何部位都必须让自己明天能够继续交易,这点很重要,保留明天的交易实力,其重要性超过了今天能不能获利。

风险分析

*海底的沉船都有一堆航海图。

出场:扣动板机,正中目标。

*很多交易员非常注意如何选择交易对象,却忽略如何结束部位。

*进场的理由与出场的理由存在着密切的关联。

*一旦期待的事件发生之后,就结束部位。

*即使没有达到目标价位,扳机的概念也适用,但往往很困难,如果没有达到预期的价格,当然也会失望,可能会重新解释扳机,说服自己原先的扳机不适合了,或重新找新的扳机,总之。寻找种种理由,避免结束原先的部位,必须了解这种心理诱惑,想办法避开陷阱。

*扳机也是交易的一部分。

正确的心态

*缺乏责任心,就不能分析亏损发生的原因,更重要的是,没有机会改正错误,结果就因为一些相同的原因不断亏损。

耐心的等待与出场的勇气之间的差别

*从某种角度来说,交易成功只不过是掌握时效,换言之,进场与出场的时机。掌握时效是一种决策与判断

*希望在底部或头部一次搞定的人,总会拿到烫手山芋。

*知道其中的差别关键在于按照计划交易。

*坚持自己的交易计划,才能够逐步提升时机掌握的正确性. 做出较佳交易。