SlideShare una empresa de Scribd logo
1 de 11
Mario Alberto Domínguez Bobadilla

TAREA 2

27 De Agosto de 2013

SOFTWARE OPERATIVO Y DE
DESARROLLO
TEMA 3
SOFTWARE OPERATIVO Y DE DESARROLLO

Según la RAE, el software es un conjunto de programas, instrucciones y reglas
informáticas que permiten ejecutar distintas tareas en una computadora. En
computación, el software es todo programa o aplicación programado para realizar
tareas específicas. El término "software" fue usado por primera vez por John W.
Tukey en 1957.
Se considera que el software es el equipamiento lógico e intangible de un
ordenador. En otras palabras, el concepto de software abarca a todas las
aplicaciones informáticas, como los procesadores de textos, las planillas de
cálculo y los editores de imágenes.
El software, como programa, consiste en un código en un lenguaje
máquina específico para un procesador individual. El código es una secuencia de
instrucciones ordenadas que cambian el estado del hardware de
una computadora. El software se suele escribir en un lenguaje de programación de
alto nivel, que es más sencillo de escribir (pues es más cercano al lenguaje natural
humano), pero debe convertirse a lenguaje máquina para ser ejecutado.
El software es desarrollado mediante distintos lenguajes de programación, que
permiten controlar el comportamiento de una máquina. Estos lenguajes consisten
en un conjunto de símbolos y reglas sintácticas y semánticas, que definen el
significado de sus elementos y expresiones. Un lenguaje de programación permite
a los programadores del software especificar, en forma precisa, sobre qué datos
debe operar una computadora.
El software puede distinguirse en tres categorías: software de sistema, software de
programación y aplicación de software. De todas maneras esta distinción es
arbitraria y muchas veces un software puede caer una o varias categorías.
- Software de sistema: ayuda a funcionar al hardware y a la computadora. Incluye
el sistema
operativo,
controladores de dispositivos,
herramientas
de
diagnóstico, servidores, sistema de ventanas, utilidades y más. Su propósito es
evitar lo más posible los detalles complejos de la computación, especialmente
la memoria y
el
hardware.
- Software de programación: provee herramientas de asistencia al programador.
Incluye
editores
de
texto, compiladores, intérprete
de
instrucciones, enlazadores, debuggers,
etc.
- Software de aplicación: permite a los usuarios finales hacer determinadas tareas.
Algunos software de aplicación son los navegadores, editores de texto, editores
gráficos, antivirus, mensajeros, etc.
La industria del desarrollo de software se ha convertido en un protagonista
importante dentro de la economía global, ya que mueve millones de dólares al
año. La compañía más grande y popular del mundo es Microsoft, fundada en 1975
por Bill Gates y Paul Allen. Esta empresa logró trascender gracias a su sistema
operativo Windows y a su suite de programas de oficina Office

Software Base.
Es toda aquella parte lógica realizada generalmente por cada fabricante de
computadores o por casas especializadas en el desarrollo de software de base.
Este conjunto de programas tiene por función coordinar las diversas partes del
sistema computacional para hacerlo funcionar rápida y eficazmente, actuando
como mediadores entre los programas de aplicaciones y el hardware del sistema,
interpretando los requerimientos de cada programa que ingresa al sistema,
poniendo a su disposición cualquiera de los recursos que necesite (ya sean de
hardware, software o datos para producir los resultados deseados.) debido a la
estrecha relación que existe entre las características de un computador y su
software de base, no se puede concebir el uno sin el otro, a tal punto que
pareciera que el software es parte integrante del hardware.
El software de base se suele clasificar en:
a) Sistema Operativo
b) Utilitarios
c) Traductores de lenguajes
Sistema operativo
Los primeros sistemas (1945-1955) eran grandes máquinas operadas desde la
consola maestra por los programadores. Durante la década siguiente (1955-1965)
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.
Un sistema operativo es un programa o conjunto de programas que en un sistema
informático gestiona los recursos de hardware y provee servicios a los programas
de aplicación, ejecutándose en modo privilegiado respecto de los restantes
El conjunto de programas informáticos que permite la administración eficaz de los
recursos de una computadora es conocido como sistema operativo o software de
sistema. Estos programas comienzan a trabajar apenas se enciende el equipo, ya
que gestionan el hardware desde los niveles más básicos y permiten además la
interacción con el usuario.
Cabe destacar que los sistemas operativos no funcionan sólo en las
computadoras. Por el contrario, este tipo de sistemas se encuentran en la mayoría
de los dispositivos electrónicos que utilizan microprocesadores: el software de
sistema posibilita que el aparato cumpla con sus funciones (por ejemplo, un
teléfono móvil o un reproductor de DVD).
El sistema operativo cumple con cinco funciones básicas: el suministro de interfaz
al usuario, la administración de recursos, la administración de archivos, la
administración de tareas y el servicio de soporte y utilidades.
En cuanto a la interfaz al usuario, el sistema se encarga de que el sujeto pueda
cargar programas, acceder a archivos y realizar otras tareas con la computadora.
La administración de recursos permite la dirección del hardware, incluyendo los
periféricos y la red. El software de sistema también se encarga de la gestión de
archivos, al controlar la creación, la eliminación y el acceso a los mismos, y de la
administración de las tareas informáticas que llevan adelante los usuarios finales.
Por último, podemos mencionar que el servicio de soporte se encarga de
actualizar las versiones, mejorar la seguridad del sistema, agregar nuevas
utilidades, controlar los nuevos periféricos que se agregan a la computadora y
corregir los errores del software.
Los sistemas operativos proporcionan una plataforma de software encima de la
cual otros programas, llamados aplicaciones, puedan funcionar. Las aplicaciones
se programan para que funcionen encima de un sistema operativo particular, por
tanto, la elección del sistema operativo determina en gran medida las aplicaciones
que puedes utilizar.
Los sistemas operativos más utilizados en los PC son DOS, OS/2, y Windows,
pero hay otros que también se utilizan, como por ejemplo Linux.
Un usuario normalmente interactúa con el sistema operativo a través de un
sistema de comandos, por ejemplo, el sistema operativo DOS contiene comandos
como copiar y pegar para copiar y pegar archivos respectivamente. Los comandos
son aceptados y ejecutados por una parte del sistema operativo llamada
procesador de comandos o intérprete de la línea de comandos. Las interfaces
gráficas permiten que utilices los comandos señalando y pinchando en objetos que
aparecen en la pantalla.

