Está en la página 1de 6

SISTEMAS OPERATIVOS

Un sistema operativo (SO o, frecuentemente, OS —del inglés operating system—) es


el software principal o conjunto de programas de un sistema informático que gestiona los
recursos de hardware y provee servicios a los programas de aplicación de software,
ejecutándose en modo privilegiado respecto de los restantes (aunque puede que parte de él
se ejecute en espacio de usuario).
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 web y todo tipo de herramientas que permiten
la interacción con el sistema operativo. Otro ejemplo para comprender esta diferencia se
encuentra en la plataforma Amiga, donde el entorno gráfico de usuario se distribuía por
separado, de modo que, también podía reemplazarse por otro, como era el caso de directory
Opus o incluso manejarlo arrancando con una línea de comandos y el sistema gráfico. De
este modo, comenzaba a funcionar con el propio sistema operativo que llevaba incluido en
una ROM, por lo que era cuestión del usuario decidir si necesitaba un entorno gráfico para
manejar el sistema operativo o simplemente otra aplicación. Uno de los más prominentes
ejemplos de esta diferencia, es el núcleo Linux, usado en las llamadas distribuciones Linux,
ya que al estar también basadas en Unix, proporcionan un sistema de funcionamiento similar.
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 Mac OS 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.
En ciertos textos, el sistema operativo es llamado indistintamente como núcleo o kernel, pero
debe tenerse en cuenta que la diferencia entre kernel y sistema operativo solo es aplicable si
el núcleo es monolítico, lo cual fue muy común entre los primeros sistemas. En caso
contrario, es incorrecto llamar al sistema operativo núcleo.
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. La mayoría de
aparatos electrónicos que utilizan microprocesadores para funcionar, llevan incorporado un
sistema operativo (teléfonos móviles, reproductores de DVD, computadoras,
radios, enrutadores, etc.). En cuyo caso, son manejados mediante una interfaz gráfica de
usuario, un gestor de ventanas o un entorno de escritorio, si es un celular, mediante una
consola o control remoto si es un DVD y, mediante una línea de comandos o navegador web
si es un enrutador.
TIPOS DE SISTEMAS OPERATIVOS
LINUX
GNU/Linux, también conocido como Linux, es un sistema operativo libre
tipo Unix; multiplataforma, multiusuario y multitarea. El sistema es la
combinación de varios proyectos, entre los cuales destacan GNU
(encabezado por Richard Stallman y la Free Software Foundation) y el
núcleo Linux (encabezado por Linus Torvalds).

MICROSOFT WINDOWS XP
Microsoft Windows XP es una versión de Microsoft Windows, basado en
Windows 2000 y con importantes mejoras. Fue lanzado al mercado el 25 de
octubre de 2001.

WINDOWS VISTA
Windows Vista es una versión de Microsoft Windows, línea de sistemas
operativos desarrollada por Microsoft.

MAC OS X
macOS, anteriormente denominado OS X e inicialmente Mac OS X, es un
entorno operativo basado en Unix, desarrollado, comercializado y vendido
por Apple Inc. Está incluido en su gama de computadoras Macintosh desde
el año 2002.

UBUNTU
Ubuntu es una distribución del sistema operativo GNU/Linux y que se
distribuye como software libre, la cual durante un tiempo incluyó su propio
entorno de escritorio denominado Unity, actualmente utiliza GNOME, como
en sus orígenes.

GUADA LINEX
Guadalinex es una distribución Linux promovida por la Junta de
Andalucía para fomentar el uso del software libre en su comunidad
autónoma. Está inspirada en GnuLinEx, un proyecto similar de la
Junta de Extremadura.

SOLARIS
Solaris es un sistema operativo de tipo Unix desarrollado desde 1992
inicialmente por Sun Microsystems y actualmente propiedad de Oracle
Corporation tras la adquisición de Sun por parte de esta.
MAC OS
Mac OS (del inglés Macintosh Operating System, en español Sistema
Operativo de Macintosh) es el nombre del sistema operativo creado por
Apple para su línea de computadoras Macintosh, también aplicado
retroactivamente a las versiones anteriores a System 7.6, y que apareció
por primera vez en System 7.5.1.

