|
|
发表于 2006-5-16 12:49:42
|
显示全部楼层
现代操作系统都一般都是分为用户层和内核层
很多操作只能由内核来完成
用户层程序通过系统调用来请求内核完成某个任务,比如打开文件,写入文件
系统调用是因系统而异的
一般来说编程语言级别越低,和系统关联越紧密,就越不可移植。
汇编就不用说了。
即使是C,在Linux与windows之间,也是有不可逾越的鸿沟。Linux和其他类UNIX系统之间情况会好很多。
还有一个要考虑的问题是图形界面程序。每个系统都有自己独有的图形界面库。一般写图形界面程序,都要选定一个图形界面库来写。这样的话,如果目的系统上没有这个库,自然就不能移植。这样就只能用目的系统上专有的库来写。 |
|