Generaciones de los sistemas operativos
La primera generación (1945-1955) corresponde a los primeros equipos,
construidos con válvulas de vacío. En esta etapa no existieron sistemas
operativos.
La segunda generación (1955-1965) corresponde a la etapa a los equipos que
estaban basados en el uso de los transistores. Eran más confiables y más
duraderos. Desde el punto de vista de los sistemas operativos se tiene el uso de
monitores simples (lo que implica procesamiento en lote). Sistemas de Operación
de esta etapa son el FMS (Fortran Monitor System) y el IBSYS de la 7094.
La tercera generación (1965-1980) se caracterizó por la utilización de circuitos
integrados. Los sistemas operativos vinculados a esta etapa introdujeron los
conceptos de SPOOLING y en especial el uso de la multiprogramación. También
corresponde a esta etapa la aparición del tiempo compartido. En esta etapa no
pueden dejar de mencionarse los sistemas de operación OS/360 y Multics. Aquí
surgen las primeras versiones del Unix.
La cuarta generación (1980-1990) surge con los circuitos integrados de alta
integración y por ello aparecen en el mercado las computadoras personales. Esta
etapa la dominan sistemas operativos MS-DOS y el Unix (y en un inicio el CP/M).
El actual desarrollo de los sistemas operativos basados en GUI (Graphic User
Interface) y la incorporación de orientación a objetos así como el soporte de la
multimedia, es suficientemente fuerte para hablar de la quinta generación de los
sistemas operativos.

Lenguajes De Programación
Un lenguaje de programación es un lenguaje que puede ser utilizado para
controlar el comportamiento de una máquina, particularmente una computadora.
Consiste en un conjunto de reglas sintácticas y semánticas que definen su
estructura y el significado de sus elementos, respectivamente. Aunque muchas
veces se usa lenguaje de programación y lenguaje informático como si fuesen
sinónimos, no tiene por qué ser así, ya que los lenguajes informáticos engloban a
los lenguajes de programación y a otros más, como, por ejemplo, el HTML.
Un lenguaje de programación de bajo nivel es aquel en el que sus instrucciones
ejercen un control directo sobre el hardware y están condicionados por la
estructura física de la computadora que lo soporta.
Un lenguaje de programación de alto nivel se caracteriza por expresar
los algoritmos de una manera adecuada a la capacidad cognitiva humana, en
lugar de a la capacidad ejecutora de las máquinas.
Otra limitación de los lenguajes de nivel bajo es que se requiere de ciertos
conocimientos de programación para realizar las secuencias de instrucciones
lógicas. Los lenguajes de alto nivel se crearon para que el usuario común pudiese
solucionar un problema de procesamiento de datos de una manera más fácil y
rápida.
Por esta razón, a finales de los años 1950 surgió un nuevo tipo de lenguajes de
programación que evitaba estos inconvenientes, a costa de ceder un poco en las
ventajas. Estos lenguajes se llaman de tercera generación o de nivel alto, en
contraposición a los de bajo nivel o de nivel próximo a la máquina.
Se pueden clasificar según la forma de ejecución:
Los lenguajes de programación generalmente se dividen en dos grupos principales
en base al procesamiento de sus comandos:
lenguajes imperativos;
Un lenguaje imperativo programa mediante una serie de comandos, agrupados en
bloques y compuestos de órdenes condicionales que permiten al programa
retornar a un bloque de comandos si se cumple la condición. Estos fueron los
primeros lenguajes de programación en uso y aún hoy muchos lenguajes
modernos usan este principio.
No obstante, los lenguajes imperativos estructurados carecen de flexibilidad
debido a la secuencialidad de las instrucciones.
lenguajes funcionales.
Un lenguaje
de
programación
funcional(a
menudo
llamado lenguaje
procedimental) es un lenguaje que crea programas mediante funciones, devuelve
un nuevo estado de resultado y recibe como entrada el resultado de otras
funciones. Cuando una función se invoca a sí misma, hablamos de recursividad.
Los lenguajes de programación pueden, en líneas generales, dividirse en dos
categorías:

