Mailinglist Archive: opensuse-es (1075 mails)

< Previous Next >
Re: [opensuse-es] Re: Crear archivos de gran tamaño para Gedit
  • From: Angel <aimsolaky@xxxxxxxxx>
  • Date: Mon, 1 Feb 2010 00:36:27 +0100
  • Message-id: <201002010036.28072.aimsolaky@xxxxxxxxx>
On Lunes, 1 de Febrero de 2010 00:19:51 Camaleón escribió:
El Sun, 31 Jan 2010 23:07:34 +0100, Carlos E. R. escribió:
El 2010-01-31 a las 20:02 -0000, Camaleón escribió:
El Sun, 31 Jan 2010 20:15:20 +0100, Carlos E. R. escribió:
El 2010-01-31 a las 17:49 -0000, Camaleón escribió:
Aquí explicaban cómo hacerlo, con las "artimañas" del mmap(), una
pizca de C y ensamblador. En apenas 62 KiB. Y es del año 2005...

Que no, que no lo entiendes.

Eso explícaselo al autor del "tub", no a mí ;-)

El del tub concuerda con lo que yo digo.

Entonces es que no lo has entendido o es que no lo quieres entender.

No, eres tú quien no lo entiende. Simplemente intenta compilar en
assembler de una máquina de 32 bits la instrucción que te puse, y verás
como no puedes. Con pae y sin pae, es así. Limite estructural o lo que
quieras llamarlo.

A ver, Carlos, que esto tiene visos de alargarse más de la cuenta y no
quiero líos ni tampoco quiero discutir contigo. Prefiero entender las
cosas, así que si digo algo que no sea cierto, me lo dices y ya está.

En la Wikipedia (en relación al PAE), decía lo siguiente:

***
(...) For application software which needs access to more than 4 GB of
RAM, some special mechanisms may be provided by the operating system in
addition to the regular PAE support. On Microsoft Windows this mechanism
is called Address Windowing Extensions, while on Unix-like systems a
variety of techniques are used, such as using mmap() to map regions of a
file into and out of the address space as needed.
***

Es decir, entiendo que lo quiere decir es que para que una aplicación -de
32 bits- pueda acceder a más de esos 4 GiB. (2 GiB.) de memoria, además
de tener habilitado el PAE, hace falta utilizar un "añadido", como es el
caso del AWE (en sistemas Windows) y de mmap() en sistemas Linux.

¿Correcto?

Sigo.

Leyendo la documentación del AWE -que lo explica bastante bien, por
cierto- me da entender que esta "extensión", al igual que el mmap() en
Linux, lo que permite es que una aplicación (o un proceso) pueda acceder
a mayor cantidad de memoria, siempre en función de la cantidad de RAM
física que se tenga instalada.

***
http://msdn.microsoft.com/en-us/library/aa366527(VS.85).aspx

Address Windowing Extensions

Address Windowing Extensions (AWE) is a set of extensions that allows an
application to quickly manipulate physical memory greater than 4GB.
Certain data-intensive applications, such as database management systems
and scientific and engineering software, need access to very large caches
of data. In the case of very large data sets, restricting the cache to
fit within an application's 2GB of user address space is a severe
restriction. In these situations, the cache is too small to properly
support the application.

AWE solves this problem by allowing applications to directly address huge
amounts of memory while continuing to use 32-bit pointers. AWE allows
applications to have data caches larger than 4GB (where sufficient
physical memory is present). AWE uses physical nonpaged memory and window
views of various portions of this physical memory within a 32-bit virtual
address space.
***

Y pongo el ejemplo del AWE porque se entiende perfectamente el concepto
de lo que hace, cómo lo hace y de para qué sirve.

Y lo pongo porque es exactamente en lo que estaba pensando: que no tiene
mucho sentido que una aplicación de 32 bits no pueda acceder a más RAM
cuando se tiene instalado un sistema operativo que soporte PAE.

Ahora bien, si me dices que el mmap() NO sirve para hacer esto mismo pero
en entornos Linux -que es básicamente lo que he interpretado que permitía
hacer ese "tub"-, entonces:

a) El texto de la Wikipedia está equivocado al pretender englobarlos los
dos conceptos (AWE y mmap) cuando obviamente son distintos y cada uno
tiene funcionalidades diferentes.

b) Tampoco he entendido para qué sirve el AWE :-)

Saludos,

yo creo haber entendido que AWE = EMS mas o menos
o XMS si me apuras que para el caso era igual. Yo he hecho aplicaciones con
EMS/XMS y no variaba muchos mas que la posisicon de buffer(window en AWE) y
las llamadas a gestor de memeoris extendida o al limulador.


Salu2
--
Para dar de baja la suscripción, mande un mensaje a:
opensuse-es+unsubscribe@xxxxxxxxxxxx
Para obtener el resto de direcciones-comando, mande
un mensaje a:
opensuse-es+help@xxxxxxxxxxxx

< Previous Next >