Está en la página 1de 13

Unidad Temática II

Introducción a la
Informática

Alvaro Velez

Valeria Viva

Año: ​2021
Índice
Software 2
Definición 2
Definición formal 2
Entendiendo el software 2
La electricidad y su significado 2
Dialogando con la computadora 2

Clasificación 3
Software de sistema 3
Sistemas operativos 4
Clasificación 5
Según la administración de las tareas 5
Según la administración de los usuarios 5
Según la arquitectura 5
Según la distribución de procesos 6
Sistemas: de propósito general y embebidos 6
Software de aplicación 7
Software para el desarrollo 7
Denominaciones del software 8

Software libre y propietario 8


Software libre 9
Software propietario 9
Software libre: características, ventajas y desventajas 9
Características básicas 9
Ventajas 9
Desventajas 10
Software propietario: características, ventajas y desventajas 10
Características básicas 10
Ventajas 10
Desventajas 10
Copyright & Copyleft 10
Clasificación de las licencias 11

1
Software
Definición

Un primer pensamiento podría llevarnos a considerar, en contraposición a lo que significa el


hardware, que el software abarca todo aspecto no tangible de la informática; sin embargo esta
afirmación no es correcta ya que existe un ecosistema de elementos no tangibles que no se
ajustan a la definición de software.

El software es el conjunto de instrucciones escritas por una persona que, ejecutadas por el
procesador, genera algún valor agregado al oficiar como intermediario entre las necesidades del
usuario y las prestaciones del hardware (memoria, cpu, discos, periféricos, etc) u otros sistemas.

En un sentido más práctico​, es aquello que permite hacer uso de la computadora para que las
personas puedan llevar a cabo diversos tipos de tareas aprovechando las capacidades del
sistema informático.

Definición formal

Para el estándar 729 del ​IEEE ​(Institute of Electrical and Electronics Engineers), se trata del
conjunto de los programas de cómputo, procedimientos, reglas, documentación y datos
asociados, que forman parte de las operaciones de un sistema de computación.

Entendiendo el software

La electricidad y su significado

El funcionamiento de una computadora se basa en el intercambio de impulsos eléctricos entre


sus distintos componentes, actividad para la cual el ser humano tuvo que establecer una
equivalencia que le facilitara interpretar y le otorgara sentido a los estados eléctricos que
adoptaran dichos componentes.

De este modo, usando el ​código binario,​ se asocia la presencia de electricidad en un


componente con el ​número uno y la ​ausencia ​con el cero (esto realmente no es así, pero a los
efectos ilustrativos lo vamos a considerar como tal).

Dialogando con la computadora

Sabiendo que para dialogar con la computadora es necesario cambiar el estado eléctrico de sus
elementos, ya que en base a esto cada uno de los componentes actúa de distinto modo, es
necesario emplear los periféricos de entrada.

2
A grandes rasgos, un ​periférico de entrada funciona ​transformando la acción del usuario en
impulsos eléctricos;​ los dispositivos envían estímulos eléctricos que la computadora recibe a
través de los puertos en los que están conectados, generando distintos cambios en los estados
de sus componentes. Por ejemplo, mover el mouse o presionar una tecla generan cambios que
luego son mostrados en pantalla.

Otro modo de cambiar el estado eléctrico de los componentes es ​a través del software​, que
son ​instrucciones escritas mediante un dispositivo de entrada -generalmente el teclado- y que
suelen ser guardadas en alguna unidad de almacenamiento perpetuo para su ejecución
posterior; de este modo, cada vez que sea necesario, es posible indicarle a la computadora que
los recupere y que los interprete nuevamente, transformando lo almacenado en impulsos
eléctricos.

Resumiendo​, a un nivel más técnico, el ​software ​es el resultado de haber generado impulsos
eléctricos capaces de alterar el estado de distintos componentes de la computadora y cuya
interpretación por parte de la unidad central de procesamiento resulta en la generación de
otros estímulos eléctricos,​ los ​que finalmente se manifiestan a través de un dispositivo de
salida​ como el monitor, la impresora u otros dispositivos y sistemas.

Clasificación
Existen dos grandes familias:

- Software de sistema
- Software de aplicación