Lenguaje interpretado
Un lenguaje de programación es, por definición, diferente al lenguaje máquina. Por
lo tanto, debe traducirse para que el procesador pueda comprenderlo. Un
programa escrito en un lenguaje interpretado requiere de un programa auxiliar (el
intérprete), que traduce los comandos de los programas según sea necesario.
Lenguaje compilado
Un programa escrito en un lenguaje "compilado" se traduce a través de un
programa anexo llamado compilador que, a su vez, crea un nuevo archivo
independiente que no necesita ningún otro programa para ejecutarse a sí mismo.
Este archivo se llama ejecutable.
Un programa escrito en un lenguaje compilado posee la ventaja de no necesitar un
programa anexo para ser ejecutado una vez que ha sido compilado. Además,
como sólo es necesaria una traducción, la ejecución se vuelve más rápida.
Sin embargo, no es tan flexible como un programa escrito en lenguaje
interpretado, ya que cada modificación del archivo fuente (el archivo comprensible
para los seres humanos: el archivo a compilar) requiere de la compilación del
programa para aplicar los cambios.
Por otra parte, un programa compilado tiene la ventaja de garantizar la seguridad
del código fuente. En efecto, el lenguaje interpretado, al ser directamente un
lenguaje legible, hace que cualquier persona pueda conocer los secretos de
fabricación de un programa y, de ese modo, copiar su código o incluso modificarlo.
Por lo tanto, existe el riesgo de que los derechos de autor no sean respetados. Por
otro lado, ciertas aplicaciones aseguradas necesitan confidencialidad de código
para evitar las copias ilegales (transacciones bancarias, pagos en línea,
comunicaciones seguras...).

ALGUNOS LENGUAJES DE PROGRAMACIÓN
Lenguaje

Principal área de aplicación

Compilado/interpretado

ADA

Tiempo real

Lenguaje compilado

BASIC

Programación para fines educativos

Lenguaje interpretado

C

Programación de sistema

Lenguaje compilado

C++

Programación de sistema orientado
Lenguaje compilado
a objeto

Cobol

Administración

Lenguaje compilado

Fortran

Cálculo

Lenguaje compilado

Java

Programación orientada a Internet

Lenguaje intermediario

MATLAB

Cálculos matemáticos

Lenguaje interpretado

Cálculos
matemáticos

Cálculos matemáticos

Lenguaje interpretado

LISP

Inteligencia artificial

Lenguaje intermediario

Pascal

Educación

Lenguaje compilado

PHP

Desarrollo de sitios web dinámicos

Lenguaje interpretado
Inteligencia artificial Inteligencia artificial
Perl

Procesamiento
caracteres

de

Lenguaje interpretado
cadenas

de

Lenguaje interpretado

TRADUCTORES DE LENGUAJE
Un traductor es un programa que recibe como entrada código escrito en un cierto
lenguaje y produce como salida código en otro lenguaje. Generalmente el lenguaje
de entrada es de más alto nivel que el de salida. Ejemplos de traductores son los
ensambladores y los compiladores. Un ensamblador es un programa que traduce
de un lenguaje ensamblador a lenguaje máquina, mientras que un compilador es
un programa que traduce de un lenguaje de alto nivel a un lenguaje de bajo nivel o
a lenguaje máquina. Un traductor es un programa que toma el texto escrito en un
lenguaje (el lenguaje fuente) y lo convierte en el texto equivalente en un segundo
lenguaje (el lenguaje destino u objeto). Si el fuente es un lenguaje abstracto o de
alto nivel y si el objetivo es un lenguaje de ensamble de bajo nivel o de máquina,
el traductor es un compilador.
Los programas traductores de lenguajes son:
1. Compiladores.
Un compilador es un programa informático que traduce un programa escrito en un
lenguaje de programación a otro lenguaje de programación, generando un
programa equivalente que la máquina será capaz de interpretar. Usualmente el
segundo lenguaje es lenguaje de máquina, pero también puede ser un código
intermedio (bytecode), o simplemente texto
2. Interpretes.
Es un programa informático capaz de analizar y ejecutar otros programas, escritos
en un lenguaje de alto nivel. Los intérpretes se diferencian de los compiladores en
que mientras estos traducen un programa desde su descripción en un lenguaje de
programación al código de máquina del sistema, los intérpretes sólo realizan la
traducción a medida que sea necesaria, típicamente, instrucción por instrucción, y
normalmente no guardan el resultado de dicha traducción.
Usando un intérprete, un solo archivo fuente puede producir resultados iguales
incluso en sistemas sumamente diferentes (ej. una PC y un PlayStation 3).
Usando un compilador, un solo archivo fuente puede producir resultados iguales
solo si es compilado a distintos ejecutables específicos a cada sistema.
Los programas interpretados suelen ser más lentos que los compilados debido a la
necesidad de traducir el programa mientras se ejecuta, pero a cambio son más
flexibles como entornos de programación y depuración (lo que se traduce, por
ejemplo, en una mayor facilidad para reemplazar partes enteras del programa o
añadir módulos completamente nuevos), y permiten ofrecer al programa
interpretado un entorno no dependiente de la máquina donde se ejecuta el
intérprete, sino del propio intérprete (lo que se conoce comúnmente como
máquina virtual).

SOFTWARE APLICATIVO: A LA MEDIDA Y HECHO A LA MEDIDA
El software de aplicación es un conjuntó de programas que fueron concebidos o
creados para atender trabajos específicos de algún usuario. Estos pueden incluir
características que bien, pueden satisfacer las necesidades de forma total o
parcial, que pudieron haber sido definidos por los mismos. Generalmente todos
requieren de un servicio de Software base, con el cual podrán ser ejecutados, pero
existe la posibilidad de ejecutarlos sin esta base, lo cual implica un mayor costo y
complejidad en el desarrollo Estos pueden ser sistemas de aplicación
confeccionados especialmente para un usuario determinado (hecho a la medida) o
sistemas de aplicación pre-planeados (enlatados).

