Seguimos buscando a Arshak. Ayudanos compartiendo!
Encuesta no oficial de docentes
Resultados de la encuesta no oficial de docentes
Probaste el SIGA Helper?

Donar $100 Donar $200 Donar $500 Donar mensualmente


Enviar respuesta 
 
Calificación:
  • 0 votos - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Buscar en el tema
Diferenciar RAM y ROM: implicaciones prácticas en programación
Autor Mensaje
karthi11 Sin conexión
Empleado del buffet
Sin estado :(
*

Ing. en Sistemas
Otra

Mensajes: 9
Agradecimientos dados: 2
Agradecimientos: 0 en 0 posts
Registro en: Sep 2022
Mensaje: #1
Diferenciar RAM y ROM: implicaciones prácticas en programación
Estoy explorando los conceptos fundamentales de RAM y ROM en sistemas informáticos y me pregunto sobre sus implicaciones prácticas en la programación. Aquí hay un fragmento de código para contexto:


# Python code involving memory operations
data = [1, 2, 3, 4, 5]
result = sum(data)
print("Sum of data:", result)



Si bien el código es sencillo, me interesa comprender las diferencias prácticas entre RAM y ROM y cómo afectan operaciones como la de este código. ¿En qué se diferencian el almacenamiento de datos, la velocidad de acceso y la volatilidad en la RAM de la naturaleza no volátil de la ROM, y cómo influyen estas distinciones en las decisiones de programación? Mientras exploro varios sitios[/code], también me pregunto si hay situaciones particulares en las que el uso de RAM o ROM se vuelve esencial para obtener la mejor velocidad y confiabilidad del código posible.
29-11-2023 07:04
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
nicolasAM Sin conexión
Secretario de la SAE
Aguante el Starbucks de la UADE
******

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 548
Agradecimientos dados: 163
Agradecimientos: 663 en 277 posts
Registro en: Jan 2017
LinkedIn
Mensaje: #2
RE: Diferenciar RAM y ROM: implicaciones prácticas en programación
Holii

El manejo de memoria en la programación es un tema muuuuy complejo. Te cuento que si todavía no llegaste, en la materia Sistemas Operativos vas a tener que jugar con eso un ratito largo.

Intentando responder de una manera directa y concisa, te cuento:
* Almacenamiento de datos: Cada vez que declarás una variable, función o lo que sea, estás pidiendo memoria (RAM o ROM)
* Velocidad de acceso: es el tiempo que tenés desde que pedís un dato (ya sea variable, función o lo que sea) hasta que ese dato está accedido. También puede ser en RAM o ROM.

Algunas cuestiones para aclarar:
* ¿Por qué te digo que podés pedir memoria RAM o ROM? Porque inicialmente vos pedís memoria RAM, pero cada vez que ejecutás un proceso, el mismo no se carga completo en memoria RAM, sino que se carga una sola parte, la que necesitás en el momento, mientras que el resto se encuentra almacenado en disco y solo es cargado en RAM cuando se necesita.
Toda esta gestión es realizada por el sistema operativo, quien incluso tiene sus propias políticas de acceso a los datos y reemplazo en memoria volátil.

* El cuidado en el pedido de memoria "era" una buena práctica en lenguajes de programación antiguos, como C e incluso más viejos, donde tenés que especificar explícitamente la memoria que vas a necesitar durante la ejecución de tu proceso y luego liberarla, evitando así "memory leaks" o "fallas de acceso de memoria" (dos cosas distintas). Es muy complejo de realizar y una forma sencilla de generar bugs en tu código. Actualmente los lenguajes de programación, como Java o Python, tienen algo que se llama "garbage collector", que es un proceso automático de gestión de memoria, donde limpia directamente la memoria que desperdiciaste durante la programación de tu código. Por lo que termina resultando más sencillo pedir memoria de más, que de menos, total luego la misma va a ser devuelta al sistema operativo de manera automática.


Si querés conocer más a fondo el tema de memoria, te aconsejo que esperes a cursar Sistemas Operativos, como te dije, o bien ir chusmeando un poco la bibliografía de la misma. Te comparto además un RESUMEN teórico de esta materia que utilicé en su momento para rendir el final de la misma. Es muy claro y completo.
Besis y éxitos love
29-11-2023 19:35
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Buscar en el tema
Enviar respuesta 




Usuario(s) navegando en este tema: