eddyfallas
Usuario (Costa Rica)

Programa informático Un programa informático es un conjunto de instrucciones que una vez ejecutadas realizarán una o varias tareas en una computadora. Sin programas, estas máquinas no pueden funcionar. Al conjunto general de programas, se le denomina software, que más genéricamente se refiere al equipamiento lógico o soporte lógico de una computadora digital. En informática, se los denomina comúnmente binarios, (propio en sistemas unix, donde debido a la estructura de este último, los ficheros no necesitan hacer uso de extensiones. Posteriormente, los presentaron como ficheros ejecutables, con extensión .exe, en los sistemas operativos de la familia Windows) debido a que una vez que han pasado por el proceso de compilación y han sido creados, las instrucciones que se escribieron en un lenguaje de programación que los humanos usan para escribirlos con mayor facilidad, se han traducido al único idioma que la máquina comprende, combinaciones de ceros y unos llamada código máquina. El mismo término, puede referirse tanto a un programa ejecutable, como a su código fuente, el cual es transformado en un binario cuando es compilado. Generalmente el código fuente lo escriben profesionales conocidos como programadores. Se escribe en un lenguaje que sigue uno de los siguientes dos paradigmas: imperativo o declarativo y que posteriormente puede ser convertido en una imagen ejecutable por un compilador. Cuando se pide que el programa sea ejecutado, el procesador ejecuta instrucción por instrucción. De acuerdo a sus funciones, se clasifican en software de sistema y software de aplicación. En los computadores actuales, al hecho de ejecutar varios programas de forma simultánea y eficiente, se le conoce como multitarea. Ejecución Una vez escritos, pueden ser ejecutados de diversas formas: * Mediante un programa que va adaptando las instrucciones conforme son encontradas. A este proceso se lo llama interpretar y a los programas que lo hacen se los conoce como intérpretes. Ejemplos de esto son bash, clásico en estaciones Unix y que fue escrito para el proyecto GNU o Python, cuya peculiaridad además de ser multipropósito, está en su facilidad de uso y productividad y de hecho, es usado en parte de los proyectos Google y YouTube. * Traduciendo el código escrito del programa (lo que se denomina código fuente), a su equivalente en lenguaje máquina. A este proceso se le llama compilar y al programa traductor se le denomina compilador. Ejemplos de esto son: El lenguaje C, que combina en su sintaxis características de medio y bajo nivel y el compilador gcc usado en el proyecto GNU. Programas que se auto-modifican Un programa en ejecución se trata de forma diferente que los datos en los cuales opera. De cualquier forma, en algunos casos ésta distinción es ambigua, especialmente cuando un programa se modifica a sí mismo. El programa modificado es secuencialmente ejecutado como parte del mismo programa. Se pueden escribir programas auto-modificables en lenguajes como Lisp, COBOL y Prol Ejecución y almacenamiento de los programas Típicamente, los programas se almacenan en una memoria no volátil (por ejemplo un disco), para que luego el usuario de la computadora, directa o indirectamente, solicite su ejecución. Al momento de dicha solicitud, el programa es cargado en la memoria de acceso aleatorio o RAM del equipo, bajo el control del software llamado sistema operativo, el cual puede acceder directamente al procesador. El procesador ejecuta (corre) el programa, instrucción por instrucción hasta que termina. A un programa en ejecución se le suele llamar también proceso. Un programa puede terminar su ejecución en forma normal o por causa de un error, dicho error puede ser de software o de hardware. Programas empotrados en hardware Algunos programas están empotrados en el hardware. Una computadora con arquitectura de programas almacenados requiere un programa inicial almacenado en su ROM para arrancar. El proceso de arranque es para identificar e inicializar todos los aspectos del sistema, desde los registros del procesador, controladores de dispositivos hasta el contenido de la memoria RAM.[4] Seguido del proceso de inicialización, este programa inicial carga al sistema operativo e inicializa al contador de programa para empezar las operaciones normales. Independiente de la computadora, un dispositivo de hardware podría tener firmware empotrado para el control de sus operaciones. El firmware se utiliza cuando se espera que el programa cambie en raras ocasiones o nunca, o cuando el programa no debe perderse cuando haya ausencia de energía. El microcontrolador a la derecha de la Memoria USB está controlada por un firmware empotrado. Programas cargados manualmente Interruptores para la carga manual en una Data General Nova 3. Los programas históricamente se cargaron manualmente al procesador central mediante interruptores. Una instrucción era representada por una configuración de estado abierto o cerrado de los interruptores. Después de establecer la configuración, se ejecutaba un botón de ejecución. Este proceso era repetitivo. También, históricamente los programas se cargaban manualmente mediante una cinta de papel o tarjetas perforadas. Después de que el programa se cargaba, la dirección de inicio se establecía mediante interruptores y el botón de ejecución se presionaba. Interruptores para la carga manual en una Data General Nova 3. Programas generados automáticamente La programación automática es un estilo de programación que crea código fuente mediante clases genéricas, prototipos, plantillas, aspectos, y generadores de código para aumentar la productividad del programador. El código fuente se genera con herramientas de programación tal como un procesador de plantilla o un IDE. La forma más simple de un generador de código fuente es un procesador macro, tal como el preprocesador de C, que reemplaza patrones de código fuente de acuerdo a reglas relativamente simples. Un motor de software da de salida código fuente o lenguaje de marcado que simultáneamente se vuelve la entrada de otro proceso informático. Podemos pensar como analogía un proceso manejando a otro siendo el código máquina quemado como combustible. Los servidores de aplicaciones son motores de software que entregan aplicaciones a computadoras cliente. Por ejemplo, un software para wikis es un sevidor de aplicaciones que permite a los usuarios desarrollar contenido dinámico ensamblado a partir de artículos. Las Wikis generan HTML, CSS, Java, y Javascript los cuales son interpretados por un navegador web. Ejecución simultánea Muchos programas pueden correr simultáneamente en la misma computadora, a lo cual se le conoce como multitarea y puede lograrse a través de mecanismos de software o de hardware. Los sistemas operativos modernos pueden correr varios programas a través del planificador de procesos — un mecanismo de software para conmutar con frecuencia la cantidad de procesos del procesador de modo que los usuarios puedan interactuar con cada programa mientras estos están corriendo. También se puede lograr la multitarea por medio del hardware; las computadoras modernas que usan varios procesadores o procesadores con varios núcleos pueden correr muchos programas a la vez. Categorías funcionales Los programas se pueden categorizar según líneas funcionales. Estas categorías funcionales son software de sistema y software de aplicación. El software de sistema incluye al sistema operativo el cual acopla el hardware con el software de aplicación. El propósito del sistema operativo es proveer un ambiente en el cual el software de aplicación se ejecuta de una manera conveniente y eficiente.Además del sistema operativo, el software de sistema incluye programas utilitarios que ayudan a manejar y configurar la computadora. Si un programa no es software de sistema entonces es software de aplicación. El middleware también es un software de aplicación que acopla el software de sistema con la interfaz de usuario. También son software de aplicación los programas utilitarios que ayudan a los usuarios a resolver problemas de aplicaciones, como por ejemplo la necesidad de ordenamiento. Que les sirva la informacion comenten por favor XD XD XD

