计科-面试问题(1)

计科-面试问题(1)
1.windows的exe为什么不能在linux下运行
通常情况下,任何基 于WINDOWS的程序都不能在 LINUX 下运行,这是因为它们的内核是不同的。
由于系统基础环境完全不同。windows的.exe执行文件是无法在linux上运行的。同样 的软件如果要从windows向 linux上运行的 化,必须进行程序的移植
1.windows的exe如何在linux下运行
安装wine,它可以模拟一部分的WINDOWS 程序接口,因而运行一些常用程序不成问题。在souceforge.org上应该能找到。安装这个程序时推荐使用自己编译的方式安装。否则就要找到合适自己系统的安装包。

Wine (Wine Is Not anEmulator)[即Wine不仅仅是一个模拟器]是一个在X和UNIX之上的,Windows 3.x 和 WindowsAPIs的实现.它是一个Windows兼容层,用通俗的话说,就是一个Windows模拟器,这个层即提供了一个用来从Windows源进出到UNIX的开发工具包(Winelib),也提供了一个程序加载器,该加载器允许不用任何修改Windows3.1/95/NT的二进制文件,就可以运行在Intel Unix及其衍生版本下.Wine可以工作在绝大多数的UNIX版本下,包括Linux,FreeBSD, 和 Solaris. Wine不需要Microsoft Windows,因为这是一个完全由百分之百的免费代码组成的,可以选择的实现,但是它却可以随意地使用本地系统的DLLs,如果它们是可以被利用的话.Wine的发布是完全公开源代码的,并且是免费发行的。

目前 Wine 仍在发展阶段,但是较新的版本可以运行一些著名软件,甚至是 Photoshop CS3!

Wine的官方站点是

http://www.winehq.com/,虽然你可以在它的官方站点下载源代码,自己配置编译,不过这个过程可是比较繁琐的!

编译安装

如果你安装了编译所需要的软件(如 gcc flex bison ),就可以进行编译了!

首先,访问 http://www.winehq.com/ 下载最新版本的 wine,解压到一个目录

打开终端("Terminal"),输入以下命令:

cd <你解压的目录> #进入目录

./configure # 检查编译环境

make #若上一步成功的话,即可进行编译

make install #安装

即可完成 Wine 的编译。

注意:编译 WINE 一般需要一个小时(视机器性能而定),若你是刚刚接触 Linux 不久的人,最好不要进行编译。

下载及安装

若你使用 Debian/Ubuntu 之类的发行版,只需要一个命令即可完成安装:

apt-get install wine

若你使用的为其他发行版,请访问 http://winehq.org/site/download 查询安装方法

Wine 的配置

运行 winecfg 即可。不过它暂时没有中文界面。

Wine 中文乱码的解决

把下面文字保存为 zh.reg 文件,运行 regedit 导入它即可

REGEDIT4

[HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\FontSubstitutes]

"Arial"="WenQuanYi Zhenhei"

"Arial CE,238"="WenQuanYi Zhenhei"

"Arial CYR,204"="WenQuanYi Zhenhei"

"Arial Greek,161"="WenQuanYi Zhenhei"

"Arial TUR,162"="WenQuanYi Zhenhei"

"Courier New"="WenQuanYi Zhenhei"

"Courier New CE,238"="WenQuanYi Zhenhei"

"Courier New CYR,204"="WenQuanYi Zhenhei"

"Courier New Greek,161"="WenQuanYi Zhenhei"

"Courier New TUR,162"="WenQuanYi Zhenhei"

"FixedSys"="WenQuanYi Zhenhei"

"Helv"="WenQuanYi Zhenhei"

"Helvetica"="WenQuanYi Zhenhei"

"MS Sans Serif"="WenQuanYi Zhenhei"

"MS Shell Dlg"="WenQuanYi Zhenhei"

"MS Shell Dlg 2"="WenQuanYi Zhenhei"

"System"="WenQuanYi Zhenhei"

"Tahoma"="WenQuanYi Zhenhei"

"Times"="WenQuanYi Zhenhei"

"Times New Roman CE,238"="WenQuanYi Zhenhei"

"Times New Roman CYR,204"="WenQuanYi Zhenhei"

"Times New Roman Greek,161"="WenQuanYi Zhenhei"

"Times New Roman TUR,162"="WenQuanYi Zhenhei"

"Tms Rmn"="WenQuanYi Zhenhei"

官方介绍

以下来自官方网站

Wine is an Open Source implementation of the Windows API on top of X, OpenGL, and Unix.

