Está en la página 1de 11

INSTITUTO POLITÉCNICO NACIONAL

ESCUELA SUPERIOR DE INGENIERÍA


MECÁNICA Y ELÉCTRICA
UNIDAD ZACATENCO

Trabajo de Investigación de la Unidad I

Carmona Sánchez Alex Emiliano1


Adán Guerrero José Ruben2

RESUMEN
En este trabajo se expone las investigaciones con respecto a los temas de la Unidad
I correspondientes del Programa Sintético. En el cual se explican cada uno de
ellos.

Palabras clave: Sistemas Operativos, Lenguajes de programación, Lenguaje C.

1
Estudiante de primer semestre en ESIME Unidad Zacatenco
2
Profesor de Programación en ESIME Unidad Zacatenco
ÍNDICE

Pág.

1 Introducción 1

2 Sistemas Operativos 1

3 Análisis Comparativo de Sistemas Operativos 5

4 Evolución de los Lenguajes de Programación 6

5 Intérpretes y Compiladores 9

6 Ambiente Integral del Lenguaje C 10

7 Bibliografía 11
Introducción
El hombre siempre ha tratado de comunicarse con computador y que haga el trabajo por nosotros.
Por ello siempre ha tratado de enlazar esa comunicación y conseguir esa tarea con una mayor
eficacia.
Los computadores son buenos para hacer tareas rutinarias. Idealmente, cualquier problema tedioso
y repetitivo debería ser resuelto por un computador, y los seres humanos sólo deberíamos
encargarnos de los problemas realmente interesantes: los que requieren creatividad, pensamiento
crítico y subjetividad.
La programación es el proceso de transformar un método para resolver problemas en uno que pueda
ser entendido por el computador.

Para tener un mayor apego a la programación se deben de conocer primero las bases de la
programación. Por ello se llevó a cabo esta investigación en la cual contiene algunos temas como
los Sistema Operativos, lenguajes de programación, intérpretes y compiladores

Sistemas Operativos
Definición
Es el software que coordina y dirige todos los servicios y aplicaciones que utiliza el usuario en una
computadora, por eso es el más importante y fundamental. Se trata de programas que permiten y
regulan los aspectos más básicos del sistema. Los sistemas operativos más utilizados son Windows,
Linux, OS/2 y DOS.
Los sistemas operativos, también llamados núcleos o kernels, suelen ejecutarse de manera
privilegiada respecto al resto del software, sin permitir que un programa cualquiera realice cambios
de importancia sobre él que puedan comprometer su funcionamiento.

Las primeras versiones de las computadoras no tenían sistemas operativos. En la década de los
sesenta los ordenadores usaban procesamientos por lotes y fue durante estos años cuando
comenzaron a desarrollarse los sistemas operativos.
Si bien a partir de los ochenta ya habían comenzado a surgir algunos muy conocidos, a partir de
los noventa estos programas comenzaron a ser más flexibles y fuertes. Uno de los grandes hitos fue
el lanzamiento de Windows 95.

¿Para qué sirve?

Los sistemas operativos permiten que otros programas puedan utilizarlos de apoyo para poder
funcionar. Por eso, a partir del sistema utilizado pueden ser instalados ciertos programas y otros
no.
Son parte esencial del funcionamiento de los sistemas informáticos y la pieza de software central
en la cadena de procesos, ya que establecen las condiciones mínimas para que todo funcione: la
administración de los recursos, el método de comunicación con el usuario y con otros sistemas, las
aplicaciones adicionales.

3
Componentes

El sistema operativo posee tres componentes esenciales o paquetes de software que permiten la
interacción con el hardware:

• Sistema de archivos. Es el registro de archivos donde adquieren una estructura arbórea.

• Interpretación de comandos. Se logra con aquellos componentes que permiten la interpretación


de los comandos, que tienen como función comunicar las órdenes dadas por el usuario en
un lenguaje que el hardware pueda interpretar (sin que aquel que dé las órdenes conozca dicho
lenguaje).

• Núcleo. Permite el funcionamiento en cuestiones básicas como la comunicación, entrada y


salida de datos, gestión de procesos y la memoria, entre otros.

Características
• Es el intermediario entre el usuario y el hardware.
• Es necesario para el funcionamiento de todos los computadores, tabletas y teléfonos móviles.
• Otorga seguridad y protege a los programas y archivos del ordenador.
• Está diseñado para ser amigable con el usuario y fácil de usar.
• Permite administrar de manera eficiente los recursos del ordenador.
• La mayoría requiere del pago de una licencia para su uso.
• Permite interactuar con varios dispositivos.
• Es progresivo, ya que existen constantemente nuevas versiones que se actualizan y adaptan a
las necesidades del usuario.

Funciones de un sistema operativo


