lunes, 14 de julio de 2008
Hardware
Hardware (pronunciación AFI: /ˈhɑːdˌwɛə/ ó /ˈhɑɹdˌwɛɚ/) es la parte física de un computador y más ampliamente de cualquier dispositivo electrónico. El término proviene del inglés[1] y es definido por la RAE como el equipo de una computadora [2] , sin embargo, es usual que sea utilizado en una forma más amplia, generalmente para describir componentes físicos de una tecnología, así el hardware puede ser de un equipo militar importante, un equipo electrónico, un equipo informático o un robot. En informática también se aplica a los periféricos de una computadora tales como el disco duro, CD-ROM, disquetera (floppy), etc... En dicho conjunto se incluyen los dispositivos electrónicos y electromecánicos, circuitos, cables, armarios o cajas, periféricos de todo tipo y cualquier otro elemento físico involucrado.
El hardware se refiere a todos los componentes físicos (que se pueden tocar), en el caso de una computadora personal serían los discos, unidades de disco, monitor, teclado, la placa base, el microprocesador, étc. En cambio, el software es intangible, existe como información, ideas, conceptos, símbolos, pero no ocupa un espacio físico, se podría decir que no tiene sustancia. Una buena metáfora sería un libro: las páginas y la tinta son el hardware, mientras que las palabras, oraciones, párrafos y el significado del texto (información) son el software. Una computadora sin software sería tan inútil como un libro con páginas en blanco.
Tipos de hardware [editar]
Hardware de un servidor
Se clasifica generalmente en básico y complementario, entendiendo por básico todo aquel dispositivo necesario para iniciar el funcionamiento de la computadora, y el complementario, como su nombre indica, sirve para realizar funciones específicas (más allá de las básicas) no estrictamente necesarias para el funcionamiento de la computadora.
Existen 2 tipos de categorías importantes en el campo del "Hardware". Por un lado, el Básico, que hace referencia a las herramientas indispensables para correr una PC, y por otro lado, está el "Hardware Complementario", que distingue a aquellos extras que uno puede sumar a la máquina, para jugar e ir más lejos de sus posibilidades originales.
Las computadoras son aparatos electrónicos capaces de interpretar y ejecutar instrucciones programadas que consisten en operaciones aritmetilógicas y de entrada/salida; reciben entradas (datos para su procesamiento), producen salidas (resultados del procesamiento), procesan y almacenan información.
Todo sistema informático tiene componentes hardware dedicados a alguna de estas funciones:
Periféricos de entrada
Periféricos de salida
Periféricos de entrada/salida
Memoria
Unidad central de procesamiento
Cada dispositivo de entrada es sólo otra fuente de señales eléctricas; cada dispositivo de salida no es más que otro lugar al cual enviar señales (salidas); los dispositivos de almacenamiento y las memorias son ambas cosas, dependiendo de lo que requiera el programa (operación de entrada=lectura, operación de salida=escritura).
Periféricos de entrada (E) [editar]
Son los que permiten al usuario que ingrese información desde el exterior. Entre ellos podemos encontrar: teclado, mouse o ratón, escáner, SAI (Sistema de Alimentación Ininterrumpida), micrófono, cámara web , lectores de código de barras, Joystick,cámara fotográfica,etc.
Periféricos de salida (S) [editar]
Son los que muestran al usuario el resultado de las operaciones realizadas por el PC. En este grupo podemos encontrar: monitor, impresora, altavoces, etc.
Periféricos de entrada/salida (E/S) [editar]
Son los dispositivos que pueden aportar simultáneamente información exterior al PC y al usuario. Así encontramos como dispositivos/periféricos/unidades de Entrada/Salida las tarjetas de red, los módems, las unidades de almacenamiento (discos duros, disquetes, floppy, discos ZIP o las memorias, (USB, flash, etc.)
Unidad Central de Procesamiento [editar]
Artículo principal: CPU
La placa principal de una PC
Es la computadora real, la "inteligencia" de un sistema de computación. La CPU, o procesador, es el componente que interpreta instrucciones y procesa datos. Es el elemento fundamental, el cerebro de la computadora. Su papel sería equiparable al de un director de orquesta, cuyo cometido es que el resto de componentes funcionen correctamente y de manera coordinada. Las unidades centrales de proceso no sólo están presentes en los ordenadores personales, sino en todo tipo de dispositivos que incorporan una cierta "inteligencia" electrónica como pueden ser: televisores, automóviles, calculadores, aviones, teléfonos móviles, juguetes y muchos más.
Memoria RAM [editar]
Módulo SDRAM de 128 Mb
Artículo principal: Memoria RAM
Del inglés Random Access Memory, que significa memoria de acceso aleatorio, aludiendo a la capacidad que ofrece este dispositivo para almacenar y/o extraer información de él (Lectura/Escritura) en cualquier punto o dirección del mismo y en cualquier momento (no secuencial). Son los dispositivos que permiten el almacenamiento temporal de información para que la Unidad de Procesamiento pueda ser capaz de ejecutar sus programas. Existen diferentes tipos de memoria RAM:
VRAM: Siglas de Vídeo RAM, una memoria de propósito especial usada por los adaptadores de vídeo. A diferencia de la convencional memoria RAM, la VRAM puede ser accedida por dos diferentes dispositivos de forma simultánea. Esto permite que un monitor pueda acceder a la VRAM para las actualizaciones de la pantalla al mismo tiempo que un procesador gráfico suministra nuevos datos. VRAM permite mejores rendimientos gráficos aunque es más cara que la una RAM normal.
SIMM:Siglas de Single In line Memory Module, un tipo de encapsulado consistente en una pequeña placa de circuito impreso que almacena chips de memoria, y que se inserta en un zócalo SIMM en la placa madre o en la placa de memoria. Los SIMMs son más fáciles de instalar que los antiguos chips de memoria individuales, y a diferencia de ellos son medidos en bytes en lugar de bits. El primer formato que se hizo popular en los computadores personales tenía 3.5" de largo y usaba un conector de 32 pins. Un formato más largo de 4.25", que usa 72 contactos y puede almacenar hasta 64 megabytes de RAM es actualmente el más frecuente. Un PC usa tanto memoria de nueve bits (ocho bits y un bit de paridad, en 9 chips de memoria RAM dinámica) como memoria de ocho bits sin paridad. En el primer caso los ocho primeros son para datos y el noveno es para el chequeo de paridad.
DIMM: Siglas de Dual In line Memory Module, un tipo de encapsulado, consistente en una pequeña placa de circuito impreso que almacena chips de memoria, que se inserta en un zócalo DIMM en la placa madre y usa generalmente un conector de 168 contactos.
DIP: Siglas de Dual In line Package, un tipo de encapsulado consistente en almacenar un chip de memoria en una caja rectangular con dos filas de pines de conexión en cada lado.
RAM Disk: Se refiere a la RAM que ha sido configurada para simular un disco duro. Se puede acceder a los ficheros de un RAM disk de la misma forma en la que se acceden a los de un disco duro. Sin embargo, los RAM disk son aproximadamente miles de veces más rápidos que los discos duros, y son particularmente útiles para aplicaciones que precisan de frecuentes accesos a disco. Dado que están constituidos por RAM normal. los RAM disk pierden su contenido una vez que la computadora es apagada. Para usar los RAM Disk se precisa copiar los ficheros desde un disco duro real al inicio de la sesión y copiarlos de nuevo al disco duro antes de apagar la máquina. Observe que en el caso de fallo de alimentación eléctrica, se perderán los datos que hubiera en el RAM disk. El sistema operativo DOS permite convertir la memoria extendida en un RAM Disk por medio del comando VDISK, siglas de Virtual DISK, otro nombre de los RAM Disks.
Memoria Caché ó RAM Caché: Un caché es un sistema especial de almacenamiento de alta velocidad. Puede ser tanto un área reservada de la memoria principal como un dispositivo de almacenamiento de alta velocidad independiente. Hay dos tipos de caché frecuentemente usados en las computadoras personales: memoria caché y caché de disco. Una memoria caché, llamada también a veces almacenamiento caché ó RAM caché, es una parte de memoria RAM estática de alta velocidad (SRAM) más que la lenta y barata RAM dinámica (DRAM) usada como memoria principal. La memoria caché es efectiva dado que los programas acceden una y otra vez a los mismos datos o instrucciones. Guardando esta información en SRAM, la computadora evita acceder a la lenta DRAM. Cuando un dato es encontrado en el caché, se dice que se ha producido un impacto (hit), siendo un caché juzgado por su tasa de impactos (hit rate). Los sistemas de memoria caché usan una tecnología conocida por caché inteligente en el cual el sistema puede reconocer cierto tipo de datos usados frecuentemente. Las estrategias para determinar qué información debe de ser puesta en el caché constituyen uno de los problemas más interesantes en la ciencia de las computadoras. Algunas memorias caché están construidas en la arquitectura de los microprocesadores. Por ejemplo, el procesador Pentium II tiene una caché L2 de 512 Kbytes. El caché de disco trabaja sobre los mismos principios que la memoria caché, pero en lugar de usar SRAM de alta velocidad, usa la convencional memoria principal. Los datos más recientes del disco duro a los que se ha accedido (así como los sectores adyacentes) se almacenan en un buffer de memoria. Cuando el programa necesita acceder a datos del disco, lo primero que comprueba es la caché del disco para ver si los datos ya están ahí. La caché de disco puede mejorar drásticamente el rendimiento de las aplicaciones, dado que acceder a un byte de datos en RAM puede ser miles de veces más rápido que acceder a un byte del disco duro.
SRAM: Siglas de Static Random Access Memory, es un tipo de memoria que es más rápida y fiable que la más común DRAM (Dynamic RAM). El término estática viene derivado del hecho que necesita ser refrescada menos veces que la RAM dinámica. Los chips de RAM estática tienen tiempos de acceso del orden de 10 a 30 nanosegundos, mientras que las RAMs dinámicas están por encima de 30, y las memorias bipolares y ECL se encuentran por debajo de 10 nanosegundos. Un bit de RAM estática se construye con un circuito flip-flop que permite que la corriente fluya de un lado a otro basándose en cual de los dos transistores es activado. Las RAMs estáticas no precisan de circuitería de refresco como sucede con las RAMs dinámicas, pero precisan más espacio y usan más energía. La SRAM, debido a su alta velocidad, es usada como memoria caché.
DRAM: Siglas de Dynamic RAM, un tipo de memoria de gran capacidad pero que precisa ser constantemente refrescada (re-energizada) o perdería su contenido. Generalmente usa un transistor y un condensador para representar un bit Los condensadores debe de ser energizados cientos de veces por segundo para mantener las cargas. A diferencia de los chips firmware (ROMs, PROMs, etc.) las dos principales variaciones de RAM (dinámica y estática) pierden su contenido cuando se desconectan de la alimentación. Contrasta con la RAM estática. Algunas veces en los anuncios de memorias, la RAM dinámica se indica erróneamente como un tipo de encapsulado; por ejemplo "se venden DRAMs, SIMMs y SIPs", cuando debería decirse "DIPs, SIMMs y SIPs" los tres tipos de encapsulado típicos para almacenar chips de RAM dinámica. también algunas veces el término RAM (Random Access Memory) es utilizado para referirse a la DRAM y distinguirla de la RAM estática (SRAM) que es más rápida y más estable que la RAM dinámica, pero que requiere más energía y es más cara.
Hardware Gráfico [editar]
El hardware gráfico lo constituyen las tarjetas gráficas. Poseen su propia Unidad de Proceso (GPU) y memoria.
Tecnologías y avances [editar]
1ª generación: Con tubos de vacío, tubos de vidrio del tamaño de una bombilla que albergaban circuitos eléctricos. Estas máquinas eran muy grandes caras y de difícil operación.
2ª generación: con transistores. Máquinas más pequeñas, confiables y económicas.
3ª generación: Con la tecnología que permitió empaquetar cientos de transistores en un circuito integrado de un chip de silicio.
4ª generación: con el microprocesador, que es una computadora completa empaquetada en un solo chip de silicio.
Con los estudios recientes sobre nanotecnología, se espera el desarrollo de un hardware más avanzado.
Software[1] (pronunciación AFI:[ˈsɔft.wɛɻ]), palabra proveniente del inglés (literalmente: partes blandas o suaves), que en nuestro idioma no posee una traducción adecuada al contexto, por lo cual se la utiliza asíduamente sin traducir y fue adoptada por la RAE. Se refiere al equipamiento lógico o soporte lógico de un computador digital, comprende el conjunto de los componentes lógicos necesarios para hacer posible la realización de una tarea específica, en contraposición a los componentes físicos del sistema (hardware). Tales componentes lógicos incluyen, entre otras, aplicaciones informáticas tales como procesador de textos, que permite al usuario realizar todas las tareas concernientes a edición de textos; software de sistema, tal como un sistema operativo, el que, básicamente, permite al resto de los programas funcionar adecuadamente, facilitando la interacción con los componentes físicos y el resto de las aplicaciones, también provee una interface ante el usuario.
En la figura 1 se muestra uno o más software en ejecución, en este caso con ventanas, iconos y menues que componen las interfases gráficas, ellas lo comunican con el usuario y le permiten interactuar.
LET_LADIOSA_==Definición de Software== Probablemente la definición más formal de software es la siguiente:
Es el conjunto de los programas de cómputo, procedimientos, reglas, documentación y datos asociados que forman parte de las operaciones de un sistema de computación.
Extraído del estándar 729 del IEEE[2]
Bajo esta definición, el concepto de software va más allá de los programas de cómputo en sus distintos estados: código fuente, binario o ejecutable; también su documentación, datos a procesar e información de usuario es parte del software: es decir, abarca todo lo intangible, todo lo "no físico" relacionado.
El término «software» fue usado por primera vez en este sentido por John W. Tukey en 1957. En las ciencias de la computación y la ingeniería de software, el software es toda la información procesada por los sistemas informáticos: programas y datos. El concepto de leer diferentes secuencias de instrucciones desde la memoria de un dispositivo para controlar los cálculos fue introducido por Charles Babbage como parte de su máquina diferencial. La teoría que forma la base de la mayor parte del software moderno fue propuesta por vez primera por Alan Turing en su ensayo de 1936, "Los números computables", con una aplicación al problema de decisión.
Clasificación del software [editar]
Si bien esta distinción es, en cierto modo, arbitraria, y a veces confusa, se puede clasificar al software de la siguiente forma:
Software de sistema: Es aquel que permite que el hardware funcione. Su objetivo es desvincular adecuadamente al programador de los detalles del computador en particular que se use, aislándolo especialmente del procesamiento referido a las características internas de: memoria, discos, puertos y dispositivos de comunicaciones, impresoras, pantallas, teclados, etc. El software de sistema le procura al usuario y programador adecuadas interfases de alto nivel y utilidades de apoyo que permiten su mantenimiento. Incluye entre otros:
Sistemas operativos
Controladores de dispositivo
Herramientas de diagnóstico
Herramientas de Corrección y Optimización
Servidores
Utilidades
Software de programación: Es el conjunto de herramientas que permiten al programador desarrollar programas informáticos, usando diferentes alternativas y lenguajes de programación, de una manera práctica. Incluye entre otros:
Editores de texto
Compiladores
Intérpretes
Enlazadores
Depuradores
Entornos de Desarrollo Integrados (IDE): Agrupan las anteriores herramientas, usualmente en un entorno visual, de forma que el programador no necesite introducir múltiples comandos para compilar, interpretar, depurar, etc. Habitualmente cuentan con una avanzada interfaz gráfica de usuario (GUI).
Software de aplicación: Aquel que permite a los usuarios llevar a cabo una o varias tareas específicas, en cualquier campo de actividad susceptible de ser automatizado o asistido, con especial énfasis en los negocios. Incluye entre otros:
Aplicaciones de control y automatización industrial
Aplicaciones ofimáticas
Software educativo
Software médico
Software de Cálculo Numérico
Software de Diseño Asistido (CAD)
Software de Control Numérico (CAM)
Proceso de creación de software [editar]
El proceso de creación de software puede llegar a ser muy complejo, dependiendo de su porte, características y criticidad del mismo. Por ejemplo la creación de un sistema operativo es una tarea que requiere proyecto, gestión, numerosos recursos y todo un equipo disciplinado de trabajo. En el otro extremo, si se trata de un sencillo programa (ejemplo: resolución de una ecuación de segundo orden), éste puede ser realizado por un solo programador (incluso aficionado) fácilmente. Es así que normalmente se dividen en tres categorías según su tamaño (líneas de código) y/o costo: de Pequeño, Mediano y Gran porte. Existen varias metodologías para estimarlo, una de las más populares es el sistema COCOMO que provee métodos y un software (programa) que calcula estimadamente todos los costos de producción en un "proyecto software" (relación horas/hombre, costo monetario, cantidad de líneas fuente de acuerdo a lenguaje usado, etc.).
Considerando los de gran porte, es necesario realizar tantas y tan complejas tareas, tanto técnicas, de gerenciamiento, fuerte gestión y análisis diversos (entre otras) que toda una ingeniería hace falta para su estudio y realización: la Ingeniería de Software.
En tanto que en los de mediano porte, pequeños equipos de trabajo (incluso un avesado analista-programador solitario) puede realizar la tarea. Aunque, siempre en casos de mediano y gran porte (y a veces también en algunos de pequeño porte, según su complejidad), se deben seguir ciertas etapas que son necesarias para la construcción del software. Tales etapas, si bien deben existir, son flexibles en su forma de aplicación, de acuerdo a la metodología o Proceso de Desarrollo escogido y utilizado por el equipo de desarrollo o analista-programador solitario (si fuere el caso).
Los "procesos de desarrollo de software" poseen reglas preestablecidas, y deben ser aplicados en la creación del software de mediano y gran porte, ya que en caso contrario lo más seguro es que el proyecto o no logra concluir o termina sin cumplir los objetivos previstos y con variedad de fallos inaceptables (fracasan, en pocas palabras). Entre tales "procesos" los hay rápidos o livianos (ejemplo XP), pesados y lentos (ejemplo RUP) y variantes intermedias; y normalmente se aplican de acuerdo al tipo y porte del software a desarrollar, a criterio del líder (si lo hay) del equipo de desarrollo. Algunos de esos procesos son Extreme Programming (XP), Rational Unified Process (RUP), Feature Driven Development (FDD), etc.
Es común para el desarrollo de software de mdiano porte que los equipos humanos involucrados apliquen sus propias metodologías, normalmente un híbrido de los procesos anteriores y a veces con criterios propios.
El proceso de desarrollo puede involucrar numerosas y variadas tareas, desde lo administrativo, pasando por lo técnico y hasta la gestión y el gerenciamiento. Pero casi rigurosamente siempre se cumplen ciertas etapas mínimas, las que se pueden resumir como sigue:
Captura (elicitación) y Especificación de requisitos (ERS)
Análisis
Diseño
Codificación
Pruebas (unitarias y de integración)
Instalación y paso a Producción
Mantenimiento
En las anteriores etapas pueden variar ligeramente sus nombres o ser más globales, por ejemplo indicar como una única fase (a los fines documentales e interpretativos) el Análisis y el Diseño; o indicar como "Implementación" lo que está dicho como "Codificación"; pero en rigor, todas existen e incluyen, básicamente,las mismas tareas específicas.
Modelos de Proceso o Ciclo de Vida [editar]
Para cada una las fases o etapas listadas en el ítem anterior, existen sub-etapas (o tareas). El Modelo de Proceso o Modelo de Ciclo de Vida utilizado para el desarrollo define el orden para las tareas o actividades involucradas, también definen la coordinación entre ellas, enlace y realimentación entre las mencionadas etapas. Entre los más conocidos se puede mencionar: Modelo en Cascada o secuencial, Modelo Espiral, Modelo Iterativo Incremental. De los antedichos hay a su vez algunas variantes o alternativas, más o menos atractivas según sea la aplicación requerida y sus requisitos.
Modelo Cascada [editar]
El Modelo en cascada puro (conocido también como secuencial) difícilmente se utilice tal cual, pues esto implicaría un previo y absoluto conocimiento de los requisitos, la no volatilidad de los mismos (o rigidéz) y etapas subsiguientes libres de errores; ello sólo podría ser aplicable a escasos y pequeños desarrollos de sistemas. En estas circunstancias, el paso de una etapa a otra de las mencionadas sería sin retorno, por ejemplo pasar del Diseño a la Codificación implicaría un diseño exacto y sin errores ni probable modificación o evolución: "codifique lo diseñado que no habrán en absoluto variantes ni errores". Esto es utópico; ya que intríncecamente el software es de carácter evolutivo, cambiante y difícilmente libre de errores, tanto durante su desarrolllo como durante su vida operativa. Un cambio durante la ejecución de una etapa en este modelo puro podría implicar reinciar todo el ciclo completo, lo cual redundaría en altos costos de tiempo y desarrollo.
Sin embargo, el modelo cascada en algunas de sus variantes es uno de los más utilizados, por su eficacia y simplicidad, más que nada en software de pequeño y algunos de mediano porte; pero nunca (o muy rara vez) se lo usa en su forma pura, como se dijo anteriormente. En lugar de ello, siempre se produce alguna realimentación entre etapas, que no es completamente predecible ni rígida; esto da oportunidad al desarrollo de productos software en los cuales hay ciertas incertezas, cambios o evoluciones durante el ciclo de vida. Así por ejemplo, una vez capturados (elicitados) y especificados los requisitos (primera etapa) se puede pasar a un análisis y diseño del sistema, pero durante esta última fase lo más probable es que se deban realizar ajustes en los requisitos (aunque sean mínimos), ya sea por fallas detectadas, ambiguedades o bien por que los propios requisitos han cambiado o evolucionado; con lo cual se debe retornar a la primera o previa etapa, reajustarlos y luego continuar nuevamente con el diseño; esto último se conoce como realimentación. Lo normal en el modelo cascada será entonces la aplicación del mismo con sus etapas realimentadas de alguna forma, permitiendo retroceder de una a la anterior (e incluso salto a varias anteriores) si es requerido.
Lo dicho es, a grandes rasgos, la forma y utilización de este modelo, uno de los más usados y populares. El modelo Cascada Realimentado resulta muy atractivo, hasta ideal, si el proyecto presenta alta rigidéz (pocos o ningún cambio, no evolutivo) y los requisitos están muy bien especificados.
Hay más variantes similares al modelo: refino de etapas (más estapas, menores y más específicas) e incluso mostrar menos etapas de las indicadas, aunque en tal caso la faltante estará dentro de alguna otra. El orden de esas fases indicadas en el ítem previo es el lógico y adecuado, pero adviértase, como se dijo, que normalmente habrá realimentación hacia atrás.
Modelo Iterativo Incremental [editar]
Modelo Espiral [editar]
Etapas en el Desarrollo de Software [editar]
Captura y Especificación de requisitos [editar]
Análisis del Sistema [editar]
Diseño del Sistema [editar]
let_LADIOSA_
Codificación del software [editar]
Artículo principal: Software
Durante esta la etapa se realizan las tareas que comúnmente se conocen como programación; que consiste, escencialmente, en llevar a código fuente, en el lenguaje de programación elejido, todo lo diseñado en la fase anterior. Esta tarea la realiza el programador, siguiendo por completo los lineamientos impuestos en el diseño y en consideración siempre a los requisitos funcionales y no funcionales (ERS) especificados en la primera etapa.
Es común pensar que la etapa de programación o codificación (algunos la llaman implementación) es la que insume la mayor parte del trabajo de desarrollo del software; sin embargo, esto puede ser relativo (y generalmente aplicable a sistemas de pequeño porte) ya que las etapas previas son cruciales, críticas y pueden llevar bastante más tiempo. Se suele hacer estimaciones de un 30% del tiempo total insumido en la programación, pero esta cifra no es consistente ya que depende en gran medida de las características del sistema, su criticidad y el lenguaje de programación elegido. En tanto menor es el nivel del lenguaje mayor será el tiempo de programación requerido, así por ejemplo se tardaría más tiempo en codificar un algoritmo en Assembly que el mismo programado en lenguaje C.
Mientras se programa la aplicacion, sistema, o software en general, se realizan también tareas de depuración, esto es la labor de ir liberando al código de los errores factibles de ser hallados en esta fase (de semántica, sintáctica y lógica). Hay una suerte de solapamiento con la fase siguiente, ya que para depurar la lógica es necesario realizar pruebas unitarias, normalmente con datos de prueba; claro es que no todos los errores serán encontrados sólo en la etapa de programación, habrán otros que se encontrarán durante las etapas sibsiguientes. La aparición de algún error funcional (mala respuesta a los requerimientos) eventualmente puede llevar a retornar a la fase de análisis y diseño antes de continuar la codificación.
Durante la fase de programación, el código puede adoptar varios estados, dependiendo de la forma de trabajo y del lenguaje elegido, a saber:
Código fuente: Es el escrito directamente por los programadores en editores de texto, lo cual genera el programa. Contiene el conjunto de instrucciones codificadas en algún lenguaje de alto nivel. Puede estar distribuido en paquetes, procedimientos, librerías fuente, etc.
Código objeto: Es el código binario o intermedio resultante de procesar con un compilador el código fuente. Consiste en una traducción completa y de una sola vez de éste último. El código objeto no es inteligible por el ser humano (normalmente es formato binario) pero tampoco es directamente ejecutable por la computadora. Se trata de una representación intermedia entre el código fuente y el código ejecutable, a los fines de un enlace final con las rutinas de librería y entre procedimientos o bien para su uso con un pequeño intérprete intermedio [a modo de distintos ejemplos véase EUPHORIA, (intérprete intermedio), FORTRAN (compilador puro) MSIL (Microsoft Intermediate Language) (intérprete) y BASIC (intéprete puro, intérprete intermedio, compilador intermedio o compilador puro, depende de la versión utilizada)].
El código objeto no existe si el programador trabaja con un lenguaje a modo de intérprete puro, en este caso el mismo intérprete se encarga de traducir y ejecutar línea por línea el código fuente (de acuerdo al flujo del programa), en tiempo de ejecución. En este caso tampoco existe el o los archivos de código ejecutable. Una desventaja de esta modalidad es que la ejecución del programa o sistema es un poco más lenta que si se hiciera con un intérprete intermedio, y bastante más lenta que si existe el o los archivos de código ejecutable. Es decir no favorece el rendimiento en velocidad de ejecución. Pero una gran ventaja de la modalidad intérprete puro, es que el esta forma de trabajo facilita enormemente la tarea de depuración del código fuente (frente a la alternativa de hacerlo con un compilador puro). Frecuentemente se suele usar una forma mixta de trabajo (si el lenguaje de programación elejido lo permite), es decir inicialmente trabajar a modo de intérprete puro, y una vez depurado el código fuente (liberado de errores) se utiliza un compilador del mismo lenguaje para obtener el código ejecutable completo, con lo cual se agiliza la depuración y la velocidad de ejecución se optimiza.
Código ejecutable: Es el código binario resultado de enlazar uno o más fragmentos de código objeto con las rutinas y librerías necesarias. Constituye uno o más archivos binarios con un formato tal que el sistema operativo es capaz de cargarlo en la memoria RAM (eventualmente también parte en una memoria virtual), y proceder a su ejecución directa. Por lo anterior se dice que el código ejecutable es directamente "inteligible por la computadora". El código ejecutable, también conocido como código máquina, no existe si se programa con modalidad de "intérprete puro".
Referencias [editar]
↑ Real Academia Española. Significado de la palabra Software. Diccionario de la Lengua Española, XXIIº Edición. Consultado el 14 de marzo, 2008.
↑ IEEE Std, IEEE Software Engineering Standard: Glossary of Software Engineering Terminology. IEEE Computer Society Press, 1993
Debido a que el uso de Internet se encuentra en aumento, cada vez más compañías permiten a sus socios y proveedores acceder a sus sistemas de información. Por lo tanto, es fundamental saber qué recursos de la compañía necesitan protección para así controlar el acceso al sistema y los derechos de los usuarios del sistema de información. Los mismos procedimientos se aplican cuando se permite el acceso a la compañía a través de Internet.
Además, debido a la tendencia creciente hacia un estilo de vida nómada de hoy en día, el cual permite a los empleados conectarse a los sistemas de información casi desde cualquier lugar, se pide a los empleados que lleven consigo parte del sistema de información fuera de la infraestructura segura de la compañía.
Introducción a la seguridad
Los riesgos, en términos de seguridad, se caracterizan por lo general mediante la siguiente ecuación.
La amenaza representa el tipo de acción que tiende a ser dañina, mientras que la vulnerabilidad (conocida a veces como falencias (flaws) o brechas (breaches)) representa el grado de exposición a las amenazas en un contexto particular. Finalmente, la contramedida representa todas las acciones que se implementan para prevenir la amenaza.
Las contramedidas que deben implementarse no sólo son soluciones técnicas, sino también reflejan la capacitación y la toma de conciencia por parte del usuario, además de reglas claramente definidas.
Para que un sistema sea seguro, deben identificarse las posibles amenazas y por lo tanto, conocer y prever el curso de acción del enemigo. Por tanto, el objetivo de este informe es brindar una perspectiva general de las posibles motivaciones de los hackers, categorizarlas, y dar una idea de cómo funcionan para conocer la mejor forma de reducir el riesgo de intrusiones.
Objetivos de la seguridad informática
Generalmente, los sistemas de información incluyen todos los datos de una compañía y también en el material y los recursos de software que permiten a una compañía almacenar y hacer circular estos datos. Los sistemas de información son fundamentales para las compañías y deben ser protegidos.
Generalmente, la seguridad informática consiste en garantizar que el material y los recursos de software de una organización se usen únicamente para los propósitos para los que fueron creados y dentro del marco previsto.
La seguridad informática se resume, por lo general, en cinco objetivos principales:
· Integridad: garantizar que los datos sean los que se supone que son
· Confidencialidad: asegurar que sólo los individuos autorizados tengan acceso a los recursos que se intercambian
· Disponibilidad: garantizar el correcto funcionamiento de los sistemas de información
· Evitar el rechazo: garantizar de que no pueda negar una operación realizada.
· Autenticación: asegurar que sólo los individuos autorizados tengan acceso a los recursos
Confidencialidad
La confidencialidad consiste en hacer que la información sea ininteligible para aquellos individuos que no estén involucrados en la operación.
Integridad
La verificación de la integridad de los datos consiste en determinar si se han alterado los datos durante la transmisión (accidental o intencionalmente).
Disponibilidad
El objetivo de la disponibilidad es garantizar el acceso a un servicio o a los recursos.
No repudio
Evitar el repudio de información constituye la garantía de que ninguna de las partes involucradas pueda negar en el futuro una operación realizada.
Autenticación
La autenticación consiste en la confirmación de la identidad de un usuario; es decir, la garantía para cada una de las partes de que su interlocutor es realmente quien dice ser. Un control de acceso permite (por ejemplo gracias a una contraseña codificada) garantizar el acceso a recursos únicamente a las personas autorizadas.
Necesidad de un enfoque global
Frecuentemente, la seguridad de los sistemas de información es objeto de metáforas. A menudo, se la compara con una cadena, afirmándose que el nivel de seguridad de un sistema es efectivo únicamente si el nivel de seguridad del eslabón más débil también lo es. De la misma forma, una puerta blindada no sirve para proteger un edificio si se dejan las ventanas completamente abiertas.
Lo que se trata de demostrar es que se debe afrontar el tema de la seguridad a nivel global y que debe constar de los siguientes elementos:
· Concienciar a los usuarios acerca de los problemas de seguridad
· Seguridad lógica, es decir, la seguridad a nivel de los datos, en especial los datos de la empresa, las aplicaciones e incluso los sistemas operativos de las compañías.
· Seguridad en las telecomunicaciones: tecnologías de red, servidores de compañías, redes de acceso, etc.
· Seguridad física, o la seguridad de infraestructuras materiales: asegurar las habitaciones, los lugares abiertos al público, las áreas comunes de la compañía, las estaciones de trabajo de los empleados, etc.
Cómo implementar una política de seguridad
Generalmente, la seguridad de los sistemas informáticos se concentra en garantizar el derecho a acceder a datos y recursos del sistema configurando los mecanismos de autentificación y control que aseguran que los usuarios de estos recursos sólo posean los derechos que se les han otorgado.
Los mecanismos de seguridad pueden sin embargo, causar inconvenientes a los usuarios. Con frecuencia, las instrucciones y las reglas se vuelven cada vez más complicadas a medida que la red crece. Por consiguiente, la seguridad informática debe estudiarse de modo que no evite que los usuarios desarrollen usos necesarios y así puedan utilizar los sistemas de información en forma segura.
Por esta razón, uno de los primeros pasos que debe dar una compañía es definir una política de seguridad que pueda implementar en función a las siguientes cuatro etapas:
· Identificar las necesidades de seguridad y los riesgos informáticos que enfrenta la compañía así como sus posibles consecuencias
· Proporcionar una perspectiva general de las reglas y los procedimientos que deben implementarse para afrontar los riesgos identificados en los diferentes departamentos de la organización
· Controlar y detectar las vulnerabilidades del sistema de información, y mantenerse informado acerca de las falencias en las aplicaciones y en los materiales que se usan
· Definir las acciones a realizar y las personas a contactar en caso de detectar una amenaza
La política de seguridad comprende todas las reglas de seguridad que sigue una organización (en el sentido general de la palabra). Por lo tanto, la administración de la organización en cuestión debe encargarse de definirla, ya que afecta a todos los usuarios del sistema.
En este sentido, no son sólo los administradores de informática los encargados de definir los derechos de acceso sino sus superiores. El rol de un administrador de informática es el de asegurar que los recursos de informática y los derechos de acceso a estos recursos coincidan con la política de seguridad definida por la organización.
Es más, dado que el/la administrador/a es la única persona que conoce perfectamente el sistema, deberá proporcionar información acerca de la seguridad a sus superiores, eventualmente aconsejar a quienes toman las decisiones con respecto a las estrategias que deben implementarse, y constituir el punto de entrada de las comunicaciones destinadas a los usuarios en relación con los problemas y las recomendaciones de seguridad.
La seguridad informática de una compañía depende de que los empleados (usuarios) aprendan las reglas a través de sesiones de capacitación y de concientización. Sin embargo, la seguridad debe ir más allá del conocimiento de los empleados y cubrir las siguientes áreas:
· Un mecanismo de seguridad física y lógica que se adapte a las necesidades de la compañía y al uso de los empleados
· Un procedimiento para administrar las actualizaciones
· Una estrategia de realización de copias de seguridad (backup) planificada adecuadamente
· Un plan de recuperación luego de un incidente
· Un sistema documentado actualizado
Las causas de inseguridad
Generalmente, la inseguridad se puede dividir en dos categorías:
· Un estado de inseguridad activo; es decir, la falta de conocimiento del usuario acerca de las funciones del sistema, algunas de las cuales pueden ser dañinas para el sistema (por ejemplo, no desactivar los servicios de red que el usuario no necesita)
· Un estado de inseguridad pasivo; es decir, la falta de conocimiento de las medidas de seguridad disponibles (por ejemplo, cuando el administrador o usuario de un sistema no conocen los dispositivos de seguridad con los que cuentan)
Ventajas
Beneficio sociales y tecnológicos para el país El uso del software libre coadyuvaría a garantizar la educación de los individuos como está plasmado en el artículo 3ro constitucional, así como ayudaría al estado a garantizar el desarrollo nacional de manera integral y sustentable de la forma en que se plasma en el artículo 25 constitucional, pues los postulados de libertad en que está basado el software libre son totalmente compatibles con las tesis manejadas en el artículo referido.
Ahorros multimillonarios en la adquisición de licencias
Combate efectivo a la copia ilícita de software
Eliminación de barreras presupuestales
Beneficio social para el país
Beneficio tecnológico para el país
Muchos colaboradores de primera línea mexicanos dispuestos a ayudar
Tiempos de desarrollo sobre algo que no exista son menores por la amplia disponibilidad de herramientas y librerias
Las aplicaciones son fácilmente auditadas antes de ser usadas en procesos de misión crítica, además del hecho de que las más populares se encuentran muy depuradas.
(Extraído del documento de Miguel de Icaza) El Software Libre tiene las siguientes características:
Todo el mundo tiene derecho de usarlo sin costo alguno.
Todo el mundo tiene derecho a acceder a su diseño y aprender de él. Es como obtener las instrucciones para construir un carro.
Todo el mundo tiene derecho de modificarlo: si el software tiene limitaciones o no es adecuado para una tarea, es posible adaptarlo a necesidades específicas y redistribuirlo libremente.
No tiene un costo asociado (gratuito).
Es de libre distribución (cualquier persona puede regalarlo, venderlo o prestarlo).
Estos derechos típicamente no están disponibles con el software propietario.Usualmente en el software propietario hay que pagar una "licencia de uso" al creador (como el pago de derechos por el uso de una patente) y se está sujeto a las condiciones del fabricante. Normalmente estas condiciones no otorgan ningún derecho al usuario final.
Los derechos mencionados anteriormente tienen una serie de efectos colaterales sobre el Software:
Tiende a ser muy eficiente (por que mucha gente lo optimiza, mejora).
Tiende a ser muy robusto (mucha gente *puede* arreglarlo, no solamente el creador o la compañía que lo produce). Mucha gente tiende a contribuir, por que es en el interes de todos mejorar esta base común.
Tiende a ser muy diverso: la gente que contribuye tiene muchas necesidades diferentes y esto hace que el software esté adaptado a una cantidad más grande de problemas.
El éxito del Software Libre se debe en su mayor parte a Internet. Internet ha permitido que las personas interesadas en los varios componentes del software libre se pongan fácilmente en contacto con otras. Internet de esta manera actúa como un catalizador que acelera el desarrollo y sintetiza el conocimiento en áreas muy específicas. Hay diferentes motivaciones que impulsan a los contribuidores y desarrolladores a trabajar en el Software Libre, las más importantes son:
El deseo de crear nuevo software.
El deseo de crear software más robusto.
La posibilidad de estar en control del software. Esto es importante para aplicaciones de misión crítica donde es imperante tener un control total sobre posibles problemas en cualquier punto.
Crear aplicaciones de bajo costo.
Reutilización del conocimiento: Esto permite que la gente reutilice el conocimiento que se ha sintetizado en el software. En vez de empezar siempre desde cero (que es el caso de la industria de software actual) siempre se puede empezar un proyecto desde un fundamento establecido. Esto es equivalente a la manera en la que la ciencia se desarrolla: no se parte de cero, se parte de los descubrimientos previos y se innova sobre el conocimiento que ya se tiene.
La posibilidad de adaptar el software a sus necesidades
Aprender alguna técnica de programación.
Reconocimiento de colegas.
Lo mencionado arriba a dado cabida a que se desarrollen sistemas de cómputo que compiten en casi todos los niveles con los sistemas propietarios, pero no contemplan sistemas de marketing y son tradicionalmente esfuerzos que no son conocidos por el público en general.
3.2 Desventajas
La curva de aprendizaje es mayor
Si ponemos a dos señoras que nunca han tocado una PC, probablemente tardaran lo mismo en aprender a usar una windows que Gnome o KDE la otra...
El software libre no tiene garantía proveniente del autor
Los contratos de software propietario tampoco se hacen responsables por daños económicos, y de otros tipos por el uso de sus programas.
El software generalmente se vende "AS IS" (como está) sin garantías explicitas del fabricante, sin embargo, puede haber garantías específicas para situaciones muy específicas.
Se necesita dedicar recursos a la reparación de erratas
En el software propietario es imposible reparar erratas
No existiría una compañía única que respaldará toda la tecnología
Las interfaces amigables con el usuario (GUI) y la multimedia apenas se estan estabilizando.
Hay un número cada vez mayor de usuarios que aseguran que las interfaces gráficas más populares en el software libre (KDE, GNOME y el manejador de ventanas WindowMaker) son ya lo suficentemente estables para el uso cotidiano y lo suficientemente amigables para los neófitos.
La mayoría de la configuración de hardware no es intuitiva, se requieren conocimientos previos acerca del funcionamiento del sistema operativo y fundamentos del equipo a conectar para lograr un funcionamiento adecuado.
Sin embargo la documentación referente a la configuración del hardware es tan explícita y detallada que permite al usuario neófito profundizar en el conocimiento de su hardware en muy pocas horas y una vez teniendo ese conocimiento la configuración se vuelve trivial.
Únicamente los proyectos importantes y de trayectoría tienen buen soporte, tanto de los desarrolladores como de los usuarios; sin embargo existen muchos proyectos más pequeños y recientes que carecen del compromiso necesario por parte de sus usuarios o desarrolladores para que sean implementados de manera confiable.
Estos proyectos importantes que tienen un excelente soporte cubren más del 90% de las necesidades de cómputo del usuario promedio
El usuario debe tener nociones de programación, ya que la administración del sistema recae mucho en la automatización de tareas y esto se logra utilizando, en muchas ocasiones, lenguajes de guiones (perl, python, shell, etc).
Existen en la actualidad muchas herramientas visuales que permiten al usuario no técnico llevar a cabo tareas de configuración del sistema de una manera gráfica muy sencilla sin la necesidad de conocimientos de programación.
En sistemas con acceso a Internet, se deben de monitorear constantemente las correcciones de bugs de todos los programas que contengan dichos sistemas, ya que son fuentes potenciales de intrusión.
En el software propietario también se deben de monitorear constantemente las correcciones de bugs de todos los programas y además es imposible reparar las vulnerabilidades (que en su mayoría son reparaciones triviales) por uno mismo sino que hay que esperar a que la compañía fabricante libere la actualización y en algunos casos hay que pagar dinero extra por obtener esta.
Existen herramientas automatizadas de actualización de paquetes como apt-get, redcarpet, rpmget pero se pierde la opción de compilar por uno mismo a la medida o tener aplicaciones sin un canal.
La diversidad de distribuciones, métodos de empaquetamiento, licencias de uso, herramientas con un mismo fin, etc., pueden crear confusión en cierto número de personas.
Hay quienes ven esto como una fortaleza porque se pueden encontrar desde distribuciones especializadas en sistemas embebidos con muchas limitantes de almacenamiento y dispositivos periféricos de uso especializado hasta distribuciones optimizadas para su uso en servidores de alto rendimiento con varios procesadores y gran capacidad de almacenamiento; pasando por las distribuciones diseñadas para su uso en computadoras de escritorio y entre las cuales se encuentran las diseñadas para el usuario neófito que son muy fáciles de instalar y utilizar y las diseñadas para el usuario avanzado con todas las herramientea necesarias para explotar el software libre en todo su potencial.
Cabe notar que la posibilidad de crear distribuciones completamente a la medida para atacar situaciones muy específicas es una ventaja que muy pocas marcas de software propietario pueden ofrecer y que Microsoft ha sido completamente incapaz de hacer.
El hardware y el software son complementarios, es decir uno no funciona sin el otro.Ejemplo, la grabadora de CD es un hardware, para utilizarlo necesitas un sistema operativo y un programa de grabacion (softwares).El mouse, el teclado, el modem, son todos hardwares, es la parte tangible del ordenador a traves de la cual podemos darle ordenes al computador y recibir respuestas de él.Por tanto no solo es importante, sino imprescindible
como son:mouse, teclado,scanner, pluma optica. Medios de salida:monitor, e impresoras, y los medios de almacenamiento que son:los circuitos integrados como lo son , el procesador, la memoria RAM (temporal, RANDOM ACCESS MEMORY) , como la memoria ROM (READ ONLY MEMORY, es el disco duro), lectores de diskettes y CD´s, quemadores, reproductores DVD en computadoras recientes. dentro del CPU cuenta como hardware cables y fuente de alimentacion. El software son todos los programas que se ejecutan en una computadora, como windows, internet explorer, office, works, etc. En resumen.El software son todos los programas que se ejecutan en una computadora y el hardware son los medios para ejecutar el software...ambos son importantes, ya que sin alguno de ellos, el otro no tendria sentido de existir.
El hardware es importante, porque protege los dispositivos internos del PC, los protege contra el polvo, roedores que puedan comer los cables, líquidos, golpes, etc. Solo imagina como tendrías tu ropa tu no la guardaras en un closet.
El hardware es lo que hace funcionar tu computador (cpu. ram. board, etc), si tienes una buena cpu y bastante ram puedes correr programas de alto desempeño.
Multimedia es un término que se aplica a cualquier objeto que usa simultáneamente diferentes formas de contenido informativo como texto, sonido, imágenes, animación y video para informar o entretener al usuario. También se puede calificar como multimedia a los medios electrónicos (u otros medios) que permiten almacenar y presentar contenido multimedia. Multimedia es similar al empleo tradicional de medios mixtos en las artes plásticas, pero con un alcance más amplio. Se habla de multimedia interactiva cuando el usuario tiene cierto control sobre la presentación del contenido, como qué desea ver y cuándo desea verlo. Hipermedia puede considerarse como una forma especial de multimedia interactiva que emplea estructuras de navegación más complejas que aumentan el control del usuario sobre el flujo de la información.
Este concepto es tan antiguo como la comunicación humana ya que al expresarnos en una charla normal hablamos (sonido), escribimos (texto), observamos a nuestro interlocutor (video) y accionamos con gestos y movimientos de las manos (animación). Con el auge de las aplicaciones multimedia para computador este vocablo entró a formar parte del lenguaje habitual.
Cuando un programa de computador, un documento o una presentación combina adecuadamente los medios, se mejora notablemente la atención, la comprensión y el aprendizaje, ya que se acercará algo más a la manera habitual en que los seres humanos nos comunicamos, cuando empleamos varios sentidos para comprender un mismo objeto o concepto.
Categorización [editar]
Presentaciónlineal
Interactividadno lineal
Multimedia puede dividirse en dos categorías principales multimedia lineal y multimedia no lineal. El contenido lineal avanza sin que el usuario tenga control sobre la navegación; una película de cine sería un ejemplo de esto. El contenido no lineal le ofrece al usuario la interactividad necesaria para controlar el progreso de la presentación tal como ocurre en los videojuegos o en el e-learning. Cuando el contenido se presenta en una forma no lineal hablamos de hipermedia.
Las presentaciones multimedia pueden estar grabadas o pueden llevarse a cabo en vivo. Una presentación grabada puede permitir la interactividad por medio de un sistema de navegación espacial. Una presentación multimedia en vivo puede permitir la interactividad por medio del actor o presentador.
Características [editar]
Grabadolocalmente
Transmitidoen línea
Las presentaciones multimedia pueden verse en un escenario, proyectarse, transmitirse, o reproducirse localmente en un dispositivo por medio de un reproductor multimedia. Una transmisión puede ser una presentación multimedia en vivo o grabada. Las transmisiones pueden usar tecnología tanto analógica como digital. Multimedia digital en línea puede descargarse o transmitirse en flujo (usando streaming). Multimedia en flujo puede estar disponible en vivo o por demanda.
Los juegos y simulaciones multimedia pueden usarse en ambientes físicos con efectos especiales, con varios usuarios conectados en red, o localmente con un computador sin acceso a una red, un sistema de videojuegos, o un simulador.
Los diferentes formatos de multimedia analógica o digital tienen la intención de mejorar la experiencia de los usuarios, por ejemplo para que la comunicación de la información sea más fácil y rápida. O en el entretenimiento y el arte, para trascender la experiencia común.
Un espectáculo láser es un evento multimedia en vivo.
Los niveles mejorados de interactividad son posibles gracias a la combinación de diferentes formas de contenido. Multimedia en línea se convierte cada vez más en una tecnología orientada a objetos e impulsada por datos, permitiendo la existencia de aplicaciones con innovaciones en el nivel de colaboración y la personalización de las distintas formas de contenido. Ejemplos de esto van desde las galerías de fotos que combinan tanto imágenes como texto actualizados por el usuario, hasta simulaciones cuyos coeficientes, eventos, ilustraciones, animaciones o videos se pueden modificar, permitiendo alterar la "experiencia" multimedia sin tener que programar. Además de ver y escuchar, la tecnología Háptica permite sentir objetos virtuales. Las tecnologías emergentes que involucran la ilusión de sabor y olor también puede mejorar la experiencia multimedia.
Uso [editar]
La multimedia encuentra su uso en varias áreas incluyendo pero no limitado a: arte, educación, entretenimiento, ingeniería, medicina, matemáticas, negocio, y la investigación científica. En la educación, la multimedia se utiliza para producir los cursos de aprendizaje computarizado (popularmente llamados CBTs) y los libros de consulta como enciclopedia y almanaques. Un CBT deja al usuario pasar con una serie de presentaciones, de texto sobre un asunto particular, y de ilustraciones asociadas en varios formatos de información. El sistema de la mensajería de la multimedia, o MMS, es un uso que permite que uno envíe y que reciba los mensajes que contienen la multimedia - contenido relacionado. MMS es una característica común de la mayoría de los teléfonos celulares. Una enciclopedia electrónica multimedia puede presentar la información de maneras mejores que la enciclopedia tradicional, así que el usuario tiene más diversión y aprende más rápidamente. Por ejemplo, un artículo sobre la segunda guerra mundial puede incluir hyperlinks (hiperligas o hiperenlaces) a los artículos sobre los países implicados en la guerra. Cuando los usuarios hayan encendido un hyperlink, los vuelven a dirigir a un artículo detallado acerca de ese país. Además, puede incluir un vídeo de la campaña pacífica. Puede también presentar los mapas pertinentes a los hyperlinks de la segunda guerra mundial. Esto puede acelerar la comprensión y mejorar la experiencia del usuario, cuando está agregada a los elementos múltiples tales como cuadros, fotografías, audio y vídeo. (También se dice que alguna gente aprende mejor viendo que leyendo, y algunos escuchando).
La multimedia es muy usada en la industria del entretenimiento, para desarrollar especialmente efectos especiales en películas y la animación para los personajes de caricaturas. Los juegos de la multimedia son un pasatiempo popular y son programas del software como CD-ROMs o disponibles en línea. Algunos juegos de vídeo también utilizan características de la multimedia. Los usos de la multimedia permiten que los usuarios participen activamente en vez de estar sentados llamados recipientes pasivos de la información, la multimedia es interactiva.
Tipos de información multimedia:
Texto: sin formatear, formateado, lineal e hipertexto.
Gráficos: utilizados para representar esquemas, planos, dibujos lineales...
Imágenes: son documentos formados por pixeles. Pueden generarse por copia del entorno (escaneado, fotografía digital) y tienden a ser ficheros muy voluminosos.
Animación: presentación de un número de gráficos por segundo que genera en el observador la sensación de movimiento.
Vídeo: Presentación de un número de imágenes por segundo, que crean en el observador la sensación de movimiento. Pueden ser sintetizadas o captadas.
Sonido: puede ser habla, música u otros sonidos.
El trabajo multimedia está actualmente a la orden del día y un buen profesional debe seguir unos determinados pasos para elaborar el producto.
Definir el mensaje clave. Saber qué se quiere decir. Para eso es necesario conocer al cliente y pensar en su mensaje comunicacional. Es el propio cliente el primer agente de esta fase comunicacional.
Conocer al público. Buscar qué le puede gustar al público para que interactúe con el mensaje. Aquí hay que formular una estrategia de ataque fuerte. Se trabaja con el cliente, pero es la agencia de comunicación la que tiene el protagonismo. En esta fase se crea un documento que los profesionales del multimedia denominan "ficha técnica", "concepto" o "ficha de producto". Este documento se basa en 5 ítems: necesidad, objetivo de la comunicación, público, concepto y tratamiento.
Desarrollo o guión. Es el momento de la definición de la Game-play: funcionalidades, herramientas para llegar a ese concepto. En esta etapa sólo interviene la agencia que es la especialista.
Creación de un prototipo. En multimedia es muy importante la creación de un prototipo que no es sino una pequeña parte o una selección para testear la aplicación. De esta manera el cliente ve, ojea, interactúa... Tiene que contener las principales opciones de navegación.
Ahora ya se está trabajando con digital, un desarrollo que permite la interactividad. Es en este momento cuando el cliente, si está conforme, da a la empresa el dinero para continuar con el proyecto. En relación al funcionamiento de la propia empresa, está puede presuponer el presupuesto que va a ser necesario, la gente que va a trabajar en el proyecto (lista de colaboradores). En definitiva, estructura la empresa. El prototipo es un elemento muy importante en la creación y siempre va a ser testeado (público objetivo y encargados de comprobar que todo funciona)
Creación del producto. En función de los resultados del resteo del prototipo, se hace una redefinición y se crea el producto definitivo,el esquema del multimedia
la creacion del hardware, la perdicion del usuario y la redencion a través del linux
acojamos con los brazos abiertos las enseñanzas santas de tux
1. En el principio DIOS creó el bit y el byte. Y con ellos creó lapalabra
2. Y había dos Bytes en la palabra; y nada mas existía. Y Dios separóel Uno del cero: y vio que era bueno.
3. Y Dios dijo: que se hagan los Datos; y así pasó. Y Dios dijo:Dejemos los Datos en sus correspondientes sitios. Y creó los disquetes, los disco duros y los discos compactos.
4. Y Dios dijo: que se hagan los ordenadores, así habrá un lugar paraponer los disquetes, los discos duros y los discos compactos. Así Dios creó alos ordenadores, les llamó hardware.
5. Pero aun no había software. Pero Dios creó los programas; grandes ypequeños...Y les dijo: Creced y multiplicaos y llenad toda la memoria.
6. Y Dios dijo: crearé el programador; y el Programador creará nuevosprogramas y gobernará los ordenadores y los programas y los datos.
7. Y Dios creó al Programador; y lo puso en el Centro de Datos; y Diosle enseñó al Programador el Directorio y le dijo: Puedes usar todos losvolúmenes y subdirectorios, pero NO USES WINDOWS
8. Y Dios dijo: no es bueno que el programador esté solo. Cogió unhueso del cuerpo del Programador y creo una criatura que miraría alProgramador y admiraría al Programador y amaría las cosas que el programador hiciese. Y Dios llamó a la criatura: el Usuario.
9. Y el Programador y el Usuario fueron dejados en el desnudo DOS y esoera bueno.
10. Pero Bill era más listo que todas las otras criaturas de Dios. yBill le dijo al Usuario: ¿Te dijo Dios realmente que no ejecutaras todos losprogramas?
11. Y el Usuario respondió: Dios nos dijo que podíamos usar cualquierprograma y cualquier pedazo de datos, pero nos dijo que no ejecutásemosWindows o moriríamos.
12. Y Bill le dijo al Usuario: ¿Cómo puedes hablar de algo que inclusono has probado?. En el momento en que ejecutes Windows serás igual a Dios.Serás capaz de crear cualquier cosa que quieras con el simple toque delratón.
13. Y el Usuario vio que los frutos del Windows eran más bonitos yfáciles de usar. Y el Usuario vio que todo conocimiento era inútil ya que Windows podía reemplazrlo.
14. Así el Usuario instaló Windows en su ordenador; y le dijo alProgramador que era bueno.
15. Y el Programador inmediatamente empezó a buscar nuevoscontroladores.Y Dios le pregunto: ¿que buscas? Y el Programador respondió: Estoybuscando nuevos controladores, porque no puedo encontrarlos en el DOS.Y Dios dijo: ¿quien te dijo que necesitabas nuevos controladores?¿acaso ejecutaste Windows? Y el progrmaador dijo: fue Bill, quien nos lodijo...
16. Y Dios le dijo a Bill: Por lo que hiciste, serás odiado por todaslas criaturas. Y el Usuario siempre estará descontento contigo. Y siemprevenderás Windows.
17. Y Dios le dijo al Usuario: por lo que hiciste, el Windows tedecepcionará y se comerátodos tus recursos; y tendrás que usar malos programas; y siempre permanecerás bajo la ayuda del Programador.
18. Y Dios le dijo al Programador: por haber escuchado al Usuario nuncaserás feliz. Todos tus programas tendrán errores y tendrás que corregirlos ycorregirlos hasta el fin de los tiempos.
19. Y Dios echó a todos del Centro de Datos y bloqueó la puerta deentrada con una password.
Mandamientos de linux :
Y habló Diós todo esto, diciendo:
"Yo soy Linux, tu Dios, que te he sacado de la tierra de Microsoft, de la casa de la servidumbre"* No tendrás otro Dios que a mí, pero te dejo coquetear con cualquier sistema que funcione.* No instalarás sistemas operativos monopolistas, ni te prosternarás ante ellos, y no los servirás, porque soy un Dios celoso...* No utilizaras software propietario.* Navegarás por páginas que soporten Lynx* No tomarás el nombre de Linux en vano* Santificarás los demonios y las fiestas jugando al Cibermús.* Honrarás a los profetas de Linux, a aquellos que contribuyen.* Cerrarás tu puerto de finger. No saldrás a la red como root.* No adorarás ídolos en forma de tarjetas multipuerto a 9600 baudios.* El primer juego que ejecutes será el Xbill, y Sí Matarás.Sí adulterarás, y te harás compatible con cuantos sistemas se dejen.* Realizarás ingeniería inversa.* No levantarás falso testimonio contra el kernel. No tiene bugs.
Estos mandamientos se resumen en dos:
amarás a Linux sobre todas las cosas y al OpenSource como a tí mismo.
Originalmente escrito en http://www.frikis.org/article.php?story=20030526104216388aunque yo lo saque de http://www.gnu-ufps.org/
Programas de utilidad
Stat: es uno de los mas útiles dentro del CP/M ya que tiene diversos usos relacionados con el manejo de fichero y discos, sus funciones son:
o Obtención información sobre el espacio libre del disco y el estatus de protección del mismo
o Obtención de un estado de fichero de un disco (tamaño del mismo, estatus de información y el espacio libre del disco)
o Modificación del estatus de protección. Es posible proteger o desproteger tanto ficheros como discos en su totalidad
o Protección de ficheros contra el comando DIR
o Obtiene información sobre el usuario en que se esta trabajando
o Obtención de las características del disco (capacidad Kbytes, número de registro, etc.)
Pip:
o Este copia de un fichero a sobre el mismo disco
o Copia de un fichero de un disco a otro.
o Concatenación de fichero (unir varios fichero a uno solo, empleando uno o varios discos)
o Copia de un fichero desde un disco a un periférico o viceversa.
o Copia de datos entre dispositivos.
Ed:
o Se pueden crear varios ficheros
o Se pueden modificar los ficheros
o En una sesión de trabajo este puede indicar la línea donde se va a realizar la siguiente operación, por medio de un puntero
o Se puede introducir texto en mitad de una línea ya sea mayúscula o minúscula
o El trabajo de una edición se puede o no salvar
Submit:
o Relacionado con la ejecución de un fichero especial que contienen una secuencia de comandos CP/M
o Se manifiesta en el momento de realizar varias operaciones de forma repetida
o Para utilizar el programa es necesario crear el fichero especial que procesa el comando. Este fichero desaparece al acabar el procedimiento de todo la secuencia de comandos.
Xsub:
o Este programa aumenta la automatización el procedimiento de los ficheros.
o Es posible modificar un programa, ejecutarlo, responder a sus peticiones durante la ejecución, etc.
Asm
o Es el programa ensamblador del CP/M que permite pasar de código fuente ensamblador a código del 8080.
o Estos programas par hacer utilizados deben sufrir una segunda conversión a ficheros .COM mediante el programa de utilidad LOAD.COM.
o Se puede especificar la unidad de disco de los ficheros de entrada como los de salida.
Load
o Este programa (LOAD.COM) tiene como misión convertir ficheros de formato hexadecimal (.HEEX) en fichero ejecutables con código maquina (.COM)
Ddt (DDT.COM)
o Es una herramienta para la producción en ensamblador
o Permite ver comprobar y verificar programas en código maquina , así como depurar esto de forma dinámica, durante ejecuciones realizadas paso a paso
o Este se carga sobre la CCP (sección de memoria que contiene el procesador de programas de consola)
o Lectura de un fichero en memoria
o Listado de una zona de memoria cuyo contenido es un programa (codigo exadisimal y código sin ensamblar de cada instrucción)
o Movimiento de bloque de memoria a otra dirección
Dump
o Sacar por pantalla los contenidos de un fichero con códigos de maquina, en formato exadesimal
o También es posible sacar el contenido de ficheros .COM
o Este comando es similar a la opción "D" dentro del programa de DDT
Sysgen
o Es la copia del sistema operativo CP/M de un disco a otro
o En los equipos que incorpora disco duro, este comando es capaz de realizar copias de sistema operativos
¿Se puede utilizar un computador sin sistema operativo?.
NO. Por que unos de los pasos por el cual la computadora de pasar al ser encendida, es el de buscar un programa llamado "SISTEMA OPERATIVO". Este es el que va ha indicar al usuario como usar los dispositivos: discos duros, teclado y monitor. La computadora una vez encontrado carga este programa en su memoria. Este programa también se encarga de controlar otras funciones basicas de la computadora y por ello se mantiene activo hasta que la maquina sea apagada.
¿Cuál interfase es mas comoda para el usuario, una con interpretes de comando o una interfase grafica?.
La interfase mas comoda es la interfase grafica, ya que es de mayor comodidad para el usuario.
Este implementa un concepto de ventanas, un papel para insertar datos o información que un programa o comando ha generado, con este se puede cambiar el tamaño o forma para ver la información dentro de ella.
Este implementa menús, iconos y caja de dialogos que facilitan el uso de esta interfase.
Los menús ofrecen opciones de comando, este utilizado con el mouse o el teclado para mayor comodidad del usuario. Adicionalmente están los iconos los cuales, pueden ser utilizado por cualquier persona que nunca antes haya trabajado con computadora. Por tal motivo, la interfase grafica es más comoda que los interpretes de comando, puesto que estos requieren de que el usuario posea un conocimiento previo del programa.
Suscribirse a:
Enviar comentarios (Atom)
No hay comentarios:
Publicar un comentario