Hay otras clasificaciones que admiten un desglose más minucioso, pero una segregación tan al
detalle implicaría desarrollar una jerarquía muy extensa.

Software de sistema

El software de sistema es uno de los más importantes debido a que es el que ​permite explotar
las capacidades de una computadora​.

También conocido como ​software base​, no necesariamente posee interfaz gráfica e incluir
utilidades y juegos; todo dependerá de la naturaleza del hardware y lo que se pretende
conseguir con el software de sistema.

Lo que debe quedar en claro es que ​persigue el objetivo de hacer del hardware algo utilizable,
ocultando detalles sobre éste y brindando llamadas a instrucciones para evitar una manipulación
indebida o que tal vez complique el uso a las personas.

3
Sistemas operativos

Cuando se habla de este tipo de software de sistema, por lo general se hace referencia al
software base que, además de transformar a la computadora en algo útil, va un poco más allá al
brindar un conjunto de aplicaciones que asisten a la naturaleza del problema para el cual fueron
creados.

Este es el caso de los sistemas operativos más populares utilizados por las computadoras de
escritorio, servidores y dispositivos portátiles; incluyen interfaces orientadas a garantizar una
buena experiencia en el uso y utilidades ofimáticas o de entretenimiento.

La realidad es que un sistema operativo, además, realiza muchas tareas administrativas de cara
la manejo de los recursos como, por ejemplo, la asignación de memoria que requieren las
aplicaciones, el control de los dispositivos de entrada y salida, distribuir el poder de
procesamiento para el tratamiento de los datos, entre otras decenas de actividades.

Entre los servicios principales de un sistema operativo se pueden mencionar:

● Ejecución de programas​: planifica la ejecución de las aplicaciones, lo que implica en qué


momento realizarlo y con qué recursos, además de proveer un mecanismo de finalización
alternativo que permita continuar con el uso de la computadora.
● Acceso a dispositivos de E/S​: proporciona una interfaz que permite el acceso a
dispositivos de E/S encapsulando funcionalidades base para que el usuario no acceda
directamente.
● Detección de errores​: hace uso de diversas estrategias para la detección y corrección
automáticas de errores, como así también llevar a cabo el debido registro. Tanto el
software como el hardware son propensos a generar errores y el sistema base debe
procurar que todo funcione adecuadamente y sin inconsistencias.
● Acceso a archivos​: se encarga de ofrecer funciones que permiten la ubicación de los
archivos, lectura y escritura (creación, actualización y eliminación), implementando
controles de seguridad para no garantizar indebidamente permisos a usuarios. A un nivel
más alto, el usuario final accede a comandos o interfaces gráficas para llevar a cabo estas
operaciones que son del tipo E/S sobre las unidades de almacenamiento.
● Auditoría e informes:​ registra distintos tipos de actividades para detectar irregularidades
en el uso y el funcionamiento del sistema.
● Asignación de recursos​: variará dependiendo si hay uno o varios usuarios y/o tareas en
ejecución simultáneamente, aunque siempre hay muchos procesos en ejecución que el
usuario final desconoce y que requiere un constante arbitraje del sistema para la
asignación y liberación de recursos.

4
Clasificación

Los sistemas operativos pueden ser clasificados de muchas formas, desde cómo funcionan en
términos de la cantidad de tareas que pueden realizar en simultáneo, pasando por la cantidad de
usuarios que admiten, hasta de acuerdo con el modo en el que las tareas se realizan.

Según la administración de las tareas

● Monotarea:​ permiten ejecutar un único programa hasta que finalice o se interrumpa,


independientemente de las prestaciones del hardware; dentro de esta clasificación se
encuentran SO antiguos como el Dr. DOS o el MS DOS.
● Multitarea:​ propio de los sistemas actuales, poseen la capacidad de ejecutar varias
aplicaciones al mismo tiempo; se subclasifican en:
○ Cooperativa​: el sistema operativo delega la responsabilidad al proceso de ceder
el control cuando lo considere necesario, quedando en espera hasta que
nuevamente otro le vuelve a ceder el control. La problemática que se genera es
que al depender del programa, ante un fallo, el SO puede colgarse o generar
latencias variadas. Ejemplo de estos sistemas son los Ms Windows anteriores al
98 y algunas versiones del SO de Mac.
○ Preventiva​: es el propio sistema base el que coordina la ejecución de los
programas, gestionando la asignación de procesamientos; ejemplo de estos son
la versiones más modernas de Windows, algunos Linux, Sinclair QL.
○ Real​: quizá una subclasificación de los SO de ejecución preventiva, aquellos
denominados de ejecución real se caracterizan por ser capaces de distribuir las
tareas entre los distintos procesadores y paralelizar las tareas.