• Gestionar la memoria de acceso aleatorio y ejecutar las aplicaciones, designando los recursos
necesarios.
• Administrar al CPU gracias a un algoritmo de programación.
• Direccionar las entradas y salidas de datos (a través de drivers) por medio de los periféricos de
entrada o salida.
• Administrar la información para el buen funcionamiento de la PC.
• Dirigir las autorizaciones de uso para los usuarios.
• Administrar los archivos.

Ejemplos de sistemas operativos

• Microsoft Windows. De los más populares que existen, inicialmente se trató de un conjunto
de distribuciones o entornos operativos gráficos, cuyo rol era brindar a otros sistemas operativos
más antiguos como el MS-DOS una representación visual de soporte y de otras herramientas
de software. Se publicó por primera vez en 1985 y desde entonces se ha actualizado a nuevas
versiones.

4
• MS-DOS. Se trata del Sistema Operativo de Disco de MicroSoft (siglas en inglés de MicroSoft
Disk Operating System), uno de los sistemas operativos más comunes para computadoras
personales IBM durante la década de 1980 y mediados de los 90. Contaba con una serie de
comandos internos y externos mostrados en una pantalla oscura de manera secuencial.

• UNIX. Este sistema operativo fue desarrollado en 1969 para ser portable, multitarea y
multiusuario. Se trata realmente de una familia entera de SO similares, algunas de cuyas
distribuciones se han ofrecido comercialmente y otros en formato libre, siempre a partir del
núcleo llamado Linux. [1]

Análisis comparativo de sistemas operativos

Usuario Usuario Tarea


Sistema Programación Multitarea
único múltiple única
MS - DOS 16 bits X X

Windows 3.1 16/32 bits X No

Windows 95
32 bits X Preventivo
/98/Me

Windows
32 bits X Cooperativo
NT/2000

WindowsXP 32/64 bits X Preventivo

Unix/Linux 32/64 bits X Preventivo

MAC/OS X 32 bits X Preventivo

VMS 32 bits X Preventivo


[2]

5
Evolución de los lenguajes de programación
Definición
Es un lenguaje formal que, mediante una serie de instrucciones, le permite a un programador
escribir un conjunto de órdenes, acciones consecutivas, datos y algoritmos para, de esa forma, crear
programas que controlen el comportamiento físico y lógico de una máquina.

Mediante este lenguaje se comunican el programador y la máquina, permitiendo especificar, de


forma precisa, aspectos como:
• cuáles datos debe operar un software específico
• cómo deben ser almacenados o transmitidos esos datos
• las acciones que debe tomar el software dependiendo de las circunstancias variables

Para explicarlo mejor (en otras y con menos palabras), el lenguaje de programación es un sistema
estructurado de comunicación, el cual está conformado por conjuntos de símbolos, palabras claves,
reglas semánticas y sintácticas que permiten el entendimiento entre un programador y una máquina.

Es importante recalcar que existe el error común de usar como sinónimos el lenguaje de
programación y el lenguaje informático, pero ¿por qué no debemos confundirlos?
Pues, es debido a que el lenguaje de programación obedece a un conjunto de reglas que permiten
expresar las instrucciones que serán interpretadas por el programador. Y el lenguaje informático
comprende otros lenguajes que dan formato a un texto, pero no son programación en sí mismos.

Características
Para utilizar un lenguaje de programación, de manera efectiva, debemos estudiarlo y comprenderlo
desde tres perspectivas:

• Sintaxis: el conjunto de símbolos y reglas para formar sentencias.


• Semántica: las reglas para transformar sentencias en instrucciones lógicas.
• Pragmática: utilizando las construcciones particulares del lenguaje.

En español, las letras forman palabras que forman oraciones. En los lenguajes de programación,
los caracteres forman sentencias que en conjunto forman instrucciones.

Tipos de lenguaje de programación


El lenguaje de programación es la base para construir todas las aplicaciones digitales que se utilizan
en el día a día y se clasifican en dos tipos principales: lenguaje de bajo nivel y de alto nivel.

Lenguaje de programación de bajo nivel


Son lenguajes totalmente orientados a la máquina.
Este lenguaje sirve de interfaz y crea un vínculo inseparable entre el hardware y el software.
Además, ejerce un control directo sobre el equipo y su estructura física. Para aplicarlo
adecuadamente es necesario que el programador conozca sólidamente el hardware.
Éste se subdivide en dos tipos:
6
Lenguaje máquina
Es el más primitivo de los lenguajes y es una colección de dígitos binarios o bits (0 y 1) que la
computadora lee e interpreta y son los únicos idiomas que las computadoras entienden.
Ejemplo: 10110000 01100001
No entendemos muy bien lo que dice ¿verdad? Por eso, el lenguaje ensamblador nos permite
entender mejor a qué se refiere este código.

