skyseeingliqy 发表于 2013-11-13 13:04:39

Windows 7 XP之类的操作系统是什么软件编译生成的呢?

有哪位大大知道么?

NEWT 发表于 2013-11-14 00:15:34

linux是gcc这我知道,windows就不太清楚了- -难道是VC的编译器么- -

gzhuli 发表于 2013-11-14 00:22:24

当然是M$自己的VC。

mahengyu 发表于 2013-11-14 08:00:39

zhe这是个问题,咱们电工很少有知道的吧

skyseeingliqy 发表于 2013-11-14 10:01:48

mahengyu 发表于 2013-11-14 08:00 static/image/common/back.gif
zhe这是个问题,咱们电工很少有知道的吧

只能坐等回复了

skyseeingliqy 发表于 2013-11-14 10:02:22

gzhuli 发表于 2013-11-14 00:22 static/image/common/back.gif
当然是M$自己的VC。

Are you sure ?

sgj245609615 发表于 2013-11-14 10:07:39

猜测   vc

lswood 发表于 2013-11-14 10:21:40

VC、GCC都可以,只要能生成PE结构的二进制可重定位执行映像即可。
GCC的话,需要Mingw中的GCC,可以将产生PE结构的可执行文件。
编译操作系统和应用程序没啥区别,就是操作系统的执行文件和应用程序被加载在内存中的位置不一样,每个应用都有一个进程空间,所有的应用都共用一个系统地址空间,系统代码就是被加载到系统地址空间而已。在VC的连接器有很多选项,可以指定入口地址,可以指定加载地址,可以指定是否能重定位(是否生成PE中的重定位表)等等,看MSDN即可。你可以先尝试编写个简单的虚拟驱动程序,被加载到系统地址空间,就是操作系统的一部分了。

skyseeingliqy 发表于 2013-11-14 10:37:47

lswood 发表于 2013-11-14 10:21 static/image/common/back.gif
VC、GCC都可以,只要能生成PE结构的二进制可重定位执行映像即可。
GCC的话,需要Mingw中的GCC,可以将产生P ...

呃,我就是突然想到的,实际上对编程还停留在 if else阶段。。。。。

lswood 发表于 2013-11-14 10:39:02

我曾经开发过一个类Windows结构的操作系统,API都和Windows相似,内核结构也和Windows相似(参考了当年泄露的Windows内核代码)。自己搭建的IDE,IDE可以集成微软的VC中的编译工具链,也可以集成GCC工具链。但是由于VC的调试器资料太少,所以只集成了GDB。IDE可以直接编译我的操作系统并产生一个虚拟软驱启动盘,软盘里有OS的可执行文件,加载到bochs或者VMware或者VirtualPC都可以启动。映射虚拟机的串口到一个网络端口或者windows的管道,OS底层的Stub就可以和IDE中的GDB进行调试通信,可以通过我的IDE进行源码级的OS源码调试,中断处理程序都可以被源码调试。
在我的IDE中,编译整个OS产生虚拟软驱镜像、启动虚拟机加载镜像调试都是一键化的,按F7、F5即可。

wtliu 发表于 2013-11-14 10:46:05

据称比尔盖茨最拿手的是Basic语言,他的DOS系统就有一版是Basic编程的。Windows这么庞大,是VB编的吗?

skyseeingliqy 发表于 2013-11-14 11:51:40

wtliu 发表于 2013-11-14 10:46 static/image/common/back.gif
据称比尔盖茨最拿手的是Basic语言,他的DOS系统就有一版是Basic编程的。Windows这么庞大,是VB编的吗? ...

坐等知情人士解答

Excellence 发表于 2013-11-14 11:55:09

VC吧。
编写估计用的语言:汇编,C,C++.

skyseeingliqy 发表于 2013-11-14 12:37:32