Que es un clon o clonacion! En genética, un clon (griego κλων klōn, ‘retoño’) es un conjunto de individuos genéticamente idénticos que descienden de un mismo individuo por mecanismos de reproducción asexual. El término fue creado en 1903 por H. J. Webber con la explícita intención de contribuir al desarrollo léxico de la entonces nueva ciencia de la Genética, y ese uso es el único válido en el lenguaje científico. Respondía a la necesidad de referirse a una variedad de cultivo multiplicada exclusivamente de manera vegetativa (mediante esquejes o estacas), como era y es común respecto a los árboles frutales. Los individuos generados así son genéticamente idénticos, lo mismo que los que se obtienen por partenogénesis o incluso por mecanismos sexuales de reproducción cuando la homocigosis es completa y la recombinación genética imposible. Puede llamarse reproducción clonal a la reproducción asexual, aunque no es un uso muy extendido. En los últimos decenios ha ido creciendo otra acepción, popularizada por la prensa y el cine, de acuerdo con la cual un clon es un individuo idéntico a otro obtenido por técnicas genéticas más o menos imaginarias. Los clones así definidos no existen, en la medida en que el fenotipo no depende sólo del genotipo, sino de mecanismos epigenéticos y de desarrollo en los que intervienen otros factores. Este uso actual del término clon puede rastrearse hasta el libro El shock del futuro (1970) del influyente periodista y activista estadounidense Alvin Toffler. En la naturaleza la reproducción asexual o clonal es muy frecuente, especialmente entre organismos unicelulares, como bacterias y muchos protistas, aunque casi siempre alternando con fases de reproducción sexual (o parasexual), que aumentan la diversidad genotípica de la población. Clonación Del uso popular de clon deriva el de clonación. La clonación es la acción de producir una entidad biológica (gen, cromosoma, célula u organismo) genéticamente idéntica a otra a partir de una existente. En contextos científicos el término se usa principalmente para la reproducción idéntica de moléculas hereditarias (clonación de ADN). La clonación de organismos es practicada sin conocimientos técnicos especiales en la mayoría de las plantas vivaces, por medio de esquejes o estacas. En animales se producen nuevos individuos a partir de fragmentos del cuerpo de otros en grupos relativamente simples, como las planarias, o con elevadas capacidades de regeneración espontánea, como anélidos (lombrices de tierra) o equinodermos (estrellas de mar). La clonación artificial de vertebrados se basa en sustituir el núcleo de un óvulo sin fecundar, por el núcleo de una célula adulta del individuo que se quiere clonar. Resulta así el equivalente a un cigoto viable. La técnica (llamada de transferencia nuclear) se aplicó con éxito a ranas desde 1952, pero no se logró con mamíferos hasta hace una década. Calendario de éxitos: * Ranas (1952) * Oveja Dolly (1996) * Ratones (1997) * Ganado (Bovino, caprino y porcino) (2000) * Un gato doméstico (2004) * Se investiga la clonación de embriones Implicaciones bioéticas La clonación, en el sentido de multiplicación asexual, de seres humanos no debe tener a la larga obstáculos técnicos insalvables, lo que ha dado lugar a un intenso debate ético y político sobre la forma de tratar la llamada clonación reproductiva. El problema ético reside en las oportunidades de instrumentalización de la vida humana a la que se presta. Algunos imaginan un problema con respecto a la identidad de los individuos nacidos, si bien los gemelos idénticos (o monocigóticos) son el resultado de un modo excepcional de multiplicación asexual, por escisión espontánea de un embrión normal. Los gemelos idénticos son un clon (o clon el uno del otro, según el uso popular), sin que nadie nunca haya dudado de la posesión por ellos de identidades personales separadas. La legislación es variable entre países, y tiende a distinguir la clonación de embriones con fines terapéuticos, de la clonación reproductiva, tendente a formar seres humanos completos. Les agradesco su tiempo comenten !!!!!!!