Lenguaje ensamblador
El lenguaje ensamblador es el primer intento de sustitución del lenguaje de máquina por uno más
cercano al utilizado por los humanos.
Un programa escrito en este lenguaje es almacenado como texto (tal como programas de alto nivel)
y consiste en una serie de instrucciones que corresponden al flujo de órdenes ejecutables por un
microprocesador.
Sin embargo, dichas máquinas no comprenden el lenguaje ensamblador, por lo que se debe
convertir a lenguaje máquina mediante un programa llamado Ensamblador.
Este genera códigos compactos, rápidos y eficientes creados por el programador que tiene el control
total de la máquina.

Ejemplo: MOV AL, 61h (asigna el valor hexadecimal 61 al registro «AL»)

Lenguaje de programación de alto nivel


Tienen como objetivo facilitar el trabajo del programador, ya que utilizan unas instrucciones más
fáciles de entender.
Además, el lenguaje de alto nivel permite escribir códigos mediante idiomas que
conocemos (español, inglés, etc.) y luego, para ser ejecutados, se traduce al lenguaje de máquina
mediante traductores o compiladores.

Traductor
Traducen programas escritos en un lenguaje de programación al lenguaje máquina de la
computadora y a medida que va siendo traducida, se ejecuta.

Compilador
Permite traducir todo un programa de una sola vez, haciendo una ejecución más rápida y puede
almacenarse para usarse luego sin volver a hacer la traducción. [3]

Ejemplos de lenguajes de alto nivel:

Java
Es el más actualizado actualmente y esto se debe a su simplicidad y legibilidad. No en vano, más
de 9 millones de usuarios lo usan y está presente en miles de millones de dispositivos, lo que
significa un 15% del total en el mundo frente a otros lenguajes.
Él se ha mantenido a lo largo del siglo XXI en las primeras posiciones, lo cual da una idea de lo
importante que ha sido este lenguaje de programación en lo que utilizamos hoy en día.
También es una de las habilidades más requeridas entre desarrolladores, tanto es así que es de el
más importante skill que buscan las principales empresas de software y tecnología.
7
Es utilizado en diferentes segmentos, tales como aplicaciones móviles, herramientas para
aprendizaje, hojas de cálculo, entre otras.

Python
Un lenguaje de programación multiplataforma y multiparadigma, que también tiene un propósito
general. Esto significa que soporta la orientación a objetos, la programación imperativa y
funcional.
Su sencillez, legibilidad y similitud con el idioma inglés lo convierten en un gran lenguaje, ideal
para principiantes.

Lenguaje de programación C
Surgió en los años 70 y tenía un nombre que no cambió mucho: «B».
Con un alto porcentaje de uso al igual que java, 12%, es el segundo lenguaje más usado a nivel
mundial. Su uso también es muy variado y se puede ejecutar en la mayoría de los sistemas
operativos.
Es comúnmente utilizado en aplicaciones de escritorio.

C++
Es una evolución del antes mencionado C.
Este, sin embargo, tiene un enfoque en desarrollo de aplicaciones y softwares más complejos, que
exigen, por ejemplo, una intervención visual.
Los programas de diseño gráfico son un ejemplo del uso de este lenguaje de programación.

C#
Conocido también como “C Sharp” entre los programadores, también es una evolución de C y
C++.
C# es un lenguaje de programación orientado a objetos. Creado en el año 2000, se destaca por su
simplicidad, trabaja con aplicaciones bajo el framework .net como el visual studio de Windows.
Cuenta con un 7% de uso total a nivel mundial. [4]

8
Funciones del lenguaje de programación

En general un lenguaje de programación sirve para programar. Sin embargo, cada uno tiene un
alcance y forma de comunicación diferente.
En resumidas cuentas, el lenguaje de bajo nivel permite la comunicación interna de la máquina,
cada instrucción tiene su código único de operación.

Y el lenguaje de alto nivel facilita la captación de instrucciones que el programador le da a la


máquina, mientras que éste introduce datos en el idioma conocido la máquina lo va absorbiendo en
lenguaje de máquinas mediante traductores o compiladores, permitiendo así:
• reducir el tiempo de programación
• entender más fácilmente la tarea a realizar
• permitir al programador desvincularse del funcionamiento interno de la máquina, entre otros.

En otras palabras, el lenguaje de bajo nivel es cercano a los idiomas de las máquinas mientras que
el lenguaje de alto nivel está más cerca del entendimiento e idioma humano.