Hecho a Medida
Estos ofrecen la oportunidad de personalizar ciertos parámetros según el
esquema con el que el usuario lo este trabajando, teniendo en cuenta las
características que esta aplicación tenga para el usuario, por esto, al cumplir con
los requerimientos necesarios, requiere la disponibilidad de recursos para
desarrollarlo.
BIBLIOGRAFIA
http://jorgesaavedra.wordpress.com/2007/05/05/lenguajes-de-programacion/
http://definicion.de/sistema-operativo/#ixzz2cGY4LL7n
http://ing.unne.edu.ar/pub/informatica/U3.pdf
http://definicion.de/software/#ixzz2cG9zuhn3
http://es.wikipedia.org/wiki/Lenguaje_de_alto_nivel
http://blogs.utpl.edu.ec/metodologiadeprogramacion/files/2009/05/compiladorestraductores-lenguajes_gberru.pdf
http://es.wikipedia.org/wiki/Lenguaje_de_bajo_nivel
http://jorgesaavedra.wordpress.com/2007/05/05/lenguajes-de-programacion/
http://ing.unne.edu.ar/pub/informatica/U3.pdf
http://www.monografias.com/trabajos15/software/software.shtml
http://feergh.files.wordpress.com/2011/09/tema-3-software-aplicativo.pdf

Más contenido relacionado

La actualidad más candente

Gonzales galdamez mario josé practica #4
Gonzales galdamez mario josé  practica #4Gonzales galdamez mario josé  practica #4
Gonzales galdamez mario josé practica #4mariogalda10
 
Preparación e instalación de software de aplicación
Preparación e instalación de software de aplicación  Preparación e instalación de software de aplicación
Preparación e instalación de software de aplicación brand85
 
Proyecto Software de Base
Proyecto Software de BaseProyecto Software de Base
Proyecto Software de BaseKarina Morales
 
Hardware y software
Hardware y softwareHardware y software
Hardware y softwaresan mateo
 
Gianna mercedes y victoria trabajo compu
Gianna mercedes y victoria trabajo compuGianna mercedes y victoria trabajo compu
Gianna mercedes y victoria trabajo compugianna01
 
Dii4+Sistema+Operativo
Dii4+Sistema+OperativoDii4+Sistema+Operativo
Dii4+Sistema+OperativoMENOSCAL
 
Sistema operativo y software de aplicación
Sistema operativo y software de aplicaciónSistema operativo y software de aplicación
Sistema operativo y software de aplicaciónHarold Delgado
 
El software
El softwareEl software
El softwareRUBIO96
 

La actualidad más candente (17)

Gonzales galdamez mario josé practica #4
Gonzales galdamez mario josé  practica #4Gonzales galdamez mario josé  practica #4
Gonzales galdamez mario josé practica #4
 
Dii4%2 B Sistema%2 B Operativo
Dii4%2 B Sistema%2 B OperativoDii4%2 B Sistema%2 B Operativo
Dii4%2 B Sistema%2 B Operativo
 
Preparación e instalación de software de aplicación
Preparación e instalación de software de aplicación  Preparación e instalación de software de aplicación
Preparación e instalación de software de aplicación
 
Software de base
Software de baseSoftware de base
Software de base
 
Proyecto Software de Base
Proyecto Software de BaseProyecto Software de Base
Proyecto Software de Base
 
Franco vasquez
Franco vasquezFranco vasquez
Franco vasquez
 
Hardware y software
Hardware y softwareHardware y software
Hardware y software
 
Tra.de manten
Tra.de mantenTra.de manten
Tra.de manten
 
sotfware
sotfwaresotfware
sotfware
 
Software
SoftwareSoftware
Software
 
Gianna mercedes y victoria trabajo compu
Gianna mercedes y victoria trabajo compuGianna mercedes y victoria trabajo compu
Gianna mercedes y victoria trabajo compu
 
Sotfware de
Sotfware deSotfware de
Sotfware de
 
Fundamentación teórica.12
Fundamentación teórica.12Fundamentación teórica.12
Fundamentación teórica.12
 
Dii4+Sistema+Operativo
Dii4+Sistema+OperativoDii4+Sistema+Operativo
Dii4+Sistema+Operativo
 
Sistema operativo y software de aplicación
Sistema operativo y software de aplicaciónSistema operativo y software de aplicación
Sistema operativo y software de aplicación
 
Computacion
ComputacionComputacion
Computacion
 
El software
El softwareEl software
El software
 

Destacado

Metodo y tecnicas de estudio(ericka)
Metodo y tecnicas de estudio(ericka)Metodo y tecnicas de estudio(ericka)
Metodo y tecnicas de estudio(ericka)erickacarocardenas12
 
Formulación y nomenclatura química 3ºa
Formulación y nomenclatura química 3ºaFormulación y nomenclatura química 3ºa
Formulación y nomenclatura química 3ºatomascaballero
 
pelianimada.blogspot.com
pelianimada.blogspot.compelianimada.blogspot.com
pelianimada.blogspot.combloggo
 
Reseña bibliográfica
Reseña bibliográficaReseña bibliográfica
Reseña bibliográficaB-E-T-Y
 
Actividad 12
Actividad 12Actividad 12
Actividad 12Emilyorok
 
Institución educativa liceo moderno magangue
Institución educativa liceo moderno magangueInstitución educativa liceo moderno magangue
Institución educativa liceo moderno maganguecandelariamartinez102810
 
El sistema nervioso. 6º
El sistema nervioso. 6ºEl sistema nervioso. 6º
El sistema nervioso. 6ºJuan López
 
10 pasos para develar el secreto
10 pasos para develar el secreto10 pasos para develar el secreto
10 pasos para develar el secretoLau Velazco
 
Informe Meteorológico Proyecto Globe
Informe Meteorológico Proyecto Globe Informe Meteorológico Proyecto Globe
Informe Meteorológico Proyecto Globe Joaquín Ayala Chinea
 