Que es un clon o clonacion! En genética, un clon (griego κλων klōn, ‘retoño’) es un conjunto de individuos genéticamente idénticos que descienden de un mismo individuo por mecanismos de reproducción asexual. El término fue creado en 1903 por H. J. Webber con la explícita intención de contribuir al desarrollo léxico de la entonces nueva ciencia de la Genética, y ese uso es el único válido en el lenguaje científico. Respondía a la necesidad de referirse a una variedad de cultivo multiplicada exclusivamente de manera vegetativa (mediante esquejes o estacas), como era y es común respecto a los árboles frutales. Los individuos generados así son genéticamente idénticos, lo mismo que los que se obtienen por partenogénesis o incluso por mecanismos sexuales de reproducción cuando la homocigosis es completa y la recombinación genética imposible. Puede llamarse reproducción clonal a la reproducción asexual, aunque no es un uso muy extendido. En los últimos decenios ha ido creciendo otra acepción, popularizada por la prensa y el cine, de acuerdo con la cual un clon es un individuo idéntico a otro obtenido por técnicas genéticas más o menos imaginarias. Los clones así definidos no existen, en la medida en que el fenotipo no depende sólo del genotipo, sino de mecanismos epigenéticos y de desarrollo en los que intervienen otros factores. Este uso actual del término clon puede rastrearse hasta el libro El shock del futuro (1970) del influyente periodista y activista estadounidense Alvin Toffler. En la naturaleza la reproducción asexual o clonal es muy frecuente, especialmente entre organismos unicelulares, como bacterias y muchos protistas, aunque casi siempre alternando con fases de reproducción sexual (o parasexual), que aumentan la diversidad genotípica de la población. Clonación Del uso popular de clon deriva el de clonación. La clonación es la acción de producir una entidad biológica (gen, cromosoma, célula u organismo) genéticamente idéntica a otra a partir de una existente. En contextos científicos el término se usa principalmente para la reproducción idéntica de moléculas hereditarias (clonación de ADN). La clonación de organismos es practicada sin conocimientos técnicos especiales en la mayoría de las plantas vivaces, por medio de esquejes o estacas. En animales se producen nuevos individuos a partir de fragmentos del cuerpo de otros en grupos relativamente simples, como las planarias, o con elevadas capacidades de regeneración espontánea, como anélidos (lombrices de tierra) o equinodermos (estrellas de mar). La clonación artificial de vertebrados se basa en sustituir el núcleo de un óvulo sin fecundar, por el núcleo de una célula adulta del individuo que se quiere clonar. Resulta así el equivalente a un cigoto viable. La técnica (llamada de transferencia nuclear) se aplicó con éxito a ranas desde 1952, pero no se logró con mamíferos hasta hace una década. Calendario de éxitos: * Ranas (1952) * Oveja Dolly (1996) * Ratones (1997) * Ganado (Bovino, caprino y porcino) (2000) * Un gato doméstico (2004) * Se investiga la clonación de embriones Implicaciones bioéticas La clonación, en el sentido de multiplicación asexual, de seres humanos no debe tener a la larga obstáculos técnicos insalvables, lo que ha dado lugar a un intenso debate ético y político sobre la forma de tratar la llamada clonación reproductiva. El problema ético reside en las oportunidades de instrumentalización de la vida humana a la que se presta. Algunos imaginan un problema con respecto a la identidad de los individuos nacidos, si bien los gemelos idénticos (o monocigóticos) son el resultado de un modo excepcional de multiplicación asexual, por escisión espontánea de un embrión normal. Los gemelos idénticos son un clon (o clon el uno del otro, según el uso popular), sin que nadie nunca haya dudado de la posesión por ellos de identidades personales separadas. La legislación es variable entre países, y tiende a distinguir la clonación de embriones con fines terapéuticos, de la clonación reproductiva, tendente a formar seres humanos completos. Les agradesco su tiempo comenten !!!!!!!