Intérpretes, Compiladores
Definición de Interprete
El funcionamiento de un intérprete se caracteriza por traducir y ejecutar, de una en una, las
instrucciones del código fuente de un programa, pero, sin generar como salida código objeto. El
proceso que realiza un intérprete es el siguiente: lee la primera instrucción del código fuente, la
traduce a código objeto y la ejecuta; a continuación, hace lo mismo con la segunda instrucción; y
así sucesivamente, hasta llegar a la última instrucción del programa, siempre y cuando, no se
produzca ningún error que detenga el proceso.

Ejemplos de Intérpretes:
• BASIC
• QBASIC
• QUICKBASIC
• VISUALBASIC
• SMALLTALK
• JAVA [5]

Definición de Compiladores
Un compilador es un programa informático, que se encarga de traducir el código fuente de una
aplicación que este en desarrollo, es decir convierte un programa hecho en lenguaje de
programación de alto nivel a un lenguaje de máquina , el cual es conocido como de bajo nivel, de
tal forma que sea más entendible y mucho más fácil de procesar en el equipo en el que se está
ejecutando.

9
De igual manera un traductor es el que toma como entrada un texto escrito y da como salida otro
texto en un lenguaje llamado objeto.

Ejemplos de Compiladores:
• C
• C++
• Pascal
• FORTRAN
• COBOL [5]

Ambiente integral del Lenguaje C


C es un lenguaje de programación de propósito general que ofrece control de flujo y estructuras
sencillas y un buen conjunto de operadores. No es un lenguaje de muy alto nivel y más bien un
lenguaje pequeño, sencillo y no está especializado en ningún tipo de aplicación. Este lenguaje ha
sido estrechamente ligado al sistema operativo UNIX, puesto que fueron desarrollados
conjuntamente. Sin embargo, este lenguaje no está ligado a ningún sistema operativo ni a ninguna
máquina concreta. Se le suele llamar lenguaje de programación de sistemas debido a su utilidad
para escribir compiladores y sistemas operativos, aunque de igual forma se puede desarrollar
cualquier tipo de aplicación.

En 1967 Martin Richard creo el lenguaje BCPL que fue la base para la creación del lenguaje B
escrito por Ken Thompson en 1970 con la intención de recodificar el UNIX, que en su fase de
arranque estaba codificado en lenguaje ensamblador.
El lenguaje c fue creado por Dennis Ritchie en los laboratorios Bell Telephone en 1972, el c fue
creado con un fin específico: el diseño del sistema operativo UNIX. Este lenguaje solo es una
modificación del lenguaje B. El lenguaje C se llama de esta forma debido a que su predecesor fue
llamado B.

10
La novedad que proporcionó el lenguaje C sobre el B fue el diseño de tipos y estructuras de datos.
Los tipos estructurados básicos de C son las estructuras, las uniones, y los arrays. Estos permiten
la definición y declaración de tipos de mayor complejidad.

Los tipos básicos de datos en el lenguaje C eran "CHAR" (carácter), "INT" (enteros), "FLOAT"
(Reales en simple precisión), y "DOUBLE" (Reales en doble Precisión). Posteriormente se
añadieron los tipos "SHORT" (Enteros de longitud<=longitud de un int), "LONG" (Enteros de
longitud >= longitud de un entero), "UNSIGNED" (Enteros sin signo), y "ENUMERACIONES".
Como el C es un lenguaje muy poderoso y flexible su uso se difundió muy rápidamente más allá
de los laboratorios Bell. Los programadores de todo el mundo comenzaron a usarlo para escribir
todo tipo de programas. Sin embargo, diferentes organizaciones comenzaron a utilizar muy pronto
sus propias versiones del C, las pequeñas diferencias entre las implementaciones comenzaron a dar
problemas a los programadores. Para resolver este problema, el American National Stándards
(ANSI) formo un comité en 1983 para establecer una definición estándar del C, que llego a ser
conocida como C estándar ANSI. Con unas cuantas excepciones, todos los compiladores del C
modernos de adhieren a este estándar. [6]

Bibliografía
[1] https://concepto.de/sistema-operativo/ [Fecha de consulta: 4 de Septiembre de 2021]
[2] https://afloresj.jimdofree.com [Fecha de consulta: 4 de Septiembre de 2021]
[3] https://rockcontent.com/es/blog/que-es-un-lenguaje-de-programacion/ [Fecha de consulta: 4 de
Septiembre de 2021]
[4] https://rockcontent.com/es/blog/tipos-de-lenguaje-de-
programacion/#:~:text=Java,mundo%20frente%20a%20otros%20lenguajes. [Fecha de consulta: 4
de Septiembre de 2021]
[5] https://sites.google.com/site/aremisecu3/home/ejemplos-de-compiladores-e-interpretes [Fecha de
consulta 22 de Septiembre de 2021]
[6] http://esimefpsalinas.blogspot.com/2014/02/13-interpretes-y-compiladores.html [Fecha de consulta
6 de Septiembre de 2021]
11

También podría gustarte