Según la administración de los usuarios

● Monousuario:​ sólo admiten a un único usuario por sesión.


● Multiusuario​: permiten que varios usuarios en simultáneo ejecuten programas y hagan
uso de recursos, habilitando oportunamente la disponibilidad de los servicios mediante la
técnica de ​tiempo compartido ​o ​time sharing​.

Según la arquitectura

● Monolítico​: se tratan de SO que están desarrollados ​como si fuera un único programa​,


concentrando todas las funcionalidades (planificación, sistemas de archivos,
controladores de dispositivos, gestión de memoria, etc, etc) en un único aspecto lógico,
de modo tal que todo está comunicado con todo. Por lo general son más fáciles de
programar y funcionan mucho más rápido, pero presentan algunos cuantos problemas: se
necesita recompilar si se requiere cambiar alguna rutina, todos los procesos se ejecutan

5
como súper usuario, si un proceso falla posiblemente el ​núcleo ​o ​kernel ​se sea
comprometido.
● Micronúcleo:​ se caracteriza por separar funcionalmente los programas del sistema de los
programas de aplicación y asegurar protección adicional con el hardware, sin perder
tanto rendimiento ni
simplicidad pero con la
protección y
organización de una
arquitectura por capas.
La idea fundamental es
obtener un núcleo lo
más pequeño y rápido
posible y tratar el resto
de las funciones y
componentes como
procesos de aplicación,
de modo que que el
núcleo solo contenga lo
necesario para la
gestión de memoria y
procesos.
● Híbrido​: básicamente, es un micronúcleo que tiene código “no esencial”, para que éste
se ejecute más rápido de lo que lo haría si estuviera en espacio de usuario.

Según la distribución de procesos

● Centralizados:​ son aquellos sistemas operativos que usan los recursos de un sólo
equipo, como es el caso habitual de las computadoras de escritorio o de las notebooks.
● Distribuidos​: es la unión lógica de un grupo de sistemas operativos sobre una colección
de nodos computacionales independientes, conectados en red, comunicándose y
físicamente separados.

Sistemas: de propósito general y embebidos

La computadora como la conocemos suele ser identificada como ​de propósito general ya que
tiene por objetivo cubrir un conjunto amplio de necesidades y por consiguiente depende de un
sistema operativo que abrace la misma filosofía.

6
No obstante existen otros dispositivos que son muy específicos en sus funciones y necesitan un
software particular, generalmente que trabaje ​en tiempo real:​ se tratan de los ​sistemas
embebidos.​

Los sistemas embebidos están constituidos por un hardware que hace foco en una problemática
particular y para el cual se desarrolla un software de sistema cuya complejidad puede variar
significativamente entre unos y otros; por ejemplo, en el caso de las tarjetas de extensión de una
computadora convencional, a dicho software se lo conoce bajo la denominación ​driver o
controlador y permite que el sistema operativo de la computadora pueda disponer de las
prestaciones del dispositivo sin saber nada de él, logrando la comunicación entre sí porque
ambas piezas de software conocen un conjunto de protocolos (interfaces) común que deben
respetar.

Software de aplicación
Dentro de esta clasificación recaen todos los programas construidos con el propósito de asistir a
los usuarios en sus diversas tareas como, por ejemplo, aquellos de carácter ofimático como los
procesadores de texto, planillas de cálculo, generador de presentaciones, etc.

Por supuesto que los software de aplicación no se limitan al pack básico de oficina sino que
también es posible adquirir programas que permiten diseñar en 2 y 3 dimensiones, antivirus
informáticos, juegos, y otras aplicaciones para tratar áreas de estudios muy particulares como
aquellos utilizados en la medicina.

Software para el desarrollo

El software que permite crear aplicaciones suele ser discriminado del resto aun cuando en
realidad no deja de ser un programa como cualquiera; la diferencia fundamental es que permite
crear otras aplicaciones.