Actividad numero 2 del segundo periodo
Actividad numero 2 del segundo periodoActividad numero 2 del segundo periodo
Actividad numero 2 del segundo periodoAndrea Gonzalez
 
Proyecto final
Proyecto finalProyecto final
Proyecto finallulusisz
 

Destacado (20)

Metodo y tecnicas de estudio(ericka)
Metodo y tecnicas de estudio(ericka)Metodo y tecnicas de estudio(ericka)
Metodo y tecnicas de estudio(ericka)
 
Darwin ochoa
Darwin ochoaDarwin ochoa
Darwin ochoa
 
Formulación y nomenclatura química 3ºa
Formulación y nomenclatura química 3ºaFormulación y nomenclatura química 3ºa
Formulación y nomenclatura química 3ºa
 
cdbc&s 2011
cdbc&s 2011cdbc&s 2011
cdbc&s 2011
 
pelianimada.blogspot.com
pelianimada.blogspot.compelianimada.blogspot.com
pelianimada.blogspot.com
 
Reseña bibliográfica
Reseña bibliográficaReseña bibliográfica
Reseña bibliográfica
 
Actividad 12
Actividad 12Actividad 12
Actividad 12
 
Las imágenes
Las imágenesLas imágenes
Las imágenes
 
Potencia
PotenciaPotencia
Potencia
 
Institución educativa liceo moderno magangue
Institución educativa liceo moderno magangueInstitución educativa liceo moderno magangue
Institución educativa liceo moderno magangue
 
El sistema nervioso. 6º
El sistema nervioso. 6ºEl sistema nervioso. 6º
El sistema nervioso. 6º
 
Textflow
TextflowTextflow
Textflow
 
Pruebapresentacion
PruebapresentacionPruebapresentacion
Pruebapresentacion
 
Diapositivas
DiapositivasDiapositivas
Diapositivas
 
10 pasos para develar el secreto
10 pasos para develar el secreto10 pasos para develar el secreto
10 pasos para develar el secreto
 
Anuncios
AnunciosAnuncios
Anuncios
 
Informe Meteorológico Proyecto Globe
Informe Meteorológico Proyecto Globe Informe Meteorológico Proyecto Globe
Informe Meteorológico Proyecto Globe
 
Actividad numero 2 del segundo periodo
Actividad numero 2 del segundo periodoActividad numero 2 del segundo periodo
Actividad numero 2 del segundo periodo
 
Proyecto final
Proyecto finalProyecto final
Proyecto final
 
1º bchto
1º bchto1º bchto
1º bchto
 

Similar a Tema 3 software (20)

Trabajosofware
TrabajosofwareTrabajosofware
Trabajosofware
 
Modulo 1 cele
Modulo 1 celeModulo 1 cele
Modulo 1 cele
 
Software
SoftwareSoftware
Software
 
Unidad I introducción a la informática
Unidad I introducción a la informática Unidad I introducción a la informática
Unidad I introducción a la informática
 
Deber software
Deber softwareDeber software
Deber software
 
Software
SoftwareSoftware
Software
 
Computox d2
Computox d2Computox d2
Computox d2
 
VitTOR
VitTORVitTOR
VitTOR
 
Paz pinto sergio luis
Paz pinto sergio luisPaz pinto sergio luis
Paz pinto sergio luis
 
SISTEMAS OPERATIVOS
SISTEMAS OPERATIVOSSISTEMAS OPERATIVOS
SISTEMAS OPERATIVOS
 
Software
SoftwareSoftware
Software
 
Computadora
ComputadoraComputadora
Computadora
 
Software
SoftwareSoftware
Software
 
Presentacion final
Presentacion finalPresentacion final
Presentacion final
 
Trabajo en grupo informática Andrés Liloy
Trabajo en grupo informática Andrés Liloy Trabajo en grupo informática Andrés Liloy
Trabajo en grupo informática Andrés Liloy
 
software
softwaresoftware
software
 
Clase diez 2011
Clase diez  2011Clase diez  2011
Clase diez 2011
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativos
 
Hardware
HardwareHardware
Hardware
 
Alejandragarcia
AlejandragarciaAlejandragarcia
Alejandragarcia
 

Más de Mario Dominguez Bobadilla (20)

Algoritmos seudocodigo y programas
Algoritmos seudocodigo y programasAlgoritmos seudocodigo y programas
Algoritmos seudocodigo y programas
 
Lenguaje de programación C
Lenguaje de programación CLenguaje de programación C
Lenguaje de programación C
 
Tema 5 computabilidad y algoritmos
Tema 5 computabilidad y algoritmosTema 5 computabilidad y algoritmos
Tema 5 computabilidad y algoritmos
 
Tema 4 manejo de datos
Tema 4 manejo de datosTema 4 manejo de datos
Tema 4 manejo de datos
 
Tema 2 introducción a las tecnologías de la información
Tema 2 introducción a las tecnologías de la informaciónTema 2 introducción a las tecnologías de la información
Tema 2 introducción a las tecnologías de la información
 
Tarea especial kan balam
Tarea especial kan balamTarea especial kan balam
Tarea especial kan balam
 
Algoritmos seudocodigo y programas
Algoritmos seudocodigo y programasAlgoritmos seudocodigo y programas
Algoritmos seudocodigo y programas
 
Resultado de una raiz
Resultado de una raizResultado de una raiz
Resultado de una raiz
 
Raices
RaicesRaices
Raices
 
Numeros primos
Numeros primosNumeros primos
Numeros primos
 
Numero perfecto
Numero perfectoNumero perfecto
Numero perfecto
 