Think of Wine as acompatibility layer for running Windows programs. Wine does not requireMicrosoft Windows, as it is a completely free alternativeimplementation of the Windows API consisting of 100% non-Microsoft code,however Wine can optionally use native Windows DLLs if they areavailable. Wine provides both a development toolkit for porting Windowssource code to Unix as well as a program loader, allowing manyunmodified Windows programs to run on x86-based Unixes, includingLinux, FreeBSD, Mac OS X, and Solaris.

More information can be read in the articles Why Wine is so important,and Debunking Wine Myths. If you are wondering how well a particularapplication works in Wine, please examine the Applications Database.For installation instructions and step-by-step help with running Wine,take a look at the User Guide.

Wine is free software. The licensing terms are the GNU Lesser General Public License.

Wine的简单使用方法

Wine可以在绝大多数的Unix版本下工作,但其现在仍不能完全运行所有的Windows程序,不过由于几乎每个月都有新版本,越来越多的Windows程序已经能在Wine的帮助下在Linux中运行。

1、直接运行程序

使用命令wine

[root@localhost root]#wine <程序名>

2、使用程序管理器

〔root@localhost root]#progman

启动管理器窗口,从菜单中选择 文件(F)-执行(X),就会弹出一个目录浏览器,选择程序即可。

某些简单程序可直接运行,而不需要安装。

举例:Wine运行国泰君安股票软件

如果大家经常用Linux桌面(如Ubuntu),可以用以下的方法把国泰君安股票软件安装到Ubuntu系统中。

1. 安装Wine

sudo apt-get install wine

2. 下载国泰君安股票安装软件

3. 把当前目录更换到有国泰君安股票软件的目录

运行以下命令:

wine setup_dzh5_fuyi.exe

这时象在Microsoft Windows中一样的安装界面就会出现,按提示安装。

注意:如果这时出现乱码,可能是由于Wine中的字体替换出了问题,请参考以下链接:http://forum.ubuntu.org.cn/viewtopic.php?t=72933

---

4. 运行国泰君安股票软件

运行以下命令:

cd ~/.wine/drive_c/DZH5/internet/

wine Hypmain.exe

Wine可以做什么

本文中,我们讨论的是 Wine 在纯 Linux 上的安装,没有任何 Windows 分区。

段落来源http://vincenlei.blog.163.com/blog/static/16332135420104132615999/

(回答二)
1.  如果源代码只用到C/C++及其标准库,可以直接拿到Linux上编译,然后就可运行了。
2.  如果直接用VC编译链接生成本地exe, 可在Linux中 安装Wine,通过wine app.exe运行程序 ,但不一定能成功,这要你非常熟悉Wine,然后在编写程序时注意那些系统资源不能用。
3.  如果用VC-IDE生成.Net程序,可在Linux中先安装Mono,通过它运行自己生成的dotNet.exe,但不一定能成功,同样要注意Mono的编写规则。
4.  在Linux下运行Windows程序,因为多了一层封装,不管使用Wine还是Mono,运行效率都比不上直接在Windows上运行。
5.  Wine方案还是不错的,我看了一下,Wine项目组已经迁移了N多Windows上的程序了,比如常见的游戏、Photoshop等 http://blog.sina.com.cn/s/blog_8c0c4556010166rp.html

2.使用沙盒
沙盒是在受限的安全环境中运行应用程序的一种做法,这种做法是要限制授予 应用程序的代码访问权限 。例如,下载到 Internet Explorer 的控件使用 Internet 权限集运行。驻留在局域网共享上的应用程序在计算机上使用 LocalIntranet 权限集运行。
● FullTrust:没有权限的限制 ● Execution:运行的能力,但是不能访问受保护的资源·······························等等

3.流媒体
流式媒体在播放前并不下载整个文件,只将开始部分内容存入内存,流式媒体的数据流随时传送随时播放,只是在开始时有一些延迟。流媒体实现的关键技术就是流式传输。
流式传输定义很广泛,现在主要指通过网络传送媒体(如视频、音频)的技术总称。其特定含义为通过Internet 将影视节目传送到PC机。实现流式传输有两种方法:实时流式传输(Realtime streaming)和顺序流式传输(progressive streaming)。一般说来,如视频为实时广播,或使用流式传输媒体服务器,或应用如RTSP的实时协议,即为实时流式传输。如使用HTTP服务器,文件即通过顺序流发送。采用哪种传输方法依赖你的需求。当然,流式文件也支持在播放前完全下载到硬盘


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值