lswood 发表于 2013-11-14 10:39 static/image/common/back.gif
我曾经开发过一个类Windows结构的操作系统,API都和Windows相似,内核结构也和Windows相似(参考了当年泄露 ...

高端,仔细看了一遍,这个任务量应该巨大吧?

ttoto 发表于 2013-11-14 12:41:59

微软自己的编译器。

skyseeingliqy 发表于 2013-11-14 13:05:42

ttoto 发表于 2013-11-14 12:41 static/image/common/back.gif
微软自己的编译器。

呃,他自己的编译器是运行在什么系统上的呢?
搞到最后有点类似于先有鸡还是先有蛋了

lswood 发表于 2013-11-14 13:15:07

skyseeingliqy 发表于 2013-11-14 13:05 static/image/common/back.gif
呃,他自己的编译器是运行在什么系统上的呢?
搞到最后有点类似于先有鸡还是先有蛋了 ...

编译器运行在哪有关系吗?甚至可以运行在linux上编译windows内核,交叉编译。编译不过是把高级语言转换成机器码的过程,和先有鸡先有蛋不是一回事。

lswood 发表于 2013-11-14 13:19:38

wtliu 发表于 2013-11-14 10:46 static/image/common/back.gif
据称比尔盖茨最拿手的是Basic语言,他的DOS系统就有一版是Basic编程的。Windows这么庞大,是VB编的吗? ...

bill是靠basic赚了第一桶金,但绝对不是用basic编写的操作系统,basic是解释性语言,根本不能胜任编写os的任务。os一般是用绝大部分c和极少量汇编完成的。
顺便说一下,dos是bill花钱买来再卖给ibm的,起初不是bill开发的。

新路 发表于 2013-11-14 13:21:35

系统级别的基本都是C/C++

skyseeingliqy 发表于 2013-11-14 13:28:39

新路 发表于 2013-11-14 13:21 static/image/common/back.gif
系统级别的基本都是C/C++

哇,超人

skyseeingliqy 发表于 2013-11-14 13:29:42

lswood 发表于 2013-11-14 13:15 static/image/common/back.gif
编译器运行在哪有关系吗?甚至可以运行在linux上编译windows内核,交叉编译。编译不过是把高级语言转换成 ...

呃,我的意思是说编译器是怎么生成的。。。。

skyseeingliqy 发表于 2013-11-14 13:33:36

lswood 发表于 2013-11-14 13:19 static/image/common/back.gif
bill是靠basic赚了第一桶金,但绝对不是用basic编写的操作系统,basic是解释性语言,根本不能胜任编写os ...

送你个视频:http://v.youku.com/v_show/id_XMjA5Nzg0NjQ0.html

zhujinliang2124 发表于 2013-11-14 14:08:02

skyseeingliqy 发表于 2013-11-14 13:29 static/image/common/back.gif
呃,我的意思是说编译器是怎么生成的。。。。

编译器又不需要依赖目标操作系统,微软完全可以在DOS上开发win3.1,在win3.1上开发win95,在win95上开发win98,在win98上开发2k,xp,在xp上开发vista,win7。。。

而且一个操作系统,或者编译器,也分核心部分与辅助工具,可以用更底层的语言(比如汇编)开发完核心部分,然后开发人员就可以在这个裸系统上进行工作了

编译器也是编译器编译出来的,可以先弄一个基本可用的简单编译器,哪怕他效率低下,bug百出,但我们可以编译这个语言了,然后反过头来,用该语言重新写一个更好的编译器

再者C语言又不是第一个高级语言

lswood 发表于 2013-11-14 14:10:50

skyseeingliqy 发表于 2013-11-14 13:29 static/image/common/back.gif
呃,我的意思是说编译器是怎么生成的。。。。

编译器也是普通软件,在许久之前,人们用机器码直接编写程序运行,后来嫌机器码麻烦,用机器码编写了一个汇编器和连接器,开始用汇编语言。再后来,嫌汇编麻烦,用汇编写c编译器,c编译器可以把c语言翻译成汇编,再后来……
再后来各种编译器,各种高级语言

lryxr2507 发表于 2013-11-14 15:18:32

比较支持微软自己编译器的说法.

sunocean 发表于 2013-11-14 15:22:15

最早的编译器是机器码,后来是汇编,现在是汇编和C掺杂

WM_CH 发表于 2013-11-14 15:52:16


看了几条这位“海的女儿”大神的回复

我觉得他说得对!

cxlspp 发表于 2013-11-17 16:46:25

瞎猜的啊:
C或者C++

zf8848 发表于 2013-11-17 18:05:23

w2k 泄露的源代码表明 w2k 是在 MS NT DDK 之上编译的.

armstrong 发表于 2013-11-23 23:48:33

skyseeingliqy 发表于 2013-11-14 11:51
坐等知情人士解答

我估计应该是牛逼的易语言写的吧!

armstrong 发表于 2013-11-23 23:51:48

lswood是个大神!据我的见识,他说的都一致。另外,我信奉大神,{:lol:}

LCRPN 发表于 2013-11-24 00:13:40

操作系统中也只有很少的一些是编译生成的可执行文件吧,绝大部分是供这些可执行文件调用的数据文件。

skyseeingliqy 发表于 2013-11-24 12:08:40

lswood 发表于 2013-11-14 14:10
编译器也是普通软件,在许久之前,人们用机器码直接编写程序运行,后来嫌机器码麻烦,用机器码编写了一个 ...

哇,好多人崇拜您呢
页: [1]
查看完整版本: Windows 7 XP之类的操作系统是什么软件编译生成的呢?