CPU
CPU son las siglas en ingles de Central Processing Unit (Unidad de Proceso Central), El
CPU es el cerebro del ordenador, referimos a la parte de la computadora en la que se
controlan y originan comandos directos que generan las diferentes funciones de la CPU. En
el CPU se hacen todos los cálculos del código binario de la computadora. En general, es la
parte más importante del sistema.

En el caso de una computadora de escritorio, sencilla, solo necesitan un tablero de circuitos


impresos. En este tablero se encuentra el chip llamado microprocesador que representa
el corazón de ese CPU que calcula y determina las funciones principales de la computadora
(casi todas). El CPU presenta 2 componentes fundamentales: La unidad de
lógica/aritmética (ALU) es la calculadora principal de la computadora, ella vincula las
operaciones que están relacionadas directamente con el código binario que se maneja en la
PC y la unidad de control (CU) es la gran administradora de la memoria y los componentes
que agregan las funciones, las descifra y las ejecuta.
La expresión “unidad central de proceso” es, en términos generales, es una descripción de
una cierta clase de máquinas de lógica que pueden ejecutar complejos programas de
computadora. Esta amplia definición puede fácilmente ser aplicada a muchos de los primeros
computadores que existieron mucho antes que el término “CPU” estuviera en amplio uso. Sin
embargo, el término en sí mismo y su acrónimo han estado en uso en la industria de
la informática por lo menos desde el principio de los años 1960. La forma, el diseño y la
implementación de los CPU ha cambiado drásticamente desde los primeros ejemplos, pero
su operación fundamental ha permanecido bastante similar.
PSEUDOCÓDIGO
En ciencias de la computación, y análisis numérico,
el pseudocódigo (o falso lenguaje) es una descripción
de alto nivel compacta e informal1 del principio
operativo de un programa informático u otro algoritmo.
Utiliza las convenciones estructurales de un lenguaje de
programación real,2 pero está diseñado para la lectura
humana en lugar de la lectura mediante máquina, y con
independencia de cualquier otro lenguaje de
programación. Normalmente, el pseudocódigo omite
detalles que no son esenciales para la comprensión
humana del algoritmo, tales como declaraciones de variables, código específico del sistema y
algunas subrutinas. El lenguaje de programación se complementa, donde sea conveniente,
con descripciones detalladas en lenguaje natural, o con notación matemática compacta. Se
utiliza pseudocódigo pues este es más fácil de entender para las personas que el código del
lenguaje de programación convencional, ya que es una descripción eficiente y con un
entorno independiente de los principios fundamentales de un algoritmo. Se utiliza
comúnmente en los libros de texto y publicaciones científicas que se documentan varios
algoritmos, y también en la planificación del desarrollo de programas informáticos, para
esbozar la estructura del programa antes de realizar la efectiva codificación.
No existe una sintaxis estándar para el pseudocódigo, aunque los ocho IDE's que manejan
pseudocódigo tengan su sintaxis propia. Aunque sea parecido, el pseudocódigo no debe
confundirse con los programas esqueleto que incluyen código ficticio, que pueden
ser compilados sin errores. Los diagramas de flujo y UML pueden ser considerados como
una alternativa gráfica al pseudocódigo, aunque sean más amplios en papel.

ALGORITMO
En matemáticas, lógica, ciencias de la computación y disciplinas relacionadas,
un algoritmo (del griego y latín, dixit algorithmus y este a su vez del matemático persa Al-
Juarismi)1 es un conjunto prescrito de instrucciones o reglas bien definidas, ordenadas y
finitas que permite llevar a cabo una actividad mediante pasos sucesivos que no generen
dudas a quien deba hacer dicha actividad. Dados un estado inicial y una entrada, siguiendo
los pasos sucesivos se llega a un estado final y se obtiene una solución. Los algoritmos son
el objeto de estudio de la algoritmia.
En la vida cotidiana, se emplean algoritmos frecuentemente para resolver problemas.
Algunos ejemplos son los manuales de usuario, que muestran algoritmos para usar un
aparato, o las instrucciones que recibe un trabajador de su patrón. Algunos ejemplos
en matemática son el algoritmo de multiplicación, para calcular el producto, el algoritmo de
la división para calcular el cociente de dos números, el algoritmo de Euclides para obtener
el máximo común divisor de dos enteros positivos, o el método de Gauss para resolver
un sistema de ecuaciones lineales.
En términos de programación, un algoritmo es una secuencia de pasos lógicos que permiten
solucionar un problema.