Multiplicacion de matrices
Multiplicacion de matricesMultiplicacion de matrices
Multiplicacion de matrices
 
Mcm
McmMcm
Mcm
 
MCD
MCDMCD
MCD
 
Mayor de 3 numeros con operacion
Mayor de 3 numeros con operacionMayor de 3 numeros con operacion
Mayor de 3 numeros con operacion
 
Materias
MateriasMaterias
Materias
 
Fibonacci
FibonacciFibonacci
Fibonacci
 
Cofactores
CofactoresCofactores
Cofactores
 
Triangulo de floyd
Triangulo de floydTriangulo de floyd
Triangulo de floyd
 
Programas for
Programas forProgramas for
Programas for
 

Tema 3 software

  • 1. Mario Alberto Domínguez Bobadilla TAREA 2 27 De Agosto de 2013 SOFTWARE OPERATIVO Y DE DESARROLLO
  • 2. TEMA 3 SOFTWARE OPERATIVO Y DE DESARROLLO Según la RAE, el software es un conjunto de programas, instrucciones y reglas informáticas que permiten ejecutar distintas tareas en una computadora. En computación, el software es todo programa o aplicación programado para realizar tareas específicas. El término "software" fue usado por primera vez por John W. Tukey en 1957. Se considera que el software es el equipamiento lógico e intangible de un ordenador. En otras palabras, el concepto de software abarca a todas las aplicaciones informáticas, como los procesadores de textos, las planillas de cálculo y los editores de imágenes. El software, como programa, consiste en un código en un lenguaje máquina específico para un procesador individual. El código es una secuencia de instrucciones ordenadas que cambian el estado del hardware de una computadora. El software se suele escribir en un lenguaje de programación de alto nivel, que es más sencillo de escribir (pues es más cercano al lenguaje natural humano), pero debe convertirse a lenguaje máquina para ser ejecutado. El software es desarrollado mediante distintos lenguajes de programación, que permiten controlar el comportamiento de una máquina. Estos lenguajes consisten en un conjunto de símbolos y reglas sintácticas y semánticas, que definen el significado de sus elementos y expresiones. Un lenguaje de programación permite a los programadores del software especificar, en forma precisa, sobre qué datos debe operar una computadora. El software puede distinguirse en tres categorías: software de sistema, software de programación y aplicación de software. De todas maneras esta distinción es arbitraria y muchas veces un software puede caer una o varias categorías. - Software de sistema: ayuda a funcionar al hardware y a la computadora. Incluye el sistema operativo, controladores de dispositivos, herramientas de diagnóstico, servidores, sistema de ventanas, utilidades y más. Su propósito es evitar lo más posible los detalles complejos de la computación, especialmente la memoria y el hardware.
  • 3. - Software de programación: provee herramientas de asistencia al programador. Incluye editores de texto, compiladores, intérprete de instrucciones, enlazadores, debuggers, etc. - Software de aplicación: permite a los usuarios finales hacer determinadas tareas. Algunos software de aplicación son los navegadores, editores de texto, editores gráficos, antivirus, mensajeros, etc. La industria del desarrollo de software se ha convertido en un protagonista importante dentro de la economía global, ya que mueve millones de dólares al año. La compañía más grande y popular del mundo es Microsoft, fundada en 1975 por Bill Gates y Paul Allen. Esta empresa logró trascender gracias a su sistema operativo Windows y a su suite de programas de oficina Office Software Base. Es toda aquella parte lógica realizada generalmente por cada fabricante de computadores o por casas especializadas en el desarrollo de software de base. Este conjunto de programas tiene por función coordinar las diversas partes del sistema computacional para hacerlo funcionar rápida y eficazmente, actuando como mediadores entre los programas de aplicaciones y el hardware del sistema, interpretando los requerimientos de cada programa que ingresa al sistema, poniendo a su disposición cualquiera de los recursos que necesite (ya sean de hardware, software o datos para producir los resultados deseados.) debido a la estrecha relación que existe entre las características de un computador y su software de base, no se puede concebir el uno sin el otro, a tal punto que pareciera que el software es parte integrante del hardware. El software de base se suele clasificar en: a) Sistema Operativo b) Utilitarios c) Traductores de lenguajes
  • 4. Sistema operativo Los primeros sistemas (1945-1955) eran grandes máquinas operadas desde la consola maestra por los programadores. Durante la década siguiente (1955-1965) 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. Un sistema operativo es un programa o conjunto de programas que en un sistema informático gestiona los recursos de hardware y provee servicios a los programas de aplicación, ejecutándose en modo privilegiado respecto de los restantes El conjunto de programas informáticos que permite la administración eficaz de los recursos de una computadora es conocido como sistema operativo o software de sistema. Estos programas comienzan a trabajar apenas se enciende el equipo, ya que gestionan el hardware desde los niveles más básicos y permiten además la interacción con el usuario. Cabe destacar que los sistemas operativos no funcionan sólo en las computadoras. Por el contrario, este tipo de sistemas se encuentran en la mayoría de los dispositivos electrónicos que utilizan microprocesadores: el software de sistema posibilita que el aparato cumpla con sus funciones (por ejemplo, un teléfono móvil o un reproductor de DVD). El sistema operativo cumple con cinco funciones básicas: el suministro de interfaz al usuario, la administración de recursos, la administración de archivos, la administración de tareas y el servicio de soporte y utilidades. En cuanto a la interfaz al usuario, el sistema se encarga de que el sujeto pueda cargar programas, acceder a archivos y realizar otras tareas con la computadora. La administración de recursos permite la dirección del hardware, incluyendo los periféricos y la red. El software de sistema también se encarga de la gestión de archivos, al controlar la creación, la eliminación y el acceso a los mismos, y de la administración de las tareas informáticas que llevan adelante los usuarios finales. Por último, podemos mencionar que el servicio de soporte se encarga de actualizar las versiones, mejorar la seguridad del sistema, agregar nuevas utilidades, controlar los nuevos periféricos que se agregan a la computadora y corregir los errores del software.
  • 5. Los sistemas operativos proporcionan una plataforma de software encima de la cual otros programas, llamados aplicaciones, puedan funcionar. Las aplicaciones se programan para que funcionen encima de un sistema operativo particular, por tanto, la elección del sistema operativo determina en gran medida las aplicaciones que puedes utilizar. Los sistemas operativos más utilizados en los PC son DOS, OS/2, y Windows, pero hay otros que también se utilizan, como por ejemplo Linux. Un usuario normalmente interactúa con el sistema operativo a través de un sistema de comandos, por ejemplo, el sistema operativo DOS contiene comandos como copiar y pegar para copiar y pegar archivos respectivamente. Los comandos son aceptados y ejecutados por una parte del sistema operativo llamada procesador de comandos o intérprete de la línea de comandos. Las interfaces gráficas permiten que utilices los comandos señalando y pinchando en objetos que aparecen en la pantalla. Generaciones de los sistemas operativos La primera generación (1945-1955) corresponde a los primeros equipos, construidos con válvulas de vacío. En esta etapa no existieron sistemas operativos. La segunda generación (1955-1965) corresponde a la etapa a los equipos que estaban basados en el uso de los transistores. Eran más confiables y más duraderos. Desde el punto de vista de los sistemas operativos se tiene el uso de monitores simples (lo que implica procesamiento en lote). Sistemas de Operación de esta etapa son el FMS (Fortran Monitor System) y el IBSYS de la 7094. La tercera generación (1965-1980) se caracterizó por la utilización de circuitos integrados. Los sistemas operativos vinculados a esta etapa introdujeron los conceptos de SPOOLING y en especial el uso de la multiprogramación. También corresponde a esta etapa la aparición del tiempo compartido. En esta etapa no pueden dejar de mencionarse los sistemas de operación OS/360 y Multics. Aquí surgen las primeras versiones del Unix.
  • 6. La cuarta generación (1980-1990) surge con los circuitos integrados de alta integración y por ello aparecen en el mercado las computadoras personales. Esta etapa la dominan sistemas operativos MS-DOS y el Unix (y en un inicio el CP/M). El actual desarrollo de los sistemas operativos basados en GUI (Graphic User Interface) y la incorporación de orientación a objetos así como el soporte de la multimedia, es suficientemente fuerte para hablar de la quinta generación de los sistemas operativos. Lenguajes De Programación Un lenguaje de programación es un lenguaje que puede ser utilizado para controlar el comportamiento de una máquina, particularmente una computadora. Consiste en un conjunto de reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos, respectivamente. Aunque muchas veces se usa lenguaje de programación y lenguaje informático como si fuesen sinónimos, no tiene por qué ser así, ya que los lenguajes informáticos engloban a los lenguajes de programación y a otros más, como, por ejemplo, el HTML. Un lenguaje de programación de bajo nivel es aquel en el que sus instrucciones ejercen un control directo sobre el hardware y están condicionados por la estructura física de la computadora que lo soporta. Un lenguaje de programación de alto nivel se caracteriza por expresar los algoritmos de una manera adecuada a la capacidad cognitiva humana, en lugar de a la capacidad ejecutora de las máquinas. Otra limitación de los lenguajes de nivel bajo es que se requiere de ciertos conocimientos de programación para realizar las secuencias de instrucciones lógicas. Los lenguajes de alto nivel se crearon para que el usuario común pudiese solucionar un problema de procesamiento de datos de una manera más fácil y rápida. Por esta razón, a finales de los años 1950 surgió un nuevo tipo de lenguajes de programación que evitaba estos inconvenientes, a costa de ceder un poco en las ventajas. Estos lenguajes se llaman de tercera generación o de nivel alto, en contraposición a los de bajo nivel o de nivel próximo a la máquina.
  • 7. Se pueden clasificar según la forma de ejecución: Los lenguajes de programación generalmente se dividen en dos grupos principales en base al procesamiento de sus comandos: lenguajes imperativos; Un lenguaje imperativo programa mediante una serie de comandos, agrupados en bloques y compuestos de órdenes condicionales que permiten al programa retornar a un bloque de comandos si se cumple la condición. Estos fueron los primeros lenguajes de programación en uso y aún hoy muchos lenguajes modernos usan este principio. No obstante, los lenguajes imperativos estructurados carecen de flexibilidad debido a la secuencialidad de las instrucciones. lenguajes funcionales. Un lenguaje de programación funcional(a menudo llamado lenguaje procedimental) es un lenguaje que crea programas mediante funciones, devuelve un nuevo estado de resultado y recibe como entrada el resultado de otras funciones. Cuando una función se invoca a sí misma, hablamos de recursividad. Los lenguajes de programación pueden, en líneas generales, dividirse en dos categorías: Lenguaje interpretado Un lenguaje de programación es, por definición, diferente al lenguaje máquina. Por lo tanto, debe traducirse para que el procesador pueda comprenderlo. Un programa escrito en un lenguaje interpretado requiere de un programa auxiliar (el intérprete), que traduce los comandos de los programas según sea necesario. Lenguaje compilado Un programa escrito en un lenguaje "compilado" se traduce a través de un programa anexo llamado compilador que, a su vez, crea un nuevo archivo independiente que no necesita ningún otro programa para ejecutarse a sí mismo. Este archivo se llama ejecutable. Un programa escrito en un lenguaje compilado posee la ventaja de no necesitar un programa anexo para ser ejecutado una vez que ha sido compilado. Además, como sólo es necesaria una traducción, la ejecución se vuelve más rápida.
  • 8. Sin embargo, no es tan flexible como un programa escrito en lenguaje interpretado, ya que cada modificación del archivo fuente (el archivo comprensible para los seres humanos: el archivo a compilar) requiere de la compilación del programa para aplicar los cambios. Por otra parte, un programa compilado tiene la ventaja de garantizar la seguridad del código fuente. En efecto, el lenguaje interpretado, al ser directamente un lenguaje legible, hace que cualquier persona pueda conocer los secretos de fabricación de un programa y, de ese modo, copiar su código o incluso modificarlo. Por lo tanto, existe el riesgo de que los derechos de autor no sean respetados. Por otro lado, ciertas aplicaciones aseguradas necesitan confidencialidad de código para evitar las copias ilegales (transacciones bancarias, pagos en línea, comunicaciones seguras...). ALGUNOS LENGUAJES DE PROGRAMACIÓN Lenguaje Principal área de aplicación Compilado/interpretado ADA Tiempo real Lenguaje compilado BASIC Programación para fines educativos Lenguaje interpretado C Programación de sistema Lenguaje compilado C++ Programación de sistema orientado Lenguaje compilado a objeto Cobol Administración Lenguaje compilado Fortran Cálculo Lenguaje compilado Java Programación orientada a Internet Lenguaje intermediario MATLAB Cálculos matemáticos Lenguaje interpretado Cálculos matemáticos Cálculos matemáticos Lenguaje interpretado LISP Inteligencia artificial Lenguaje intermediario Pascal Educación Lenguaje compilado PHP Desarrollo de sitios web dinámicos Lenguaje interpretado
  • 9. Inteligencia artificial Inteligencia artificial Perl Procesamiento caracteres de Lenguaje interpretado cadenas de Lenguaje interpretado TRADUCTORES DE LENGUAJE Un traductor es un programa que recibe como entrada código escrito en un cierto lenguaje y produce como salida código en otro lenguaje. Generalmente el lenguaje de entrada es de más alto nivel que el de salida. Ejemplos de traductores son los ensambladores y los compiladores. Un ensamblador es un programa que traduce de un lenguaje ensamblador a lenguaje máquina, mientras que un compilador es un programa que traduce de un lenguaje de alto nivel a un lenguaje de bajo nivel o a lenguaje máquina. Un traductor es un programa que toma el texto escrito en un lenguaje (el lenguaje fuente) y lo convierte en el texto equivalente en un segundo lenguaje (el lenguaje destino u objeto). Si el fuente es un lenguaje abstracto o de alto nivel y si el objetivo es un lenguaje de ensamble de bajo nivel o de máquina, el traductor es un compilador. Los programas traductores de lenguajes son: 1. Compiladores. Un compilador es un programa informático que traduce un programa escrito en un lenguaje de programación a otro lenguaje de programación, generando un programa equivalente que la máquina será capaz de interpretar. Usualmente el segundo lenguaje es lenguaje de máquina, pero también puede ser un código intermedio (bytecode), o simplemente texto 2. Interpretes. Es un programa informático capaz de analizar y ejecutar otros programas, escritos en un lenguaje de alto nivel. Los intérpretes se diferencian de los compiladores en que mientras estos traducen un programa desde su descripción en un lenguaje de programación al código de máquina del sistema, los intérpretes sólo realizan la traducción a medida que sea necesaria, típicamente, instrucción por instrucción, y normalmente no guardan el resultado de dicha traducción. Usando un intérprete, un solo archivo fuente puede producir resultados iguales incluso en sistemas sumamente diferentes (ej. una PC y un PlayStation 3). Usando un compilador, un solo archivo fuente puede producir resultados iguales solo si es compilado a distintos ejecutables específicos a cada sistema.
  • 10. Los programas interpretados suelen ser más lentos que los compilados debido a la necesidad de traducir el programa mientras se ejecuta, pero a cambio son más flexibles como entornos de programación y depuración (lo que se traduce, por ejemplo, en una mayor facilidad para reemplazar partes enteras del programa o añadir módulos completamente nuevos), y permiten ofrecer al programa interpretado un entorno no dependiente de la máquina donde se ejecuta el intérprete, sino del propio intérprete (lo que se conoce comúnmente como máquina virtual). SOFTWARE APLICATIVO: A LA MEDIDA Y HECHO A LA MEDIDA El software de aplicación es un conjuntó de programas que fueron concebidos o creados para atender trabajos específicos de algún usuario. Estos pueden incluir características que bien, pueden satisfacer las necesidades de forma total o parcial, que pudieron haber sido definidos por los mismos. Generalmente todos requieren de un servicio de Software base, con el cual podrán ser ejecutados, pero existe la posibilidad de ejecutarlos sin esta base, lo cual implica un mayor costo y complejidad en el desarrollo Estos pueden ser sistemas de aplicación confeccionados especialmente para un usuario determinado (hecho a la medida) o sistemas de aplicación pre-planeados (enlatados). Hecho a Medida Estos ofrecen la oportunidad de personalizar ciertos parámetros según el esquema con el que el usuario lo este trabajando, teniendo en cuenta las características que esta aplicación tenga para el usuario, por esto, al cumplir con los requerimientos necesarios, requiere la disponibilidad de recursos para desarrollarlo.