Que es un sistema operativo? Un sistema operativo (SO) es el programa o conjunto de programas que efectúan la gestión de los procesos básicos de un sistema informático, y permite la normal ejecución del resto de las operaciones. Nótese que es un error común muy extendido denominar al conjunto completo de herramientas sistema operativo, es decir, la inclusión en el mismo término de programas como el explorador de ficheros, el navegador y todo tipo de herramientas que permiten la interacción con el sistema operativo, también llamado núcleo o kernel. Uno de los más prominentes ejemplos de esta diferencia, es el núcleo Linux, el cual es el núcleo del sistema operativo GNU, del cual existen las llamadas distribuciones GNU. Este error de precisión, se debe a la modernización de la informática llevada a cabo a finales de los 80, cuando la filosofía de estructura básica de funcionamiento de los grandes computadores se rediseñó a fin de llevarla a los hogares y facilitar su uso, cambiando el concepto de computador multiusuario, (muchos usuarios al mismo tiempo) por un sistema monousuario (únicamente un usuario al mismo tiempo) más sencillo de gestionar. (Véase AmigaOS, beOS o MacOS como los pioneros de dicha modernización, cuando los Amiga, fueron bautizados con el sobrenombre de Video Toasters por su capacidad para la Edición de vídeo en entorno multitarea round robin, con gestión de miles de colores e interfaces intuitivos para diseño en 3D. Uno de los propósitos del sistema operativo que gestiona el núcleo intermediario consiste en gestionar los recursos de localización y protección de acceso del hardware, hecho que alivia a los programadores de aplicaciones de tener que tratar con estos detalles. Se encuentran en la mayoría de los aparatos electrónicos que utilizan microprocesadores para funcionar. (teléfonos móviles, reproductores de DVD, computadoras, radios, etc.) Perspectiva histórica Los primeros sistemas (1945-1950) eran grandes máquinas operadas desde la consola maestra por los programadores. Durante la década siguiente (1950-1960) se llevaron a cabo avances en el hardware: lectoras de tarjetas, impresoras, cintas magnéticas, etc. Esto a su vez provocó un avance en el software: compiladores, ensambladores, cargadores, manejadores de dispositivos, etc. A finales de los años 80, una computadora Commodore Amiga equipada con una aceleradora Video Toaster era capaz de producir efectos comparados a sistemas dedicados que costaban el triple. Un Video Toaster junto a Lightwave ayudó a producir muchos programas de televisión y películas, entre las que se incluyen Babylon 5, Seaquest DSV y Terminator II. Problemas de explotación y soluciones iniciales El problema principal de los primeros sistemas era la baja utilización de los mismos, la primera solución fue poner un operador profesional que lo manejase, con lo que se eliminaron las hojas de reserva, se ahorró tiempo y se aumentó la velocidad. Para ello, los trabajos se agrupaban de forma manual en lotes mediante lo que se conoce como procesamiento por lotes (batch) sin automatizar. Monitores residentes Fichas en lenguaje de procesamiento por lotes, con programa y datos, para ejecución secuencial. Según fue avanzando la complejidad de los programas, fue necesario implementar soluciones que automatizaran la organización de tareas sin necesidad de un operador. Debido a ello se crearon los monitores residentes: programas que residían en memoria y que gestionaban la ejecución de una cola de trabajos. Un monitor residente estaba compuesto por un cargador, un Intérprete de comandos y un Controlador (drivers) para el manejo de entrada/salida. Sistemas con almacenamiento temporal de E/S Los avances en el hardware crearon el soporte de interrupciones y posteriormente se llevó a cabo un intento de solución más avanzado: solapar la E/S de un trabajo con sus propios cálculos, por lo que se creó el sistema de buffers con el siguiente funcionamiento: * Un programa escribe su salida en un área de memoria (buffer 1). * El monitor residente inicia la salida desde el buffer y el programa de aplicación calcula depositando la salida en el buffer 2. * La salida desde el buffer 1 termina y el nuevo cálculo también. * Se inicia la salida desde el buffer 2 y otro nuevo cálculo dirige su salida al buffer 1. * El proceso se puede repetir de nuevo. Los problemas surgen si hay muchas más operaciones de cálculo que de E/S (limitado por la CPU) o si por el contrario hay muchas más operaciones de E/S que cálculo (limitado por la E/S). Sistemas operativos multiprogramados Surge un nuevo avance en el hardware: el hardware con protección de memoria. Lo que ofrece nuevas soluciones a los problemas de rendimiento: * Se solapa el cálculo de unos trabajos con la entrada/salida de otros trabajos. * Se pueden mantener en memoria varios programas. * Se asigna el uso de la CPU a los diferentes programas en memoria. Debido a los cambios anteriores, se producen cambios en el monitor residente, con lo que éste debe abordar nuevas tareas, naciendo lo que se denomina como Sistemas Operativos multiprogramados, los cuales cumplen con las siguientes funciones: * Administrar la memoria. * Gestionar el uso de la CPU (planificación). * Administrar el uso de los dispositivos de E/S. Cuando desempeña esas tareas, el monitor residente se transforma en un sistema operativo multiprogramado. Llamadas al sistema operativo Definición breve: llamadas que ejecutan los programas de aplicación para pedir algún servicio al SO. Cada SO implementa un conjunto propio de llamadas al sistema. Ese conjunto de llamadas es la interfaz del SO frente a las aplicaciones. Constituyen el lenguaje que deben usar las aplicaciones para comunicarse con el SO. Por ello si cambiamos de SO, y abrimos un programa diseñado para trabajar sobre el anterior, en general el programa no funcionará, a no ser que el nuevo SO tenga la misma interfaz. Para ello: * Las llamadas correspondientes deben tener el mismo formato. * Cada llamada al nuevo SO tiene que dar los mismos resultados que la correspondiente del anterior. Modos de ejecución en un CPU Las aplicaciones no deben poder usar todas las instrucciones de la CPU. No obstante el Sistema Operativo, tiene que poder utilizar todo el juego de instrucciones del CPU. Por ello, una CPU debe tener (al menos) dos modos de operación diferentes: * Modo usuario: el CPU podrá ejecutar sólo las instrucciones del juego restringido de las aplicaciones. * Modo supervisor: la CPU debe poder ejecutar el juego completo de instrucciones. Llamadas al sistema Una aplicación, normalmente no sabe dónde está situada la rutina de servicio de la llamada. Por lo que si ésta se codifica como una llamada de función, cualquier cambio en el SO haría que hubiera que reconstruir la aplicación. Pero lo más importante es que una llamada de función no cambia el modo de ejecución de la CPU. Con lo que hay que conseguir llamar a la rutina de servicio, sin tener que conocer su ubicación, y hacer que se fuerce un cambio de modo de operación de la CPU en la llamada (y la recuperación del modo anterior en el retorno). Esto se hace utilizando instrucciones máquina diseñadas específicamente para este cometido, distintas de las que se usan para las llamadas de función. Bibliotecas de interfaz de llamadas al sistema Las llamadas al sistema no siempre tienen una expresión sencilla en los lenguajes de alto nivel, por ello se crean las bibliotecas de interfaz, que son bibliotecas de funciones que pueden usarse para efectuar llamadas al sistema. Las hay para distintos lenguajes de programación. La aplicación llama a una función de la biblioteca de interfaz (mediante una llamada normal) y esa función es la que realmente hace la llamada al sistema. Interrupciones y excepciones El SO ocupa una posición intermedia entre los programas de aplicación y el hardware. No se limita a utilizar el hardware a petición de las aplicaciones ya que hay situaciones en las que es el hardware el que necesita que se ejecute código del SO. En tales situaciones el hardware debe poder llamar al sistema, pudiendo deberse estas llamadas a dos condiciones: * Algún dispositivo de E/S necesita atención. * Se ha producido una situación de error al intentar ejecutar una instrucción del programa (normalmente de la aplicación). En ambos casos, la acción realizada no está ordenada por el programa de aplicación, es decir, no figura en el programa. Según los dos casos anteriores tenemos las interrupciones y la excepciones: * Interrupción: señal que envía un dispositivo de E/S a la CPU para indicar que la operación de la que se estaba ocupando, ya ha terminado. * Excepción: una situación de error detectada por la CPU mientras ejecutaba una instrucción, que requiere tratamiento por parte del SO Tratamiento de las interrupciones Una interrupción se trata en todo caso, después de terminar la ejecución de la instrucción en curso. El tratamiento depende de cuál sea el dispositivo de E/S que ha causado la interrupción, ante la cual debe poder identificar el dispositivo que la ha causado. La ventaja de este procedimiento es que no se tiene que perder tiempo ejecutando continuamente rutinas para consultar el estado del periférico. El inconveniente es que el dispositivo debe tener los circuitos electrónicos necesarios para acceder al sistema de interrupciones del computador. Importancia de las interrupciones El mecanismo de tratamiento de las interrupciones permite al SO utilizar la CPU en servicio de una aplicación, mientras otra permanece a la espera de que concluya una operación en un dispositivo de E/S. El hardware se encarga de avisar al SO cuando el dispositivo de E/S ha terminado y el SO puede intervenir entonces, si es conveniente, para hacer que el programa que estaba esperando por el dispositivo, se continúe ejecutando. En ciertos intervalos de tiempo puede convenir no aceptar señales de interrupción. Por ello las interrupciones pueden inhibirse por programa (aunque esto no deben poder hacerlo las mismas). Un ejemplo de sincronismo por interrupción es el almacenamiento de caracteres introducidos mediante el teclado. Cuando se introduce un carácter, se codifica en el registro de datos del dispositivo y además se activa un bit del registro de estado quien crea una interrupción en el hardware. El procesador deja temporalmente la tarea que estaba completando y ejecuta la rutina de atención a la interrupción correspondiente. El teclado almacena el carácter en el vector de memoria intermedia ( también llamado buffer) asociada al teclado y despierta el proceso que había en el estado de espera de la operación de entrada/salida. Excepciones Cuando la CPU intenta ejecutar una instrucción incorrectamente construida, la unidad de control lanza una excepción para permitir al SO ejecutar el tratamiento adecuado. Al contrario que en una interrupción, la instrucción en curso es abortada. Las excepciones al igual que las interrupciones deben estar identificadas. Clases de excepciones Las instrucciones de un programa pueden estar mal construidas por diversas razones: * El código de operación puede ser incorrecto. * Se intenta realizar alguna operación no definida, como dividir por cero. * La instrucción puede no estar permitida en el modo de ejecución actual. * La dirección de algún operando puede ser incorrecta o se intenta violar alguno de sus permisos de uso. Importancia de las excepciones El mecanismo de tratamiento de las excepciones es esencial para impedir, junto a los modos de ejecución de la CPU y los mecanismos de protección de la memoria, que las aplicaciones realicen operaciones que no les están permitidas. En cualquier caso, el tratamiento específico de una excepción lo realiza el SO. Como en el caso de las interrupciones, el hardware se limita a dejar el control al SO, y éste es el que trata la situación como convenga. Es bastante frecuente que el tratamiento de una excepción no retorne al programa que se estaba ejecutando cuando se produjo la excepción, sino que el SO aborte la ejecución de ese programa. Este factor depende de la pericia del programador para controlar la excepción adecuadamente. uffff!!! que poco de informacion porfavor comenten
Que es un Virus informático? Un virus informático es un malware que tiene por objeto alterar el normal funcionamiento de la computadora, sin el permiso o el conocimiento del usuario. Los virus, habitualmente, reemplazan archivos ejecutables por otros infectados con el código de este. Los virus pueden destruir, de manera intencionada, los datos almacenados en un ordenador, aunque también existen otros más inofensivos, que solo se caracterizan por ser molestos. Los virus informáticos tienen, básicamente, la función de propagarse a través de un software, no se replican a sí mismos porque no tienen esa facultad como el gusano informático, son muy nocivos y algunos contienen además una carga dañina (payload) con distintos objetivos, desde una simple broma hasta realizar daños importantes en los sistemas, o bloquear las redes informáticas generando tráfico inútil. El funcionamiento de un virus informático es conceptualmente simple. Se ejecuta un programa que está infectado, en la mayoría de las ocasiones, por desconocimiento del usuario. El código del virus queda residente (alojado) en la memoria RAM de la computadora, aun cuando el programa que lo contenía haya terminado de ejecutarse. El virus toma entonces el control de los servicios básicos del sistema operativo, infectando, de manera posterior, archivos ejecutables que sean llamados para su ejecución. Finalmente se añade el código del virus al programa infectado y se graba en el disco, con lo cual el proceso de replicado se completa. Historia El primer virus atacó a una máquina IBM Serie 360 (y reconocido como tal). Fue llamado Creeper, creado en 1972. Este programa emitía periódicamente en la pantalla el mensaje: «I'm a creeper... catch me if you can!» (¡Soy una enredadera... agárrame si tú puedes!). Para eliminar este problema se creó el primer programa antivirus denominado Reaper (cortadora). Sin embargo, el término virus no se adoptaría hasta 1984, pero éstos ya existían desde antes. Sus inicios fueron en los laboratorios de Bell Computers. Cuatro programadores (H. Douglas Mellory, Robert Morris, Victor Vysottsky y Ken Thompson) desarrollaron un juego llamado Core War, el cual consistía en ocupar toda la memoria RAM del equipo contrario en el menor tiempo posible. Después de 1984, los virus han tenido una gran expansión, desde los que atacan los sectores de arranque de disquetes hasta los que se adjuntan en un correo electrónico. Virus informáticos y sistemas operativos Los virus informáticos afectan en mayor o menor medida a casi todos los sistemas más conocidos y usados en la actualidad. Cabe aclarar que un virus informático mayoritariamente atacará sólo el sistema operativo para el que fue desarrollado, aunque ha habido algunos casos de virus multiplataforma. MS-Windows Las mayores incidencias se dan en el sistema operativo Windows debido, entre otras causas, a: * Su gran popularidad, como sistema operativo, entre los ordenadores personales, PC. Se estima que, en el 2007, un 90% de ellos usa Windows. Esta popularidad basada en la facilidad de uso sin conocimiento previo alguno, facilita la vulnerabilidad del sistema para el desarrollo de los virus, y así atacar sus puntos débiles, que por lo general son abundantes. * Falta de seguridad en esta plataforma (situación a la que Microsoft está dando en los últimos años mayor prioridad e importancia que en el pasado). Al ser un sistema muy permisivo con la instalación de programas ajenos a éste, sin requerir ninguna autentificación por parte del usuario o pedirle algún permiso especial para ello en los sistemas más antiguos (en los Windows basados en NT se ha mejorado, en parte, este problema). A partir de la inclusión del Control de Cuentas de Usuario en Windows Vista, y siempre y cuando no se desactive, se ha solucionado este problema. * Software como Internet Explorer y Outlook Express, desarrollados por Microsoft e incluidos de forma predeterminada en las últimas versiones de Windows, son conocidos por ser vulnerables a los virus ya que éstos aprovechan la ventaja de que dichos programas están fuertemente integrados en el sistema operativo dando acceso completo, y prácticamente sin restricciones, a los archivos del sistema. Un ejemplo famoso de este tipo es el virus ILOVEYOU, creado en el año 2000 y propagado a través de Outlook. * La escasa formación de un número importante de usuarios de este sistema, lo que provoca que no se tomen medidas preventivas por parte de estos, ya que este sistema está dirigido de manera mayoritaria a los usuarios no expertos en informática. Esta situación es aprovechada constantemente por los programadores de virus. Unix y derivados En otros sistemas operativos como las distribuciones GNU/Linux, BSD, OpenSolaris, Solaris, Mac OS X y otros basados en Unix las incidencias y ataques son prácticamente inexistentes. Esto se debe principalmente a: * Tradicionalmente los programadores y usuarios de sistemas basados en Unix han considerado la seguridad como una prioridad por lo que hay mayores medidas frente a virus, tales como la necesidad de autenticación por parte del usuario como administrador o root para poder instalar cualquier programa adicional al sistema. * Los directorios o carpetas que contienen los archivos vitales del sistema operativo cuentan con permisos especiales de acceso, por lo que no cualquier usuario o programa puede acceder fácilmente a ellos para modificarlos o borrarlos. Existe una jerarquía de permisos y accesos para los usuarios. * Relacionado al punto anterior, la mayoría de los usuarios de sistemas basados en Unix no pueden normalmente iniciar sesiones como usuarios "administradores' o por el superusuario root, excepto para instalar o configurar software, dando como resultado que, incluso si un usuario no administrador ejecuta un virus o algún software malicioso, éste no dañaría completamente el sistema operativo ya que Unix limita el entorno de ejecución a un espacio o directorio reservado llamado comúnmente home. Aunque a partir de Windows Vista, se pueden configurar las cuentas de usuario de forma similar. * Estos sistemas, a diferencia de Windows, son usados para tareas más complejas como servidores que por lo general están fuertemente protegidos, razón que los hace menos atractivos para un desarrollo de virus o software malicioso. * En el caso particular de las distribuciones basadas en GNU/Linux y gracias al modelo colaborativo, las licencias libres y debido a que son más populares que otros sistemas Unix, la comunidad aporta constantemente y en un lapso de tiempo muy corto actualizaciones que resuelven bugs y/o agujeros de seguridad que pudieran ser aprovechados por algún malware. Características Dado que una característica de los virus es el consumo de recursos, los virus ocasionan problemas tales como: pérdida de productividad, cortes en los sistemas de información o daños a nivel de datos. Una de las características es la posibilidad que tienen de diseminarse por medio de replicas y copias. Las redes en la actualidad ayudan a dicha propagación cuando éstas no tienen la seguridad adecuada. Otros daños que los virus producen a los sistemas informáticos son la pérdida de información, horas de parada productiva, tiempo de reinstalación, etc. Hay que tener en cuenta que cada virus plantea una situación diferente. Métodos de propagación Existen dos grandes clases de contagio. En la primera, el usuario, en un momento dado, ejecuta o acepta de forma inadvertida la instalación del virus. En la segunda, el programa malicioso actúa replicándose a través de las redes. En este caso se habla de gusanos. En cualquiera de los dos casos, el sistema operativo infectado comienza a sufrir una serie de comportamientos anómalos o imprevistos. Dichos comportamientos pueden dar una pista del problema y permitir la recuperación del mismo. Dentro de las contaminaciones más frecuentes por interacción del usuario están las siguientes: * Mensajes que ejecutan automáticamente programas (como el programa de correo que abre directamente un archivo adjunto). * Ingeniería social, mensajes como ejecute este programa y gane un premio, o, más comunmente: Haz 2 clics y gana 2 tonos para móvil gratis.. * Entrada de información en discos de otros usuarios infectados. * Instalación de software modificado o de dudosa procedencia. En el sistema Windows puede darse el caso de que el ordenador pueda infectarse sin ningún tipo de intervención del usuario (versiones Windows 2000, XP y Server 2003) por virus como Blaster, Sasser y sus variantes por el simple hecho de estar la máquina conectada a una red o a Internet. Este tipo de virus aprovechan una vulnerabilidad de desbordamiento de buffer y puertos de red para infiltrarse y contagiar el equipo, causar inestabilidad en el sistema, mostrar mensajes de error, reenviarse a otras máquinas mediante la red local o Internet y hasta reiniciar el sistema, entre otros daños. En las últimas versiones de Windows 2000, XP y Server 2003 se ha corregido este problema en su mayoría. Métodos de protección y tipos Los métodos para disminuir o reducir los riesgos asociados a los virus pueden ser los denominados activos o pasivos. Activos * Antivirus: son programas que tratan de descubrir las trazas que ha dejado un software malicioso, para detectarlo y eliminarlo, y en algunos casos contener o parar la contaminación. Tratan de tener controlado el sistema mientras funciona parando las vías conocidas de infección y notificando al usuario de posibles incidencias de seguridad. Por ejemplo, al verse que se crea un archivo llamado Win32.EXE.vbs en la carpeta C:Windows%System32% en segunddo plano, ve que es comportamiento sospechoso, salta y avisa al usuario. * Filtros de ficheros: consiste en generar filtros de ficheros dañinos si el ordenador está conectado a una red. Estos filtros pueden usarse, por ejemplo, en el sistema de correos o usando técnicas de firewall. En general, este sistema proporciona una seguridad donde no se requiere la intervención del usuario, puede ser muy eficaz, y permitir emplear únicamente recursos de forma más selectiva. Pasivos * Evitar introducir a tu equipo medios de almacenamiento extraíbles que consideres que pudieran estar infectados con algún virus. * No instalar software "pirata". * Evitar descargar software de Internet. * No abrir mensajes provenientes de una dirección electrónica desconocida. * No aceptar e-mails de desconocidos. * Generalmente, suelen enviar "fotos" por la web, que dicen llamarse "mifoto.jpg", tienen un ícono cuadrado blanco, con una línea azul en la parte superior. En realidad, no estamos en presencia de una foto, sino de una aplicación Windows (*.exe). Su verdadero nombre es "mifoto.jpg.exe", pero la parte final "*.exe" no la vemos porque Windows tiene deshabilitada (por defecto) la visualización de las extensiones registradas, es por eso que solo vemos "mifoto.jpg" y no "mifoto.jpg.exe". Cuando la intentamos abrir (con doble click) en realidad estamos ejecutando el código de la misma, que corre bajo MS-DOS. Tipos de virus e imitaciones Existen diversos tipos de virus, varían según su función o la manera en que éste se ejecuta en nuestra computadora alterando la actividad de la misma, entre los más comunes están: * Troyano: Consiste en robar información o alterar el sistema del hardware o en un caso extremo permite que un usuario externo pueda controlar el equipo. * Gusano: Tiene la propiedad de duplicarse a sí mismo. Los gusanos utilizan las partes automáticas de un sistema operativo que generalmente son invisibles al usuario. * Bombas lógicas o de tiempo: Son programas que se activan al producirse un acontecimiento determinado. La condición suele ser una fecha (Bombas de Tiempo), una combinación de teclas, o ciertas condiciones técnicas (Bombas Lógicas). Si no se produce la condición permanece oculto al usuario. * Hoax: Los hoax no son virus ni tienen capacidad de reproducirse por si solos. Son mensajes de contenido falso que incitan al usuario a hacer copias y enviarla a sus contactos. Suelen apelar a los sentimientos morales ("Ayuda a un niño enfermo de cáncer" o al espíritu de solidaridad ("Aviso de un nuevo virus peligrosísimo" y, en cualquier caso, tratan de aprovecharse de la falta de experiencia de los internautas novatos. * Joke: Al igual de los hoax, no son virus, pero son molestos, un ejemplo: una página pornográfica que se mueve de un lado a otro, y si se le llega a dar a errar es posible que salga una ventana que diga: OMFG!! No se puede cerrar! Acciones de los virus Algunas de las acciones de algunos virus son: * Unirse a un programa instalado en el ordenador permitiendo su propagación. * Mostrar en la pantalla mensajes o imágenes humorísticas, generalmente molestas. * Ralentizar o bloquear el ordenador. * Destruir la información almacenada en el disco, en algunos casos vital para el sistema, que impedirá el funcionamiento del equipo. * Reducir el espacio en el disco. * Molestar al usuario cerrando ventanas, moviendo el ratón... taran!!!! eso fue todo muchas gracias y comenten

Aprende a Sacar Tu Link de Vecino! Lo puedes mandar a algunos amigos o publicarlo en paginas, al darle click automaticamente se haran tus Vecinos aunque no te tengan agregado en Facebook
Aprende a Sacar Tu Link de Vecino! Lo puedes mandar a algunos amigos o publicarlo en paginas, al darle click automaticamente se haran tus Vecinos aunque no te tengan agregado en Facebook![ 1.-Antes que nada, Accede ¡Aqui! Con tu Cuenta Principal! Una vez que estes ahi, Selecciona tu cuenta Secundaria y enviale la Solicitud de Vecino. 2.-Entra a tu Cuenta secundaria y Acepta la solicitud desde las notificaciones o tambien puedes entrar ¡Aqui! 3.- Una Vez que Aceptes la Solicitud, copea el enlace de la Pagina! Ahora si!, ya Tienes tu link de Vecino, Guardalo porque lo necesitaras.... Cuando alguien le da click automáticamente se hace tu Vecino sin importar que sea tu amigo en facebook. opcional:puedes acortar tu link en http://www.siguemilink.com/ agregame de vecino http://smlk.es/vecinoeddy fuente noticias city ville en español