E文高手进来看看!帮忙准确翻译一下!Thanks !(100分)

  • 主题发起人 主题发起人 YB_unique
  • 开始时间 开始时间
Y

YB_unique

Unregistered / Unconfirmed
GUEST, unregistred user!
Upon startup of a compressed EXE/DLL, all of the code is decompressed from the disk image into memory
in one pass, which can cause disk thrashing if the system is low on memory and is forced to access the
swap file. In contrast, with uncompressed EXE/DLLs, the OS allocates memory for code pages on demand
(i.e. when they are executed).
Multiple instances of a compressed EXE/DLL create multiple instances of the code in memory. (So if your
EXE is 1 MB and the user starts 5 instances of it, that adds up to 5+ MB.) With uncompressed EXE/DLLs,
the code is only stored in memory once and shared between instances.
Some older virus scanners flag compressed EXE/DLLs as being virus-infected.
 
乱七八糟:
--------------------------------------------
在一被压缩的 EXE/DLL 的启始之时,所有的代码都以一次的方式从磁盘图像被解压缩到內存,在较低的在內存系统上不得不存取那些交换档而引起磁盘猛移。 在对比中,由于解压缩的 EXE/DLL ,操作系统配置存储器为码在需量上的页数
(当他们被运行的时候 , 也就是).
一被压缩的 EXE/ DLL 的多重例证在內存中产生码的多重例证。 ( 所以是否你的
EXE 是 1 MB 和使用者开始它的 5个例证,那把增加加入 5+ MB )。 藉由解压缩的 EXE/DLL,
码只是在例证之间在內存中储存一次而且分享。
当做病毒传染的一些比较旧的病毒扫描器旗子被压缩的 EXE/ DLL。
 
大概的说说。。。[:)]
一旦将EXE、DLL文件进行了压缩,所有的代码会在放入内存前进行解压。
多个的压缩文件将会占用多份的内存,(例如,你的文件是1兆的,运行了5份,那么
占用的内存就是5兆或者更多),而如果是没有进行过压缩的程序,在多份程序中,
会共享使用一份内存。
有些旧的杀毒软件会把压缩过的程序,标识为病毒感染的。
 
装机金山快译或是东方快车不就得了。
 
应该没问题
在被压缩的EXE/DLL启动时,所有的代码将在瞬间被从磁盘映像中解压到内存中,
如果系统的内存低,这将导致系统的抖动(颠簸),并被迫存取交换文件,相反,
对于不压缩的EXE/DLL,系统会按需要为代码页分配内存(例如:当他们被执行时)。
一个压缩EXE/DLL的多个实例将在内存中创建代码的多个实例。(所以如果你的执行
文件是1MB用户执行了它的5个实例,那占用的内存会增加至5MB.)使用不压缩的
EXE/DLL代码在内存中只存储一次并在它的多个实例间共享。
一些早期的病毒扫描程序会把压缩的EXE/DLL标记为被病毒感染的。
 
多人接受答案了。
 
tjj, 翻得很棒,
我想知道in one pass?
 
在压缩过的EXE/DLL的启动过程中,所有的代码会一步从磁盘映象中解压到内存,
这时候,如果系统内存匮乏,而且使用内存交换文件,会导致磁盘访问剧烈。相反的,
对于非压缩的EXE/DLL,系统会按照需要为代码分配页面。(例如,根据代码被执行的情况)
注:也就是说,只有被执行到的代码才会被根据需求分配空间。
多实例的压缩过的EXE/DLL会在内存中创建多份代码的实例,(例如EXE为1M,用户
创建5份实例,则会占用5M),而使用非压缩的,代码只存贮在内存一次,而5个实例可以共享。
一些老的病毒扫描程序会认为压缩过的EXE/DLL是被病毒感染过的。

注解:压缩过的EXE/DLL的缺点。多实例的意思其实是启动多份应用程序。
启动过程可以解释为“启动代码”。
最主要的原因还是操作系统可以根据执行文件的执行情况分配内存空间。
例如:一个EXE/DLL有100M,但是我们只有80M内存,操作系统会根据当前
执行到的代码来分配内存空间,而不需要应用程序自己的启动代码来解压缩,
那样操作系统就无能为力了。
本人英语水平非常差,只是看到其他人曲解意思所以才献丑。
 
谢谢wenyue!
 
后退
顶部