Se tratan de entornos de trabajo constituidos principalmente por un espacio para escribir, cual si
fuera un procesador de texto, excepto que no incluye opciones para colorear palabras y aplicar
arte sino herramientas que asisten al programador en la tarea de construir programas.

A los efectos, se emplean


programas que suelen ser
conocidos bajo la sigla ​IDE
(Integrated Development
Environment) que ​permiten que
el programador escriba
instrucciones empleando una

7
sintaxis determinada y un conjunto de palabras reservadas​, ambos aspectos ​supeditados al
lenguaje de programación​ con el que se quiera desarrollar el programa.

Aquello que se haya escrito, conocido habitualmente como ​código fuente​, es convertido a un
lenguaje que la computadora puede interpretar y ejecutar, que recibe el nombre de ​lenguaje de
máquina​ o ​código máquina​.

El proceso por el cual se realiza la conversión se llama ​compilación​.

Denominaciones del software

Existe una pluralidad de clasificaciones, casi tantas como tipo de programas; no obstante es
habitual que a lo largo del tiempo el lector se tope con las siguientes denominaciones:

- Tiempo real:​ se tratan de aplicaciones de respuesta rápida y casi inmediata, como en el


caso de aquellas que operan con el giroscopio de un avión, que requiere ser muy rápida.
- Aplicaciones web:​ programas cuyas lógicas residen en servidores y a las que un usuario
puede acceder a través de un programa habitualmente conocido como cliente.
- Standalone:​ engloba al software que puede operar sin depender de una conexión
remota para el consumo de servicios o datos.
- Embebido​: aplicaciones brindan funcionalidad para la operatoria específica de ciertos
dispositivos, como en el caso de la apertura de los paneles de satélite.
- Juegos:​ software que tiene por objetivo el entretenimiento lúdico de los usuarios, en los
que las formas y figuras pueden presentarse en 2 dimensiones o 3 dimensiones
simuladas.
- Aplicaciones ofimáticas:​ es el nombre que reciben las aplicaciones que se emplean para
llevar adelante tareas administrativas típicas de oficina, como procesador de texto, hoja
de cálculo, video conferencia, maquetador de presentaciones, calendario, etc.
- Simuladores:​ como la palabra lo indica, permiten realizar simulaciones de escenarios
diversos y de diversas áreas de estudio, facilitando el comportamiento de variables.

Software libre y propietario


En la actualidad existe una diatriba acerca del software libre y el software propietario: cuando las
personas son las que consumen, quieren recibir las aplicaciones gratis… cuando las personas
son quienes producen el contenido, desean cobrar… pero hay hay una tercer postura y es la de
aquellos que crean programas por amor al arte. Sin embargo, confundir gratis con libre o
propietario con pago, empuja a los usuarios a tomar decisiones extrañas.

8
Software libre

Es un programa sobre el cual su dueño renuncia a la posibilidad de obtener utilidades por las
licencias, patentes, o cualquier forma que adopte su derecho de propiedad sobre él, habilitando
a quien lo obtiene a utilizarlo, copiarlo, modificarlo o transferirlo sin pago alguno al licenciante o a
su creador.

No obstante, el que no se obtengan ganancias no significa que el interesado no deba pagar;


muchas fundaciones construyen aplicaciones y deben neutralizar los costos de desarrollo y de
distribución; ergo, el que una personas pueda distribuir, modificar o usar una pieza de código
gratuitamente, no significa que su adquisición lo sea.

Software propietario

Como es plausible imaginar, el software propietario es todo aquel cuyo uso, modificación o
redistribución está sujeta al permiso expreso del titular del software.

De este modo, entonces, es posible adquirir software gratis pero con las restricciones recién
mencionadas, aunque es bastante común que el software propietario sea pago y que, además,
no pueda transferirse la tenencia.

Software libre: características, ventajas y desventajas

Características básicas

● Se encuentra disponible el código fuente del software, por lo que puede modificarse
libremente.
● Libertad de estudiarlo, adaptarlo y distribuirlo.
● Libertad de usar el programa con cualquier propósito.

