x01.os.14: 时间都去哪儿了,x01.os.14:时间


时间都去哪儿了

老帕的“花儿为什么这样红”,三分钟引起六次欢呼,却败给了张碧晨。试想一下,如果是人气更高的陈冰,即使唱得和张碧晨一模一样,可能仍然不敌老帕,为什么张碧晨就能取胜呢?有这么个笑话:一人弹琴无人听,但一老妇人听得却潸然泪下。原来她的亡夫是弹棉花的!这虽是个笑话,却一语道破玄机。歌声动人,除了唱功,还有感情因素在里面。假如老帕的”花儿为什么这样红“是 1 分, 那么,张碧晨的父女情为 1 分, ”时间都去哪儿了“为 1 分。2 : 1, 张碧晨胜出也就理所当然了。

shell 的实现

在自己的 os 中运行自己的程序 echo,实现起来,比想象的要简单一些。这得益于文件系统的支持。准备工作,参见 x01.os.7。源代码,可到 x01.Lab.Download 中下载 x01.os.13.tar.gz。解压后由终端进入,make 后 bochs 可看到如下界面:

    

看来,echo 程序运行的还不错。首先,来看看 echo 程序,代码如下:

 1 #include "kstd.h"
 2 
 3 int main(int argc, char* argv[]) {
 4     int i;
 5     for (i = 1; i < argc; i++) {
 6         printf("%s%s", i == 1 ? "" : " ", argv[i]);
 7     }
 8     printf("\n");
 9     return 0;
10 }

非常简单,但这个 main 函数已经不是我们平时看到的那个了。它要在我们自己的 os 中运行,还需要 start.s 的帮忙,代码如下:

 1 extern main
 2 extern exit
 3 
 4 bits 32
 5 
 6 [section .text]
 7 global   _start
 8 
 9 _start:
10         push        eax
11         push        ecx
12         call            main
13         push        eax
14         call            exit
15         hlt

这个 _start 是关键,与 kernnel.s 中的一致。那么,怎么在我们自己的 os 中运行呢?在 mm.c => MM_Exec() 函数中,有这么一句:

g_ProcTable[src].Regs.eip = elf_hdr->e_entry;

echo 的 entry point,正是由这句完成交接。简单而言,就是 fork 一个 Init 的子进程,然后在 shell 中替换为我们自己的程序如 echo。

学习操作系统,如果脑海里有个内存布局,将会事半功倍。为了计算 10 进制到 16 进制的转换,顺手写了个 hex 程序。但要把它运行在自己的 os 中,却又有许多工作要做,作罢。

一个完善的 os,非一人之力,非一时之功。除了大家共同努力,难道还有别的办法吗?


时间都去哪儿了歌词

[ti:时间都去哪了]
[ar:王铮亮]
[al:老牛家的战争]
[by:匿名]
[offset:500]
[00:01.92]演唱:王铮亮
[00:02.45]作曲:陈曦
[00:02.89]作词:董冬冬
[00:04.76]门前老树长新芽
[00:09.68]院里枯木又开花
[00:14.67]半生存了多少话
[00:19.76]藏进了满头白发
[00:23.55]
[01:53.14][00:25.00]记忆中的小脚丫
[01:58.56][00:30.13]肉嘟嘟的小嘴巴
[02:03.66][00:34.66]一生把爱交给他
[02:08.51][00:39.79]只为那一声爸妈
[02:13.56][00:45.14]
[02:14.26][00:45.67]时间都去哪儿了
[02:19.16][00:50.30]还没好好感受年轻就老了
[02:24.84][00:56.15]生儿养女一辈子
[02:30.49][01:01.54]满脑子都是孩子哭了笑了
[02:34.47][01:05.51]
[02:34.75][01:05.94]时间都去哪儿了
[02:39.49][01:10.76]还没好好看看你眼睛就花了
[02:45.25][01:16.79]柴米油盐半辈子
[02:50.75][01:22.37]转眼就只剩下满脸的皱纹了
 

时间都去哪儿了歌词是什

时间都去哪了
演唱:王铮亮
门前老树长新芽
院里枯木又开花
半生存了好多话
藏进了满头白发
记忆中的小脚丫
肉嘟嘟的小嘴巴
一生把爱交给他
只为那一声爸妈
时间都去哪儿了
还没好好感受年轻就老了
生儿养女 一辈子
满脑子都是孩子哭了笑了
时间都去哪儿了
还没好好看看你眼睛就花了
柴米油盐 半辈子
转眼就只剩下满脸的皱纹了
记忆中的小脚丫
肉嘟嘟的小嘴巴
一生把爱交给他
只为那一声爸妈
时间都去哪儿了
还没好好感受年轻就老了
生儿养女 一辈子
满脑子都是孩子哭了笑了
时间都去哪儿了
还没好好看看你眼睛就花了
柴米油盐 半辈子
转眼就只剩下满脸的皱纹了
 

相关内容