Definición formal
En general, no existe ningún consenso definitivo en cuanto a la definición formal de
algoritmo. Muchos autores los señalan como listas de instrucciones para resolver
un cálculo o un problema abstracto, es decir, que un número finito de pasos convierten los
datos de un problema (entrada) en una solución (salida).123456 Sin embargo cabe notar que
algunos algoritmos no necesariamente tienen que terminar o resolver un problema en
particular. Por ejemplo, una versión modificada de la criba de Eratóstenes que nunca termine
de calcular números primos no deja de ser un algoritmo.7
A lo largo de la historia varios autores han tratado de definir formalmente a los algoritmos
utilizando modelos matemáticos. Esto fue realizado por Alonzo Church en 1936 con el
concepto de "calculabilidad efectiva" basada en su cálculo lambda y por Alan
Turingbasándose en la máquina de Turing. Los dos enfoques son equivalentes, en el sentido
en que se pueden resolver exactamente los mismos problemas con ambos enfoques. 89 Sin
embargo, estos modelos están sujetos a un tipo particular de datos como son números,
símbolos o gráficas mientras que, en general, los algoritmos funcionan sobre una vasta
cantidad de estructuras de datos. En general, la parte común en todas las definiciones se
puede resumir en las siguientes tres propiedades siempre y cuando no
consideremos algoritmos paralelos:
Tiempo secuencial. Un algoritmo funciona en tiempo discretizado –paso a paso–, definiendo
así una secuencia de estados computacionales por cada entrada válida (la entrada son los
datos que se le suministran al algoritmo antes de comenzar).
Estado abstracto. Cada estado computacional puede ser descrito formalmente utilizando
una estructura de primer orden y cada algoritmo es independiente de su implementación (los
algoritmos son objetos abstractos) de manera que en un algoritmo las estructuras de primer
orden son invariantes bajo isomorfismo.
Exploración acotada. La transición de un estado al siguiente queda completamente
determinada por una descripción fija y finita; es decir, entre cada estado y el siguiente
solamente se puede tomar en cuenta una cantidad fija y limitada de términos del estado
actual.
En resumen, un algoritmo es cualquier cosa que funcione paso a paso, donde cada paso se
pueda describir sin ambigüedad y sin hacer referencia a una computadora en particular, y
además tiene un límite fijo en cuanto a la cantidad de datos que se pueden leer/escribir en un
solo paso. Esta amplia definición abarca tanto a algoritmos prácticos como aquellos que solo
funcionan en teoría, por ejemplo el método de Newton y la eliminación de Gauss-
Jordan funcionan, al menos en principio, con números de precisión infinita; sin embargo no
es posible programar la precisión infinita en una computadora, y no por ello dejan de ser
algoritmos. En particular es posible considerar una cuarta propiedad que puede ser usada
para validar la tesis de Church-Turing de que toda función calculable se puede programar en
una máquina de Turing (o equivalentemente, en un lenguaje de programación
suficientemente general):
Aritmetizabilidad. Solamente operaciones innegablemente calculables están disponibles en
el paso inicial.

Medios de expresión de un algoritmo


Los algoritmos pueden ser expresados de muchas maneras, incluyendo al lenguaje
natural, pseudocódigo, diagramas de flujo y lenguajes de programación entre otros. Las
descripciones en lenguaje natural tienden a ser ambiguas y extensas. El usar pseudocódigo
y diagramas de flujo evita muchas ambigüedades del lenguaje natural. Dichas expresiones
son formas más estructuradas para representar algoritmos; no obstante, se mantienen
independientes de un lenguaje de programación específico.
La descripción de un algoritmo usualmente se hace en tres niveles:
1. Descripción de alto nivel. Se establece el problema, se selecciona un modelo
matemático y se explica el algoritmo de manera verbal, posiblemente con ilustraciones
y omitiendo detalles.
2. Descripción formal. Se usa pseudocódigo para describir la secuencia de pasos que
encuentran la solución.
3. Implementación. Se muestra el algoritmo expresado en un lenguaje de programación
específico o algún objeto capaz de llevar a cabo instrucciones.
También es posible incluir un teorema que demuestre que el algoritmo es correcto, un
análisis de complejidad o ambos.

También podría gustarte