Ventajas
● El usuario no comete delito por su tenencia o uso.
● Amplísima gama y variedad de herramientas.
● Actualizaciones periódicas.
● Gana estabilidad con el paso del tiempo por las contribuciones de la comunidad.
● Suelen crearse comunidades que aportan ideas y esfuerzo.
● Costo reducido, mayormente gratis.
● Alternativas a soluciones caras, ofreciendo calidad.
● Evitan la dependencia con grandes corporaciones.

9
Desventajas

● No siempre está amparado por buen marketing; a veces es inexistente.


● Hay áreas de estudio para las cuales no se desarrollan.
● Requiere profesionales debidamente calificados y gerenciamiento para que los aportes
buenos sean los que se incluyan.
● Algunas aplicaciones pueden llegar a ser algo complicadas de instalar.
● Por lo general, existe buena fe pero nunca el autor se hace responsable.
● No siempre se realizan trabajos para una buena UI/UX.
● Mayor posibilidad de incompatibilidad por hardware.

Software propietario: características, ventajas y desventajas

Características básicas
● Restrictivo en muchos aspectos: no se puede modificar, copiar o distribuir sin permiso.
● En oportunidades no es posible acceder al código fuente.

Ventajas
● Suele soportar una gama amplia de hardware.
● Los procesos de testeos son más rigurosos.
● Mejor UI/UX en la mayoría de aplicaciones.
● Algunos programas surgen como parte de una suit de productos que favorecen la
interoperabilidad entre las aplicaciones.
● Facilidad y seguridad en la adquisición: stores autorizados, sitios propios.
● Existencia de programas diseñados específicamente para desarrollar una tarea.
● Por lo general, para tareas de dominio especializado, existen soluciones.
● Dependiendo del licenciamiento, existe soporte.

Desventajas
● Los desarrollos contemplan una o pocas plataformas.
● Restricciones en el uso (marcadas por la licencia).
● Costo elevado.
● El soporte de la aplicación es exclusivo del propietario.
● El usuario que adquiere software propietario depende del roadmap y ciclo de vida que la
empresa le confiera a la solución.

10
Copyright & Copyleft

​ derecho a copia constituye una parte del derecho de autor que establece las
El ​Copyright o
condiciones de uso y comercialización de una obra o creación.

Esta licencia estipula que ​solo el autor puede utilizar,​ modificar y distribuir su contenido, y en el
caso de que un tercero desee hacer uso de este derecho, debe pedir autorización indicando el
fin concreto y pagar por su uso.

Es una de las licencias más utilizadas por empresas y autores de prestigio; los contenidos de
internet que no especifican un tipo de licencia están
protegidos por Copyright.

​ s una licencia que


Por su parte, el ​Copyleft e
permite la libre distribución de copias de una obra
u otro trabajo, así como también las versiones
modificadas de tales copias, exigiendo que los
mismos derechos sean preservados.

En otros términos, el Copyleft invita a compartir el contenido de una obra siempre y cuando la
persona que reciba el material lo siga haciendo de la misma manera en que lo consiguió.

Clasificación de las licencias

● Licencia de software de código abierto permisivas​: se puede crear una obra derivada
sin que ésta tenga obligación de protección alguna (algunas: MIT License, Academic Free
License v.1.2, Artistic License v.2.0, Apache Software License v.1.1).
● Licencia de software de código abierto robustas
○ Fuertes​: las licencias de software de código abierto robustas fuertes o con
copyleft fuerte, contienen una cláusula que obliga a que las obras derivadas o
modificaciones que se realicen al software original, se deban licenciar bajo los
mismos términos y condiciones de la licencia original (algunas Common Public
License v.1.0, GNU General Public License v.2.0 y v.3.0, Eclipse Public License).
○ Débiles​: las licencias de software de código abierto robustas débiles, con copyleft
débil/suave o híbridas, son similares a las anteriores pero admite que las obras
derivadas puedan ser licenciadas bajo otros términos y condiciones distintas
(algunas: GNU Lesser General Public License v.2.1, Mozilla Public License, Open
Source License).
● Licencia de software de código cerrado​: son las más restrictivas y admiten modificación
alguna; de hecho, el código no está disponible para su alternación.
● Software de dominio público​: puede modificarse, copiarse con o sin fines de lucro, etc.

11
● Licencia de usuario final
● Licencia de distribuidores

12

También podría gustarte