升级与兼容性的问题。
版面规则
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
-
- 帖子: 67
- 注册时间: 2006-07-18 16:15
升级与兼容性的问题。
很困惑啊。。。。
WINDOWS下的应用程序在这方面表现还可以,毕竟没有source啊。。2000-> xp ->2003基本不会出太大的问题,微软提供稳定的API和不断完善的实现,还有com/ole等二进制重用的组件模型,应用程序开发者只要调用就够了。
linux下每次升级kernel,发行版的应用程序都重新编译(各个应用还有升级),这样似乎很变态啊。。。。。难道就没有二进制重用的机制码?
能有哪位达人对这种问题提供一个解答?
kernel、gcc 升级对应用程序有什么影响?应用程序需要重新吗编译?为什么呢?
还有gnome、kde等的升级对应用程序有什么影响呢?应用程序需要重新吗编译?为什么呢?
WINDOWS下的应用程序在这方面表现还可以,毕竟没有source啊。。2000-> xp ->2003基本不会出太大的问题,微软提供稳定的API和不断完善的实现,还有com/ole等二进制重用的组件模型,应用程序开发者只要调用就够了。
linux下每次升级kernel,发行版的应用程序都重新编译(各个应用还有升级),这样似乎很变态啊。。。。。难道就没有二进制重用的机制码?
能有哪位达人对这种问题提供一个解答?
kernel、gcc 升级对应用程序有什么影响?应用程序需要重新吗编译?为什么呢?
还有gnome、kde等的升级对应用程序有什么影响呢?应用程序需要重新吗编译?为什么呢?
- BigSnake.NET
- 帖子: 12522
- 注册时间: 2006-07-02 11:16
- 来自: 廣州
- 联系:
-
- 帖子: 67
- 注册时间: 2006-07-18 16:15
我对win 的应用是这么认识的
1 应用程序
2 跨语言的framework(com,ole,activex,ado,directx..)
3 开发语言: a编译器 (vc) b运行库(msvcrt*.dll) c语言相关的framework(mfc)和lib(stlport)
4 操作系统系统调用函数接口(NTDLL.dll ,gdi32.dll)以及其他dll(kernel32.dll,Advapi32.dll ,user32.dll)
5 操作系统实现
Windows的第四层相当稳定,每新Windows版本会有相应的NTDLL.dll,而相应的头文件没有变化(只是扩充),运行时候又是动态link,所以旧的应用系统可以正常运行(驱动之流如防火墙、杀毒除外)。
Windows的第二层更稳定,因为Iunknown和Idispatch很稳定,所以操作系统更新后基于com的应用程序也没什么不适应。(除非基于商业因素把接口的实现取消了,如xp没有direct10)
Linux下的情况我就不太知道了
1 应用程序
2 跨语言的framework 如 GNOME 的 Bonobo
3 开发语言:a gnu c 编译器 b GNU C Library c 语言相关的framework和lib.
4 操作系统系统调用函数接口 .(不知道) 似乎还有x是吧????
5 操作系统实现
Linux的第四层在什么地方?
Glibc的某个版本的二进制文件能在不同的Linux kernel下支持相同的应用吗?
Linux的发行版升级 如果更新了kernel 、gcc和glibc、gnome, 旧的应用程序不重新编译能运行吗?
1 应用程序
2 跨语言的framework(com,ole,activex,ado,directx..)
3 开发语言: a编译器 (vc) b运行库(msvcrt*.dll) c语言相关的framework(mfc)和lib(stlport)
4 操作系统系统调用函数接口(NTDLL.dll ,gdi32.dll)以及其他dll(kernel32.dll,Advapi32.dll ,user32.dll)
5 操作系统实现
Windows的第四层相当稳定,每新Windows版本会有相应的NTDLL.dll,而相应的头文件没有变化(只是扩充),运行时候又是动态link,所以旧的应用系统可以正常运行(驱动之流如防火墙、杀毒除外)。
Windows的第二层更稳定,因为Iunknown和Idispatch很稳定,所以操作系统更新后基于com的应用程序也没什么不适应。(除非基于商业因素把接口的实现取消了,如xp没有direct10)
Linux下的情况我就不太知道了
1 应用程序
2 跨语言的framework 如 GNOME 的 Bonobo
3 开发语言:a gnu c 编译器 b GNU C Library c 语言相关的framework和lib.
4 操作系统系统调用函数接口 .(不知道) 似乎还有x是吧????
5 操作系统实现
Linux的第四层在什么地方?
Glibc的某个版本的二进制文件能在不同的Linux kernel下支持相同的应用吗?
Linux的发行版升级 如果更新了kernel 、gcc和glibc、gnome, 旧的应用程序不重新编译能运行吗?
- BigSnake.NET
- 帖子: 12522
- 注册时间: 2006-07-02 11:16
- 来自: 廣州
- 联系:
-
- 帖子: 1897
- 注册时间: 2006-09-12 14:09
Re: 升级与兼容性的问题。
2k->xp或许没什么问题,但至少我的hp本本,从xp->2k3就是灾难,触摸板,电源管理,红外,快捷全部没有驱动,xp下的驱动连装都不让装.你可以说我的机器兼容太差,但我实想想不出还有几个厂家的机器会比HP的好.很困惑啊。。。。
WINDOWS下的应用程序在这方面表现还可以,毕竟没有source啊。。2000-> xp ->2003基本不会出太大的问题,微软提供稳定的API和不断完善的实现,还有com/ole等二进制重用的组件模型,应用程序开发者只要调用就够了。
另外我不知道2k->xp->2k3一路改下来,原先2k下的软件是否可以全部正常工作?听说,听说而已,MSoo2k3对msoo2k7的格式支持得似乎并不怎么完美.
我记不太清楚了,在98系统上,好像根本无法安装mediaplayer7以后的版本,office好像也只到officexp,我感觉到的只是无奈地跟随着MS的每个规则.
我不知道你这是自己的亲身体验还是从哪里听来看来的,但我的内核从2.6.18一路升到现在2.6.23,没有任何程序需要重新编译.linux下每次升级kernel,发行版的应用程序都重新编译(各个应用还有升级),这样似乎很变态啊。。。。。难道就没有二进制重用的机制码?
现在机器上还有两个版本内核,如果你所说是成立的,是不是意味着我每次用不同的内核之前还要重新编译整个系统呢?
代码: 全选
vmlinuz-2.6.22-gentoo-r8
vmlinuz-2.6.23-gentoo
代码: 全选
kernel、gcc 升级对应用程序有什么影响?应用程序需要重新吗编译?为什么呢?
代码: 全选
fideas@zerone /boot $ sudo gcc-config -l
[1] i686-pc-linux-gnu-4.1.2
[2] i686-pc-linux-gnu-4.2.2 *
代码: 全选
还有gnome、kde等的升级对应用程序有什么影响呢?应用程序需要重新吗编译?为什么呢?
linux系统可以几年不重装而保持各个软件都处于最新版本的壮态,或许有些windows高手也可以做到这一点,但我没有见过.
不想多说了,有些东西,自己去求证之前,不要乱扣帽子,你如果想知道什么,最好的办法就是去试验它.
Fair winds and following seas !
-
- 帖子: 1492
- 注册时间: 2007-08-09 3:33
- 系统: Windows 12.04
雕是Linux专家,却不是Windows专家,很多方面说反了,哈哈。
2K-XP-2K3,不是这样演化的。
正确的演化是
2K Workstation------->XP----------->Vista
2K Server------------>2K3---------->Longhorn
一个是桌面系,一个是服务器系,不一样滴~
另外,人家说的是旧软件可以在新系统中运行,你咋能用WMP 7.0(新)不能装在W98(旧)上面做例子涅。。
MSOffice2K3确实不能支持MSOffice2K7,要是能支持岂不是很奇怪~
2K7对2K3的文件格式支持还是很完善滴~
Linux你是专家,俺只有学习学习再学习的份儿~
2K-XP-2K3,不是这样演化的。
正确的演化是
2K Workstation------->XP----------->Vista
2K Server------------>2K3---------->Longhorn
一个是桌面系,一个是服务器系,不一样滴~
另外,人家说的是旧软件可以在新系统中运行,你咋能用WMP 7.0(新)不能装在W98(旧)上面做例子涅。。
MSOffice2K3确实不能支持MSOffice2K7,要是能支持岂不是很奇怪~
2K7对2K3的文件格式支持还是很完善滴~
Linux你是专家,俺只有学习学习再学习的份儿~
-
- 帖子: 67
- 注册时间: 2006-07-18 16:15
- leeaman
- 帖子: 30702
- 注册时间: 2007-02-02 18:14
- 系统: debian sid
- shugoal
- 帖子: 1109
- 注册时间: 2007-08-20 21:39
- 来自: 沈阳
- 联系:
-
- 帖子: 67
- 注册时间: 2006-07-18 16:15
-
- 帖子: 1897
- 注册时间: 2006-09-12 14:09
zzsczz 写了:to leeaman..
linux的发行版每次升级,核心升级了,gcc升级了,应用程序也升级了,二进制的分发的程序都用新的gcc编译,所以我不知道老的应用(用就版本的gcc为旧的kernel编译的旧版本)能否在新平台上正常运行?
雕啸长空 写了:有些东西,自己去求证之前,不要乱扣帽子,你如果想知道什么,最好的办法就是去试验它.
看清楼主题设,另外,2k没有workstation的说法你说的是windows2k professional edition ,NT还差不多.正确的演化是
2K Workstation------->XP----------->Vista
2K Server------------>2K3---------->Longhorn
一个是桌面系,一个是服务器系,不一样滴~
Fair winds and following seas !
-
- 帖子: 67
- 注册时间: 2006-07-18 16:15
to leeaman
比如啊 http://packages.ubuntu.com/
ubuntu的二进制源是分版本的(当然部分应用可以跨版本)
1 dapper edgy feisty gutsy hardy 之分
2 每个版本分CPU体系结构
x86 amd64 ppc
win下的简单一些
cpu只支持X86
应用win32 平台是兼容的。
比如啊 http://packages.ubuntu.com/
ubuntu的二进制源是分版本的(当然部分应用可以跨版本)
1 dapper edgy feisty gutsy hardy 之分
2 每个版本分CPU体系结构
x86 amd64 ppc
win下的简单一些
cpu只支持X86
应用win32 平台是兼容的。