Sobrecoste (informática) - es.LinkFang.org

Sobrecoste (informática)




En informática, sobrecoste es el exceso de tiempo de computación, memoria, ancho de bando u otros recursos, que son necesarios para realizar una tarea específica. Este sobrecoste puede ser un factor decisivo en el diseño de un software en lo que se refiere a su estructura, corrección de errores e inclusión de nuevas características. Algunos ejemplos del sobrecoste en computación incluyen la llamada a una función, la transferencia de información o el procesamiento de las estructuras de datos.

Índice

Diseño de programas


Elección de la implementación

Un ingeniero o programador tiene a su disposición diversos algoritmos, codificaciones, tipos de datos o estructuras de datos, y cada uno tiene características bien diferenciadas. Cuando se vaya a elegir entre alguno de ellos se deberá tener en cuenta su sobrecoste relacionado.

Concesiones

En la ingeniería del software, el sobrecoste puede influenciar la decisión de si se incluirán o no ciertas características en los nuevos productos, o incluso si se arreglarán fallos en ellos. Una característica con un alto sobrecoste podría ser dejada de lado a menos que se tenga un fuerte incentivo financiero para no hacerlo. Aunque los desarrolladores de software conocen los fallos presentes en sus productos, muchas veces arreglarlos no les compensa el esfuerzo debido a su sobrecoste.

Por ejemplo, una estructura de datos implícita o estructura de datos sucinta pueden tener un bajo sobrecoste, pero a expensas de un peor rendimiento (concesión espacio-tiempo).

La complejidad de un programa en tiempo de ejecución

La complejidad de un algoritmo suele estar especificada mediante una cota superior asintótica. No está relacionado con cuánto tiempo necesite su ejecución o cuánta memoria utilice, sino más bien con cómo depende el tamaño del algoritmo con las entradas. El sobrecoste no se tiene en cuetna de forma deliberada en este cálculo, puesto que varía de una máquina a otra, mientras que el tiempo de ejecución mínimo de un algoritmo no depende de ella.

Esto contrasta con la eficiencia algorítmica, que tiene en cuenta todos los tipos de recursos, y es una combinación —aunque no sea algo trivial— de la complejidad y el sobrecoste.

Ejemplos


Programación (tiempo de ejecución y el sobrecoste computacional)

La invocación de una función introduce un pequeño sobrecoste en tiempo de ejecución. Un compilador puede minimizar en algunas ocasiones este sobrecoste al sustituir la llamada a la función por el código de la propia función.

Comunicaciones (sobrecoste de la transferencia de datos)

Enviar una carga útil de información de manera fiable a través de una red de comunicaciones precisa de enviar más información que la propia carga útil. También implica enviar distinta información de control y señalización necesaria para establecer una transmisión fiable de la información en cuestión.

Una versión simplificada de ello es la necesidad de marcar un número para establecer una llamada telefónica antes de que una conversación pueda empezar. Marcar el número y establecer la conexión son un sobrecoste.

Codificación y estructuras de datos (sobrecoste de tamaño)

La codificación de la información y los datos también introducen un sobrecoste. La fecha y la hora "2011-07-12 07:18:47" pueden ser expresados en tiempo de Unix como un entero con signo de 32 bits 1310447927, utilizando tan solo 4 bytes. Representado con el formato UTF-8 de la ISO 8601 sería la cadena de caracteres 2011-07-12 07:18:47 y la fecha utilizaría 19 bytes, un 375 % más que la representación como entero. Como XML, esta fecha puede ser escrita con un sobrecoste de 218 caracteres.

<?xml Versión="1.0" codificando="UTF-8"?>
  <DATETIME qualifier="CHANGEDATE" index="1">
  <YEAR>2011</YEAR>
  <MONTH>07</MONTH>
  <DAY>12</DAY>
  <HOUR>07</HOUR>
  <MINUTE>18</MINUTE>
  <SECOND>47</SECOND>
</DATETIME>

Son 349 bytes en total, partiendo de la codificación UTF-8, por lo que el sobrecoste es de un 8625 % sobre la representación de entero original.




Categorías: Ingeniería de software



Fuente: Wikipedia - https://es.wikipedia.org/wiki/Sobrecoste (informática) (Autores [Historia])    Licencia: CC-by-sa-3.0


Modificaciónes: Se eliminaron todas las imágenes y la mayoría de los elementos de diseño relacionados con ellos. Algunos iconos fueron reemplazados por FontAwesome-Icons. Algunas plantillas se eliminaron (como "el artículo necesita expansión) o se asignaron (como" notas de sombrero "). Las clases CSS fueron eliminadas o armonizadas.
Se eliminaron los enlaces específicos de Wikipedia que no conducen a un artículo o categoría (como "Enlaces rojos", "enlaces a la página de edición", "enlaces a portales"). Cada enlace externo tiene un FontAwesome-Icon adicional. Además de algunos pequeños cambios de diseño, se eliminaron los contenedores de medios, mapas, cuadros de navegación, versiones habladas y Geo-microformatos.


A partir de: 28.04.2020 04:06:22 CEST - Tenga en cuenta: Debido a que el contenido dado se toma automáticamente de Wikipedia en el momento dado, una verificación manual fue y no es posible. Por lo tanto, LinkFang.org no garantiza la precisión y la actualidad del contenido adquirido. Si hay una información que es incorrecta en este momento o tiene una pantalla incorrecta, no dude en Contáctenos: e-mail.
Ver también: Información legal & Política de privacidad.