Conceptos básicos de las computadoras - Guía rápida

Siendo un niño de hoy en día, debe haber usado, visto o leído sobre computadoras. Esto se debe a que son parte integral de nuestra existencia diaria. Ya sea en la escuela, los bancos, las tiendas, las estaciones de tren, el hospital o su propia casa, las computadoras están presentes en todas partes, lo que hace que nuestro trabajo sea más fácil y rápido para nosotros. Como son partes integrales de nuestras vidas, debemos saber qué son y cómo funcionan. Comencemos por definir formalmente el término computadora.

El significado literal de computadora es un dispositivo que puede calcular. Sin embargo, las computadoras modernas pueden hacer mucho más que calcular.Computer es un dispositivo electrónico que recibe la entrada, almacena o procesa la entrada según las instrucciones del usuario y proporciona la salida en el formato deseado.

Modelo de entrada-proceso-salida

La entrada de la computadora se llama data y el resultado obtenido después de procesarlo, según las instrucciones del usuario, se llama information. Los hechos y cifras en bruto que se pueden procesar mediante operaciones aritméticas y lógicas para obtener información se denominandata.

Los procesos que se pueden aplicar a los datos son de dos tipos:

  • Arithmetic operations - Los ejemplos incluyen cálculos como suma, resta, diferenciales, raíz cuadrada, etc.

  • Logical operations - Los ejemplos incluyen operaciones de comparación como mayor que, menor que, igual a, opuesto, etc.

La figura correspondiente para una computadora real se parece a esto:

Las partes básicas de una computadora son las siguientes:

  • Input Unit - Los dispositivos como el teclado y el mouse que se utilizan para ingresar datos e instrucciones a la computadora se denominan unidad de entrada.

  • Output Unit - Los dispositivos como la impresora y la unidad de presentación visual que se utilizan para proporcionar información al usuario en el formato deseado se denominan unidad de salida.

  • Control Unit- Como sugiere su nombre, esta unidad controla todas las funciones de la computadora. Todos los dispositivos o partes de la computadora interactúan a través de la unidad de control.

  • Arithmetic Logic Unit - Este es el cerebro de la computadora donde tienen lugar todas las operaciones aritméticas y lógicas.

  • Memory- Todos los datos de entrada, instrucciones y datos intermedios a los procesos se almacenan en la memoria. La memoria es de dos tipos:primary memory y secondary memory. La memoria primaria reside dentro de la CPU, mientras que la memoria secundaria es externa a ella.

La unidad de control, la unidad aritmética lógica y la memoria se denominan juntas central processing unit o CPU. Los dispositivos informáticos como el teclado, el mouse, la impresora, etc.que podemos ver y tocar son loshardwarecomponentes de una computadora. El conjunto de instrucciones o programas que hacen que la computadora funcione usando estas partes de hardware se denominasoftware. No podemos ver ni tocar el software. Tanto el hardware como el software son necesarios para el funcionamiento de una computadora.

Características de la computadora

Para entender por qué las computadoras son una parte tan importante de nuestras vidas, veamos algunas de sus características:

  • Speed - Normalmente, una computadora puede realizar entre 3 y 4 millones de instrucciones por segundo.

  • Accuracy- Las computadoras exhiben un alto grado de precisión. Los errores que pueden ocurrir generalmente se deben a datos inexactos, instrucciones incorrectas o errores en los chips, todos errores humanos.

  • Reliability - Los ordenadores pueden realizar el mismo tipo de trabajo de forma repetida sin arrojar errores por cansancio o aburrimiento, muy habituales entre los humanos.

  • Versatility- Las computadoras pueden realizar una amplia gama de trabajos, desde la entrada de datos y la reserva de billetes hasta complejos cálculos matemáticos y observaciones astronómicas continuas. Si puede ingresar los datos necesarios con las instrucciones correctas, la computadora hará el procesamiento.

  • Storage Capacity- Las computadoras pueden almacenar una gran cantidad de datos a una fracción del costo del almacenamiento tradicional de archivos. Además, los datos están a salvo del desgaste normal asociado con el papel.

Ventajas de usar una computadora

Ahora que conocemos las características de las computadoras, podemos ver las ventajas que ofrecen las computadoras

  • Las computadoras pueden hacer la misma tarea repetidamente con la misma precisión.

  • Los ordenadores no se cansan ni se aburren.

  • Las computadoras pueden asumir tareas rutinarias mientras liberan recursos humanos para funciones más inteligentes.

Desventajas de usar una computadora

A pesar de tantas ventajas, las computadoras tienen algunas desventajas propias:

  • Las computadoras no tienen inteligencia; siguen las instrucciones ciegamente sin considerar el resultado.

  • Es necesario un suministro eléctrico regular para que las computadoras funcionen, lo que podría resultar difícil en todas partes, especialmente en los países en desarrollo.

Arranque

Iniciar una computadora o un dispositivo integrado en una computadora se llama booting. El arranque se lleva a cabo en dos pasos:

  • Encendido de la fuente de alimentación
  • Carga del sistema operativo en la memoria principal de la computadora
  • Mantener todas las aplicaciones en estado de preparación en caso de que el usuario lo necesite

El primer programa o conjunto de instrucciones que se ejecuta cuando se enciende la computadora se llama BIOS o Basic Input Output System. BIOS es unfirmware, es decir, una pieza de software programada permanentemente en el hardware.

Si un sistema ya se está ejecutando pero necesita reiniciarse, se llama rebooting. Es posible que sea necesario reiniciar si se ha instalado un software o hardware o si el sistema es inusualmente lento.

Hay dos tipos de arranque:

  • Cold Booting- Cuando el sistema se inicia al encender la fuente de alimentación, se denomina arranque en frío. El siguiente paso en el arranque en frío es la carga del BIOS.

  • Warm Booting- Cuando el sistema ya se está ejecutando y debe reiniciarse o reiniciarse, se denomina arranque en caliente. El arranque en caliente es más rápido que el arranque en frío porque el BIOS no se recarga.

Históricamente, las computadoras se clasificaban según los tipos de procesadores porque el desarrollo en el procesador y las velocidades de procesamiento eran los puntos de referencia del desarrollo. Las primeras computadoras usaban tubos de vacío para procesar, eran enormes y se descomponían con frecuencia. Sin embargo, a medida que los tubos de vacío fueron reemplazados por transistores y luego chips, su tamaño disminuyó y las velocidades de procesamiento aumentaron.

Todas las computadoras y dispositivos informáticos modernos utilizan microprocesadores cuyas velocidades y capacidades de almacenamiento se disparan día a día. El punto de referencia del desarrollo de las computadoras es ahora su tamaño. Las computadoras ahora se clasifican en función de su uso o tamaño:

  • Desktop
  • Laptop
  • Tablet
  • Server
  • Mainframe
  • Supercomputer

Veamos todos estos tipos de computadoras en detalle.

Escritorio

Desktop las computadoras son personal computers (PCs)diseñado para ser utilizado por una persona en un lugar fijo. IBM fue la primera computadora en introducir y popularizar el uso de computadoras de escritorio. Una unidad de escritorio normalmente tiene una CPU (Unidad Central de Procesamiento), monitor, teclado y mouse. La introducción de las computadoras de escritorio popularizó el uso de las computadoras entre la gente común, ya que era compacto y asequible.

Aprovechando la ola de popularidad de las computadoras de escritorio, muchos dispositivos de software y hardware se desarrollaron especialmente para el usuario doméstico o de oficina. La consideración de diseño más importante aquí fue la facilidad de uso.

Ordenador portátil

A pesar de su enorme popularidad, las computadoras de escritorio dieron paso a una computadora personal más compacta y portátil llamada laptop en la década de 2000. Las computadoras portátiles también se llamannotebook computers o simplemente notebooks. Las computadoras portátiles funcionan con baterías y se conectan a las redes mediante chips Wi-Fi (Wireless Fidelity). También tienen chips de eficiencia energética para que puedan conservar energía siempre que sea posible y tener una vida más larga.

Las computadoras portátiles modernas tienen suficiente potencia de procesamiento y capacidad de almacenamiento para usarse en todo el trabajo de oficina, diseño de sitios web, desarrollo de software e incluso edición de audio / video.

Tableta

Después de que las computadoras portátiles, las computadoras se miniaturizaron aún más para desarrollar máquinas que tienen la potencia de procesamiento de una computadora de escritorio, pero son lo suficientemente pequeñas como para sostenerlas en la palma de la mano. Las tabletas tienen una pantalla sensible al tacto de típicamente de 5 a 10 pulgadas donde se usa un dedo para tocar íconos e invocar aplicaciones.

El teclado también se muestra virtualmente siempre que sea necesario y se usa con trazos táctiles. Las aplicaciones que se ejecutan en tabletas se denominanapps. Usan sistemas operativos de Microsoft (Windows 8 y versiones posteriores) o Google (Android). Las computadoras Apple han desarrollado su propia tableta llamadaiPad que utiliza un sistema operativo propietario llamado iOS.

Servidor

Los servidores son computadoras con altas velocidades de procesamiento que brindan uno o más servicios a otros sistemas en el network. Pueden tener o no pantallas adjuntas. Un grupo de computadoras o dispositivos digitales conectados entre sí para compartir recursos se denominanetwork.

Los servidores tienen un alto poder de procesamiento y pueden manejar múltiples solicitudes simultáneamente. Los servidores más comunes en las redes incluyen:

  • Servidor de archivos o almacenamiento
  • Servidor de juegos
  • Servidor de aplicaciones
  • Servidor de base de datos
  • Servidor de correo
  • Servidor de impresión

Marco principal

Mainframesson computadoras utilizadas por organizaciones como bancos, aerolíneas y ferrocarriles para manejar millones y billones de transacciones en línea por segundo. Las características importantes de los mainframes son:

  • De gran tamaño
  • Cientos de veces más rápido que los servidores, normalmente cientos de megabytes por segundo
  • Muy caro
  • Utilice un sistema operativo propietario proporcionado por los fabricantes
  • Funciones de seguridad integradas de hardware, software y firmware

Supercomputadora

Supercomputersson las computadoras más rápidas de la Tierra. Se utilizan para realizar cálculos complejos, rápidos y que requieren mucho tiempo para aplicaciones científicas y de ingeniería. La velocidad o el rendimiento de la supercomputadora se mide en teraflops, es decir, 1012 operaciones de punto flotante por segundo.

Superordenador chino Sunway TaihuLight es la supercomputadora más rápida del mundo con una clasificación de 93 petaflops por segundo, es decir, 93 cuatrillones de operaciones de coma flotante por segundo.

Los usos más comunes de las supercomputadoras incluyen:

  • Investigación y cartografía molecular
  • Predicción del tiempo
  • Investigación ambiental
  • Exploración de petróleo y gas

Como sabe, los dispositivos de hardware necesitan instrucciones de usuario para funcionar. Un conjunto de instrucciones que logran un único resultado se denomina programa o procedimiento. Muchos programas que funcionan juntos para realizar una tarea hacensoftware.

Por ejemplo, un software de procesamiento de texto permite al usuario crear, editar y guardar documentos. Un navegador web permite al usuario ver y compartir páginas web y archivos multimedia. Hay dos categorías de software:

  • Software del sistema
  • Software de la aplicacion
  • Software de utilidad

Discutámoslos en detalle.

Software del sistema

El software necesario para ejecutar las partes de hardware de la computadora y otro software de aplicación se denomina system software. El software del sistema actúa comointerfaceentre el hardware y las aplicaciones de usuario. Se necesita una interfaz porque los dispositivos de hardware o las máquinas y los humanos hablan en diferentes idiomas.

Las máquinas solo entienden el lenguaje binario, es decir, 0 (ausencia de señal eléctrica) y 1 (presencia de señal eléctrica), mientras que los humanos hablan en inglés, francés, alemán, tamil, hindi y muchos otros idiomas. El inglés es el idioma predominante para interactuar con las computadoras. Se requiere software para convertir todas las instrucciones humanas en instrucciones comprensibles para la máquina. Y esto es exactamente lo que hace el software del sistema.

Según su función, el software del sistema es de cuatro tipos:

  • Sistema operativo
  • Procesador de lenguaje
  • Controladores de dispositivo

Sistema operativo

El software del sistema que es responsable del funcionamiento de todas las partes del hardware y su interoperabilidad para llevar a cabo las tareas con éxito se denomina operating system (OS). El sistema operativo es el primer software que se carga en la memoria de la computadora cuando la computadora está encendida y esto se llamabooting. El sistema operativo administra las funciones básicas de una computadora, como almacenar datos en la memoria, recuperar archivos de dispositivos de almacenamiento, programar tareas según la prioridad, etc.

Procesador de lenguaje

Como se mencionó anteriormente, una función importante del software del sistema es convertir todas las instrucciones del usuario en un lenguaje comprensible para la máquina. Cuando hablamos de interacciones hombre-máquina, los lenguajes son de tres tipos:

  • Machine-level language- Este lenguaje no es más que una cadena de 0 y 1 que las máquinas pueden entender. Depende completamente de la máquina.

  • Assembly-level language - Este lenguaje introduce una capa de abstracción al definir mnemonics. Mnemonicsson palabras o símbolos similares al inglés que se usan para denotar una cadena larga de 0 y 1. Por ejemplo, la palabra "LEER" se puede definir para significar que la computadora tiene que recuperar datos de la memoria. El completoinstructiontambién le dirá la dirección de la memoria. El lenguaje de nivel ensamblador esmachine dependent.

  • High level language- Este idioma utiliza declaraciones similares al inglés y es completamente independiente de las máquinas. Los programas escritos en lenguajes de alto nivel son fáciles de crear, leer y comprender.

El programa escrito en lenguajes de programación de alto nivel como Java, C ++, etc. se llama source code. El conjunto de instrucciones en formato legible por máquina se denominaobject code o machine code. System software que convierte el código fuente en código objeto se llama language processor. Hay tres tipos de intérpretes de idiomas:

  • Assembler - Convierte el programa de nivel de ensamblaje en programa de nivel de máquina.

  • Interpreter - Convierte programas de alto nivel en programas a nivel de máquina línea por línea.

  • Compiler - Convierte programas de alto nivel en programas de nivel de máquina de una vez en lugar de línea por línea.

Controladores de dispositivo

El software del sistema que controla y monitorea el funcionamiento de un dispositivo específico en la computadora se llama device driver. Cada dispositivo como impresora, escáner, micrófono, altavoz, etc. que necesita conectarse externamente al sistema tiene un controlador específico asociado. Cuando conecta un nuevo dispositivo, debe instalar su controlador para que el sistema operativo sepa cómo debe administrarse.

Software de la aplicacion

Un software que realiza una sola tarea y nada más se llama application software. El software de aplicación está muy especializado en su función y enfoque para resolver un problema. Entonces, un software de hoja de cálculo solo puede realizar operaciones con números y nada más. Un software de gestión hospitalaria gestionará las actividades del hospital y nada más. A continuación se muestran algunos programas de aplicación de uso común:

  • Procesamiento de textos
  • Spreadsheet
  • Presentation
  • Gestión de base de datos
  • Herramientas multimedia

Software de utilidad

El software de aplicación que ayuda al software del sistema a realizar su trabajo se denomina utility software. Por lo tanto, el software de utilidad es en realidad un cruce entre el software del sistema y el software de aplicación. Los ejemplos de software de utilidad incluyen:

  • Software antivirus
  • Herramientas de administración de discos
  • Herramientas de gestión de archivos
  • Herramientas de compresión
  • Herramientas de respaldo

Como sabe, el software del sistema actúa como una interfaz para el sistema de hardware subyacente. Aquí discutiremos en detalle algunos software importantes del sistema.

Sistema operativo

Operating system (OS)es la línea de vida de la computadora. Conecta todos los dispositivos básicos como CPU, monitor, teclado y mouse; Enchufa la fuente de alimentación y enciéndelo pensando que tienes todo en su lugar. Pero la computadora no se iniciará ni cobrará vida a menos que tenga un sistema operativo instalado porque el sistema operativo:

  • Mantiene todas las piezas de hardware en un estado de preparación para seguir las instrucciones del usuario
  • Coordina entre diferentes dispositivos
  • Programa múltiples tareas según la prioridad
  • Asigna recursos a cada tarea
  • Permite que la computadora acceda a la red
  • Permite a los usuarios acceder y utilizar software de aplicación.

Además del arranque inicial, estas son algunas de las funciones de un sistema operativo:

  • Gestionar recursos informáticos como hardware, software, recursos compartidos, etc.
  • Distribuyendo recursos
  • Evite errores durante el uso del software
  • Controlar el uso indebido de la computadora

Uno de los primeros sistemas operativos fue MS-DOS,desarrollado por Microsoft para IBM PC. Era unCommand Line Interface (CLI)SO que revolucionó el mercado de las PC. DOS fue difícil de usar debido a su interfaz. Los usuarios necesitaban recordar instrucciones para realizar sus tareas. Para hacer que las computadoras sean más accesibles y fáciles de usar, Microsoft desarrollóGraphical User Interface (GUI) SO basado llamado Windows, que transformó la forma en que las personas usaban las computadoras.

Ensamblador

Assembler es un software de sistema que convierte programas de nivel de ensamblaje en código de nivel de máquina.

Estas son las ventajas que ofrece la programación a nivel de ensamblaje:

  • Aumenta la eficiencia del programador, ya que es más fácil recordar los mnemónicos.
  • La productividad aumenta a medida que disminuye el número de errores y, por lo tanto, el tiempo de depuración
  • El programador tiene acceso a recursos de hardware y, por lo tanto, tiene flexibilidad para escribir programas personalizados para la computadora específica

Interprete

La principal ventaja del lenguaje de nivel ensamblador fue su capacidad para optimizar el uso de la memoria y el uso del hardware. Sin embargo, con los avances tecnológicos, las computadoras tenían más memoria y mejores componentes de hardware. Así que la facilidad para escribir programas se volvió más importante que optimizar la memoria y otros recursos de hardware.

Además, se sintió la necesidad de eliminar la programación de un puñado de científicos y programadores de computadoras capacitados, de modo que las computadoras pudieran usarse en más áreas. Esto llevó al desarrollo de lenguajes de alto nivel que eran fáciles de entender debido a la semejanza de los comandos con el idioma inglés.

El software del sistema utilizado para traducir el código fuente de un lenguaje de alto nivel a un código objeto de lenguaje de nivel de máquina línea por línea se denomina interpreter. Un intérprete toma cada línea de código, la convierte en código de máquina y la almacena en el archivo objeto.

los advantagede utilizar un intérprete es que son muy fáciles de escribir y no requieren un gran espacio de memoria. Sin embargo, existe una gran desventaja en el uso de intérpretes, es decir, los programas interpretados tardan mucho en ejecutarse. Para superar estodisadvantage, especialmente para programas grandes, compilers fueron desarrollados.

Compilador

El software del sistema que almacena el programa completo, lo escanea, traduce el programa completo en código objeto y luego crea un código ejecutable se llama compilador. A primera vista, los compiladores se comparan desfavorablemente con los intérpretes porque:

  • son más complejos que los intérpretes
  • necesita más espacio de memoria
  • tomar más tiempo compilando el código fuente

Sin embargo, los programas compilados se ejecutan muy rápido en las computadoras. La siguiente imagen muestra el proceso paso a paso de cómo un código fuente se transforma en un código ejecutable:

Estos son los pasos para compilar código fuente en código ejecutable:

  • Pre-processing - En esta etapa se interpretan las instrucciones del preprocesador, típicamente utilizadas por lenguajes como C y C ++, es decir, se convierten a lenguaje ensamblador.

  • Lexical analysis - Aquí todas las instrucciones se convierten a lexical units como constantes, variables, símbolos aritméticos, etc.

  • Parsing - Aquí se comprueban todas las instrucciones para ver si se ajustan a grammar rulesdel idioma. Si hay errores, el compilador le pedirá que los corrija antes de continuar.

  • Compiling - En esta etapa, el código fuente se convierte en object code.

  • Linking- Si hay enlaces a archivos o bibliotecas externos, las direcciones de sus ejecutables se agregarán al programa. Además, si es necesario reorganizar el código para su ejecución real, se reorganizarán. El resultado final es elexecutable code que está listo para ser ejecutado.

Como saben, el sistema operativo es responsable del funcionamiento del sistema informático. Para ello, lleva a cabo estas tres amplias categorías de actividades:

  • Essential functions - Garantiza una utilización óptima y eficaz de los recursos.

  • Monitoring functions - Supervisa y recopila información relacionada con el rendimiento del sistema

  • Service functions - Brinda servicios a los usuarios

Veamos algunas de las funciones más importantes asociadas con estas actividades.

Gestión de procesadores

Administrar la CPU de una computadora para garantizar su uso óptimo se denomina processor management. La gestión del procesador básicamente implica la asignación de tiempo del procesador a las tareas que deben completarse. Se llamajob scheduling. Los trabajos deben programarse de tal manera que:

  • Hay una utilización máxima de la CPU
  • El tiempo de respuesta, es decir, el tiempo necesario para completar cada trabajo, es mínimo.
  • El tiempo de espera es mínimo
  • Cada trabajo obtiene el tiempo de respuesta más rápido posible
  • Se alcanza el rendimiento máximo, donde el rendimiento es el tiempo medio necesario para completar cada tarea.

Hay dos métodos de programación de trabajos realizados por sistemas operativos:

  • Programación preventiva
  • Programación no preventiva

Programación preventiva

En este tipo de programación, el siguiente trabajo que debe realizar el procesador se puede programar antes de que se complete el trabajo actual. Si surge un trabajo de mayor prioridad, el procesador puede verse obligado a liberar el trabajo actual y tomar el siguiente. Hay dos técnicas de programación que utilizan la programación preventiva:

  • Round robin scheduling - Una pequeña unidad de tiempo llamada time sliceestá definido y cada programa obtiene solo un intervalo de tiempo a la vez. Si no se completa durante ese tiempo, debe unirse a la cola de trabajos al final y esperar hasta que todos los programas tengan un intervalo de tiempo. La ventaja aquí es que todos los programas tienen las mismas oportunidades. La desventaja es que si un programa completa la ejecución antes de que finalice el intervalo de tiempo, la CPU estará inactiva durante el resto de la duración.

  • Response ratio scheduling - La tasa de respuesta se define como

    $$\frac{Elapsed \: Time}{Execution \: time \: received}$$

    Un trabajo con un tiempo de respuesta más corto tiene mayor prioridad. Por lo tanto, es posible que un programa más grande tenga que esperar incluso si se solicitó antes que el programa más corto. Esto mejora el rendimiento de la CPU.

Programación no preventiva

En este tipo de programación, las decisiones de programación de trabajos se toman solo después de que se completa el trabajo actual. Un trabajo nunca se interrumpe para dar prioridad a los trabajos de mayor prioridad. Las técnicas de programación que utilizan la programación no preventiva son:

  • First come first serve scheduling - Esta es la técnica más simple en la que el primer programa que lanza una solicitud se completa primero.

  • Shortest job next scheduling - Aquí se programa a continuación el trabajo que necesita la menor cantidad de tiempo para su ejecución.

  • Deadline scheduling - El trabajo con la fecha límite más temprana está programado para ejecutarse a continuación.

Gestión de la memoria

El proceso de regular la memoria de la computadora y el uso de técnicas de optimización para mejorar el rendimiento general del sistema se denomina memory management. El espacio de memoria es muy importante en el entorno informático moderno, por lo que la gestión de la memoria es un papel importante de los sistemas operativos.

Como sabe, las computadoras tienen dos tipos de memoria: primary y secondary. La memoria primaria esfast but expensive y la memoria secundaria es cheap but slower. El sistema operativo tiene que lograr un equilibrio entre los dos para garantizar que el rendimiento del sistema no se vea afectado debido a la menor cantidad de memoria primaria o los costos del sistema no se disparen debido a demasiada memoria primaria.

Los datos de entrada y salida, las instrucciones del usuario y los datos intermedios para la ejecución del programa deben almacenarse, accederse y recuperarse de manera eficiente para un alto rendimiento del sistema. Una vez que se acepta una solicitud de programa, el sistema operativo le asigna áreas de almacenamiento primarias y secundarias según los requisitos. Una vez que se completa la ejecución, se libera el espacio de memoria asignado. El sistema operativo utiliza muchas técnicas de administración de almacenamiento para realizar un seguimiento de todos los espacios de almacenamiento asignados o libres.

Asignación de almacenamiento contiguo

Ésta es la técnica de asignación de espacio de almacenamiento más simple donde se asignan ubicaciones de memoria contiguas a cada programa. El sistema operativo tiene que estimar la cantidad de memoria requerida para el proceso completo antes de la asignación.

Asignación de almacenamiento no contiguo

Como sugiere el nombre, el programa y los datos asociados no necesitan almacenarse en ubicaciones contiguas. El programa se divide en componentes más pequeños y cada componente se almacena en una ubicación separada. Una tabla mantiene un registro de dónde se almacena cada componente del programa. Cuando el procesador necesita acceder a cualquier componente, el sistema operativo proporciona acceso mediante esta tabla de asignación.

En un escenario de la vida real, el espacio de la memoria primaria podría no ser suficiente para almacenar todo el programa. En ese caso, OS toma la ayuda deVirtual Storagetécnica, donde el programa se almacena físicamente en la memoria secundaria pero parece estar almacenado en la memoria primaria. Esto introduce un retraso minúsculo en el acceso a los componentes del programa. Hay dos enfoques para los almacenamientos virtuales:

  • Program paging - Un programa se divide en un tamaño fijo pagey almacenado en la memoria secundaria. Las páginas se danlogical address or virtual addressde 0 a n. UNpage table asigna las direcciones lógicas a las direcciones físicas, que se utiliza para recuperar las páginas cuando sea necesario.

  • Program segmentation - Un programa se divide en unidades lógicas llamadas segments, dirección lógica asignada de 0 an y almacenada en la memoria secundaria. UNsegment table se utiliza para cargar segmentos de la memoria secundaria a la memoria primaria.

Los sistemas operativos suelen utilizar una combinación de segmentación de programas y páginas para optimizar el uso de la memoria. Un segmento de programa grande puede dividirse en páginas o más de un segmento pequeño puede almacenarse como una sola página.

Gestión de archivos

Los datos y la información se almacenan en computadoras en forma de archivos. La gestión del sistema de archivos para permitir a los usuarios mantener sus datos de forma segura y correcta es una función importante de los sistemas operativos. La gestión de sistemas de archivos por sistema operativo se denominafile management. La administración de archivos es necesaria para proporcionar herramientas para estas actividades relacionadas con archivos:

  • Crear nuevos archivos para almacenar datos
  • Updating
  • Sharing
  • Protección de datos mediante contraseñas y cifrado
  • Recuperación en caso de falla del sistema

Gestión de dispositivos

El proceso de implementación, operación y mantenimiento de un dispositivo por sistema operativo se denomina device management. El sistema operativo utiliza un software de utilidad llamadodevice driver como interfaz para el dispositivo.

Cuando muchos procesos acceden a los dispositivos o solicitan acceso a los dispositivos, el sistema operativo administra los dispositivos de una manera que comparte eficientemente los dispositivos entre todos los procesos. Procesa los dispositivos de acceso a través desystem call interface, una interfaz de programación proporcionada por el sistema operativo.

A medida que las computadoras y las tecnologías informáticas han evolucionado a lo largo de los años, también lo ha hecho su uso en muchos campos. Para satisfacer los crecientes requisitos, el mercado se ha inundado de software cada vez más personalizado. Como todo software necesita un sistema operativo para funcionar, los sistemas operativos también han evolucionado a lo largo de los años para satisfacer la creciente demanda de sus técnicas y capacidades. Aquí discutimos algunos tipos comunes de sistemas operativos basados ​​en sus técnicas de trabajo y también algunos sistemas operativos de uso popular.

SO GUI

GUI es el acrónimo de Graphical User Interface. Un sistema operativo que presenta una interfaz que comprende gráficos e iconos se denominaGUI OS. El sistema operativo GUI es muy fácil de navegar y usar, ya que los usuarios no necesitan recordar los comandos que se deben dar para realizar cada tarea. Los ejemplos de GUI OS incluyen Windows, macOS, Ubuntu, etc.

Sistema operativo de tiempo compartido

Los sistemas operativos que programan tareas para un uso eficiente del procesador se denominan time sharing OS. Tiempo compartido, omultitasking, es utilizado por sistemas operativos cuando varios usuarios ubicados en diferentes terminales necesitan tiempo de procesador para completar sus tareas. Muchas técnicas de programación, como la programación por turnos y la programación del siguiente trabajo más corto, son utilizadas por el sistema operativo de tiempo compartido.

SO en tiempo real

Un sistema operativo que garantiza procesar eventos o datos en vivo y entregar los resultados dentro de un lapso de tiempo estipulado se llama real time OS. Puede ser de una sola tarea o multitarea.

SO distribuido

Un sistema operativo que administra muchas computadoras pero presenta una interfaz de una sola computadora al usuario se llama distributed OS. Este tipo de sistema operativo es necesario cuando los requisitos computacionales no pueden ser cumplidos por una sola computadora y se deben utilizar más sistemas. La interacción del usuario está restringida a un solo sistema; es el sistema operativo que distribuye el trabajo a múltiples sistemas y luego presenta la salida consolidada como si una computadora hubiera trabajado en el problema en cuestión.

Sistemas operativos populares

Inicialmente, las computadoras no tenían sistemas operativos. Todos los programas necesitaban especificaciones completas de hardware para funcionar correctamente, ya que la gestión del procesador, la memoria y el dispositivo debía ser realizada por los propios programas. Sin embargo, a medida que se desarrollaba hardware sofisticado y programas de aplicación más complejos, los sistemas operativos se volvieron esenciales. A medida que las computadoras personales se hicieron populares entre los individuos y las pequeñas empresas, creció la demanda de sistemas operativos estándar. Veamos algunos de los sistemas operativos más populares actualmente:

  • Windows - Windows es un sistema operativo GUI desarrollado por primera vez por Microsoft en 1985. La última versión de Windows es Windows 10. Windows es utilizado por casi el 88% de las PC y portátiles a nivel mundial.

  • Linux- Linux es un sistema operativo de código abierto utilizado principalmente por mainframes y supercomputadoras. Ser de código abierto significa que su código está disponible de forma gratuita y cualquiera puede desarrollar un nuevo sistema operativo basado en él.

  • BOSS- Bharat Operating System Solutions es una distribución india de Linux basada en Debian, un sistema operativo. Está localizado para permitir el uso de idiomas indios locales. BOSS consta de:

    • Kernel de Linux
    • Paquete de aplicaciones de oficina BharteeyaOO
    • navegador web
    • Servicio de correo electrónico Thunderbird
    • Aplicación de chat Pidgim
    • Aplicaciones para compartir archivos
    • Aplicaciones multimedia

SO móvil

Un sistema operativo para teléfonos inteligentes, tabletas y otros dispositivos móviles se llama mobile OS. Algunos de los sistemas operativos más populares para dispositivos móviles incluyen:

  • Android- Este sistema operativo basado en Linux de Google es el sistema operativo móvil más popular actualmente. Casi el 85% de los dispositivos móviles lo utilizan.

  • Windows Phone 7 - Es el último sistema operativo móvil desarrollado por Microsoft.

  • Apple iOS - Este SO móvil es un SO desarrollado por Apple exclusivamente para sus propios dispositivos móviles como iPhone, iPad, etc.

  • Blackberry OS - Este es el sistema operativo utilizado por todos los dispositivos móviles blackberry como teléfonos inteligentes y libros de jugadas.

El software de aplicación que ayuda al sistema operativo a realizar determinadas tareas especializadas se denomina software de utilidad. Veamos algunos de los programas de utilidad más populares.

Antivirus

Un virus puede definirse como un programa malicioso que se adhiere a un programa anfitrión y hace múltiples copias de sí mismo, ralentizando, corrompiendo o destruyendo el sistema. Un software que ayuda al sistema operativo a proporcionar un entorno libre de virus a los usuarios se llamaantivirus. Un antivirus escanea el sistema en busca de virus y, si lo detecta, lo elimina eliminándolo o aislándolo. Puede detectar muchos tipos de virus comoboot virus, Trojan, worm, spywareetc.

Cuando cualquier dispositivo de almacenamiento externo como una unidad USB está conectado al sistema, el software antivirus lo escanea y da una alerta si se detecta un virus. Puede configurar su sistema para escaneos periódicos o escaneos siempre que lo necesite. Es recomendable una combinación de ambas técnicas para mantener su sistema libre de virus.

Herramientas de gestión de archivos

Como sabe, la gestión de archivos es una función importante de los sistemas operativos, ya que todos los datos e instrucciones se almacenan en la computadora en forma de archivos. El software de utilidad que proporciona tareas habituales de gestión de archivos como examinar, buscar, actualizar, obtener una vista previa, etc. se denomina herramientas de gestión de archivos.Windows Explorer en el sistema operativo Windows, Google desktop, Directory Opus, Double Commander, etc. son ejemplos de tales herramientas.

Herramientas de compresión

El espacio de almacenamiento siempre es un bien escaso en los sistemas informáticos. Por lo tanto, los sistemas operativos siempre están buscando formas de minimizar la cantidad de espacio de almacenamiento que ocupan los archivos.Compression tools son utilidades que ayudan a los sistemas operativos a acortar archivos para que ocupen menos espacio. Después de la compresión, los archivos se almacenan en un formato diferente y no se pueden leer ni editar directamente. Debe descomprimirse antes de poder acceder a él para su uso posterior. Algunas de las herramientas de compresión más populares sonWinRAR, PeaZip, The Unarchiveretc.

Limpieza de disco

Las herramientas de limpieza del disco ayudan a los usuarios a liberar espacio en el disco. El software escanea los discos duros para encontrar archivos que ya no se utilizan y libera espacio eliminándolos.

Desfragmentador de disco

El desfragmentador de disco es un disk management utility que aumenta la velocidad de acceso a los archivos reorganizando fragmented files en contiguous locations. Los archivos grandes se dividen en fragmentos y pueden almacenarse ennon-contiguousubicaciones si las contiguas no están disponibles. Cuando el usuario accede a dichos archivos, la velocidad de acceso es lenta debido a la fragmentación. La utilidad desfragmentador de disco escanea el disco duro e intenta ensamblar fragmentos de archivo para que puedan almacenarse en ubicaciones contiguas.

Apoyo

La utilidad de copia de seguridad permite realizar copias de seguridad de archivos, carpetas, bases de datos o discos completos. Se realizan copias de seguridad para que los datos se puedan restaurar en caso de pérdida de datos. La copia de seguridad es un servicio proporcionado por todos los sistemas operativos. En los sistemas independientes, la copia de seguridad se puede realizar en la misma unidad o en una unidad diferente. En el caso de sistemas en red, la copia de seguridad se puede realizar en servidores de copia de seguridad.

Un software cuyo source code se distribuye libremente con una licencia para estudiar, cambiar y distribuir a cualquier persona para cualquier propósito se llama open source software. El software de código abierto es generalmente un esfuerzo de equipo en el que programadores dedicados mejoran el código fuente y comparten los cambios dentro de la comunidad. El software de código abierto ofrece estas ventajas a los usuarios debido a sus comunidades prósperas:

  • Security
  • Affordability
  • Transparent
  • Interoperable en múltiples plataformas
  • Flexible debido a las personalizaciones
  • La localización es posible

Freeware

Un software que está disponible de forma gratuita para su uso y distribución, pero que no se puede modificar porque su código fuente no está disponible, se denomina freeware. Algunos ejemplos de software gratuito son Google Chrome, Adobe Acrobat PDF Reader, Skype, etc.

Shareware

Un software que inicialmente es gratuito y también se puede distribuir a otras personas, pero que debe pagarse después de un período de tiempo estipulado se llama shareware. Su código fuente tampoco está disponible y, por lo tanto, no se puede modificar.

Software propietario

El software que solo se puede usar obteniendo la licencia de su desarrollador después de pagarlo se denomina proprietary software. Un individuo o una empresa puede poseer dicho software propietario. Su código fuente es a menudo un secreto muy bien guardado y puede tener restricciones importantes como:

  • Sin más distribución
  • Número de usuarios que pueden usarlo
  • Tipo de ordenador en el que se puede instalar, ejemplo multitarea o monousuario, etc.

Por ejemplo, Microsoft Windows es un software operativo propietario que viene en muchas ediciones para diferentes tipos de clientes como monousuario, multiusuario, profesional, etc.

El software de aplicación que ayuda a los usuarios en trabajos de oficina regulares, como crear, actualizar y mantener documentos, manejar grandes cantidades de datos, crear presentaciones, programar, etc. se denominan herramientas de oficina. El uso de herramientas de oficina ahorra tiempo y esfuerzo y se pueden realizar muchas tareas repetitivas fácilmente. Algunos de los software que hacen esto son:

  • Procesadores de palabras
  • Spreadsheets
  • Sistemas de bases de datos
  • Software de presentación
  • Herramientas de correo electrónico

Veamos algunos de estos en detalle.

Procesador de textos

Un software para crear, almacenar y manipular documentos de texto se llama procesador de textos. Algunos procesadores de texto comunes son MS-Word, WordPad, WordPerfect, Google docs, etc.

Un procesador de texto le permite:

  • Crea, guarda y edita documentos
  • Formatee las propiedades del texto como fuente, alineación, color de fuente, color de fondo, etc.
  • Revisa la ortografía y la gramática
  • Añadir imágenes
  • Agregue encabezado y pie de página, establezca márgenes de página e inserte marcas de agua

Hoja de cálculo

Spreadsheet es un software que ayuda a los usuarios a procesar y analizar datos tabulares. Es una herramienta contable computarizada. Los datos siempre se ingresan en uncell (intersección de un row y un column) y las fórmulas y funciones para procesar un grupo de celdas están fácilmente disponibles. Algunos de los programas de hoja de cálculo más populares incluyen MS-Excel, Gnumeric, Google Sheets, etc. Aquí hay una lista de actividades que se pueden realizar dentro de un software de hoja de cálculo:

  • Cálculos simples como suma, promedio, conteo, etc.
  • Preparar tablas y gráficos sobre un grupo de datos relacionados
  • Entrada de datos
  • Formato de datos
  • Formato de celda
  • Cálculos basados ​​en comparaciones lógicas

Herramienta de presentación

Presentation tool permite al usuario demostrar información desglosada en pequeños trozos y organizada en páginas llamadas slides. Una serie de diapositivas que presentan una idea coherente a una audiencia se llamapresentation. Las diapositivas pueden tener texto, imágenes, tablas, audio, video u otra información multimedia dispuesta en ellas. MS-PowerPoint, OpenOffice Impress, Lotus Freelance, etc. son algunas herramientas de presentación populares.

Sistema de administración de base de datos

Software que gestiona storage, updating y retrieval de datos mediante la creación de bases de datos se llama database management system. Algunas herramientas populares de administración de bases de datos son MS-Access, MySQL, Oracle, FoxPro, etc.

Dependiendo de su uso, el software puede ser generic o specific. Generic softwarees un software que puede realizar múltiples tareas en diferentes escenarios sin ser modificado. Por ejemplo, cualquier persona puede utilizar un software de procesador de texto para crear diferentes tipos de documentos, como informes, documentos técnicos, material de formación, etc.Specific El software es un software para una aplicación en particular, como un sistema de reserva de trenes, pronóstico del tiempo, etc. Veamos algunos ejemplos de herramientas específicas de dominio.

Sistema de gestión escolar

El sistema de gestión escolar maneja las diversas actividades de una escuela como exámenes, asistencia, admisión, cuotas de los estudiantes, horario, formación de profesores, etc.

La gestión del inventario

La gestión de múltiples actividades como compras, ventas, pedidos, entregas, mantenimiento de existencias, etc. asociadas con productos crudos o procesados ​​en cualquier negocio se denomina gestión de inventario. El software de gestión de inventario garantiza que las existencias nunca estén por debajo de los límites especificados y que las compras / entregas se realicen a tiempo.

Software de nómina

El software de nómina maneja cálculos completos de sueldos de los empleados, cuidando licencias, bonificaciones, préstamos, etc. El software de nómina suele ser un componente del software de gestión de recursos humanos en organizaciones medianas y grandes.

Contabilidad financiera

El software de gestión financiera mantiene un registro electrónico de todas las transacciones financieras de la organización. Tiene muchas cabezas funcionales como cuentas por cobrar, cuentas por pagar, préstamos, nómina, etc.

Administración del restaurante

El software de gestión de restaurantes ayuda a los gerentes de restaurantes a realizar un seguimiento de los niveles de inventario, pedidos diarios, gestión de clientes, programación de empleados, reservas de mesas, etc.

Sistema de reserva ferroviaria

El sistema de reserva de trenes es un software que maneja múltiples módulos como rutas de trenes, gestión de trenes, reserva de asientos, reserva de alimentos, mantenimiento de trenes, estado de trenes, paquetes de viaje, etc.

Sistema de pronóstico del tiempo

El sistema de pronóstico del tiempo es un software en tiempo real que predice el clima de un lugar mediante la recopilación de una gran cantidad de datos en vivo sobre la temperatura atmosférica, la humedad, el nivel del viento, etc. Se utiliza para predecir desastres importantes como terremotos, huracanes, tsunamis, etc.

La técnica para representar y trabajar con números se llama number system. Decimal number systemes el sistema numérico más común. Otros sistemas de números populares incluyen binary number system, octal number system, hexadecimal number system, etc.

Sistema de números decimales

El sistema numérico decimal es un base 10sistema numérico que tiene 10 dígitos del 0 al 9. Esto significa que cualquier cantidad numérica se puede representar usando estos 10 dígitos. El sistema numérico decimal también es unpositional value system. Esto significa que el valor de los dígitos dependerá de su posición. Tomemos un ejemplo para entender esto.

Digamos que tenemos tres números: 734, 971 y 207. El valor de 7 en los tres números es diferente

  • En 734, el valor de 7 es 7 centenas o 700 o 7 × 100 o 7 × 10 2
  • En 971, el valor de 7 es 7 decenas o 70 o 7 × 10 o 7 × 10 1
  • En 207, el valor 0f 7 es 7 unidades o 7 o 7 × 1 o 7 × 10 0

El peso de cada posición se puede representar de la siguiente manera:

En los sistemas digitales, las instrucciones se dan a través de señales eléctricas; la variación se realiza variando el voltaje de la señal. Tener 10 voltajes diferentes para implementar el sistema de números decimales en equipos digitales es difícil. Entonces, se han desarrollado muchos sistemas numéricos que son más fáciles de implementar digitalmente. Veámoslos en detalle.

Sistema de números binarios

La forma más sencilla de variar las instrucciones a través de señales eléctricas es un sistema de dos estados: encendido y apagado. Encendido se representa como 1 y apagado como 0, aunque 0 no es realmente una señal, sino una señal a un voltaje más bajo. El sistema numérico que tiene solo estos dos dígitos, 0 y 1, se llamabinary number system.

Cada dígito binario también se llama bit. El sistema de números binarios también es un sistema de valores posicionales, donde cada dígito tiene un valor expresado en potencias de 2, como se muestra aquí.

En cualquier número binario, el dígito más a la derecha se llama least significant bit (LSB) y el dígito más a la izquierda se llama most significant bit (MSB).

Y el equivalente decimal de este número es la suma del producto de cada dígito con su valor posicional.

11010 2 = 1 × 2 4 + 1 × 2 3 + 0 × 2 2 + 1 × 2 1 + 0 × 2 0

= 16 + 8 + 0 + 2 + 0

= 26 10

La memoria de la computadora se mide en términos de cuántos bits puede almacenar. Aquí hay una tabla para la conversión de la capacidad de la memoria.

  • 1 byte (B) = 8 bits
  • 1 kilobytes (KB) = 1024 bytes
  • 1 megabyte (MB) = 1024 KB
  • 1 Gigabyte (GB) = 1024 MB
  • 1 terabyte (TB) = 1024 GB
  • 1 Exabyte (EB) = 1024 PB
  • 1 Zettabyte = 1024 EB
  • 1 Yottabyte (YB) = 1024 ZB

Sistema de números octales

Octal number system tiene ocho dígitos: 0, 1, 2, 3, 4, 5, 6 y 7. El sistema de números octales también es un sistema de valores posicionales en el que cada dígito tiene su valor expresado en potencias de 8, como se muestra aquí -

El equivalente decimal de cualquier número octal es la suma del producto de cada dígito con su valor posicional.

726 8 = 7 × 8 2 + 2 × 8 1 + 6 × 8 0

= 448 + 16 + 6

= 470 10

Sistema numérico hexadecimal

Octal number system tiene 16 símbolos - 0 a 9 y A a F donde A es igual a 10, B es igual a 11 y así sucesivamente hasta F. El sistema numérico hexadecimal también es un sistema de valores posicionales donde cada dígito tiene su valor expresado en potencias de 16 , como se muestra aquí -

El equivalente decimal de cualquier número hexadecimal es la suma del producto de cada dígito con su valor posicional.

27FB 16 = 2 × 16 3 + 7 × 16 2 + 15 × 16 1 + 10 × 16 0

= 8192 + 1792 + 240 +10

= 10234 10

Relación del sistema numérico

La siguiente tabla muestra la relación entre los sistemas numéricos decimales, binarios, octales y hexadecimales.

HEXADECIMAL DECIMAL OCTAL BINARIO
0 0 0 0000
1 1 1 0001
2 2 2 0010
3 3 3 0011
4 4 4 0100
5 5 5 0101
6 6 6 0110
7 7 7 0111
8 8 10 1000
9 9 11 1001
UN 10 12 1010
segundo 11 13 1011
C 12 14 1100
re 13 15 1101
mi 14 dieciséis 1110
F 15 17 1111

ASCII

Además de los datos numéricos, la computadora debe poder manejar alfabetos, signos de puntuación, operadores matemáticos, símbolos especiales, etc. que forman el conjunto completo de caracteres del idioma inglés. El conjunto completo de caracteres o símbolos se denomina códigos alfanuméricos. El código alfanumérico completo generalmente incluye:

  • 26 letras mayúsculas
  • 26 letras minúsculas
  • 10 dígitos
  • 7 signos de puntuación
  • 20 a 40 caracteres especiales

Ahora, una computadora solo comprende valores numéricos, sea cual sea el sistema numérico utilizado. Entonces, todos los caracteres deben tener un equivalente numérico llamado código alfanumérico. El código alfanumérico más utilizado es el Código estándar estadounidense para el intercambio de información (ASCII). ASCII es un código de 7 bits que tiene 128 (27) códigos posibles.

ISCII

ISCII significa Indian Script Code for Information Interchange. IISCII se desarrolló para admitir idiomas indios en computadora. Los idiomas admitidos por IISCI incluyen Devanagari, Tamil, Bangla, Gujarati, Gurmukhi, Tamil, Telugu, etc. IISCI es utilizado principalmente por departamentos gubernamentales y, antes de que pudiera ponerse al día, un nuevo estándar de codificación universal llamadoUnicode Fue presentado.

Unicode

Unicode es un sistema de codificación internacional diseñado para ser utilizado con escrituras de diferentes idiomas. A cada carácter o símbolo se le asigna un valor numérico único, en gran parte dentro del marco de ASCII. Anteriormente, cada script tenía su propio sistema de codificación, que podía entrar en conflicto entre sí.

Por el contrario, esto es lo que Unicode pretende hacer oficialmente: Unicode proporciona un número único para cada carácter, sin importar la plataforma, sin importar el programa, sin importar el idioma .

Como usted sabe, los sistemas numéricos decimales, binarios, octales y hexadecimales son sistemas numéricos de valor posicional. Para convertir binario, octal y hexadecimal a un número decimal, solo necesitamos sumar el producto de cada dígito con su valor posicional. Aquí vamos a aprender otras conversiones entre estos sistemas numéricos.

Decimal a binario

Los números decimales se pueden convertir a binarios mediante la división repetida del número por 2 mientras se registra el resto. Tomemos un ejemplo para ver cómo sucede esto.

Los restos deben leerse de abajo hacia arriba para obtener el equivalente binario.

43 10 = 101011 2

Decimal a Octal

Los números decimales se pueden convertir a octales mediante la división repetida del número por 8 mientras se registra el resto. Tomemos un ejemplo para ver cómo sucede esto.

Leyendo el resto de abajo hacia arriba,

473 10 = 731 8

Decimal a hexadecimal

Los números decimales se pueden convertir a octales mediante la división repetida del número por 16 mientras se registra el resto. Tomemos un ejemplo para ver cómo sucede esto.

Leyendo el resto de abajo hacia arriba obtenemos,

423 10 = 1A7 16

Binario a octal y viceversa

Para convertir un número binario en un número octal, se siguen estos pasos:

  • Empezando por el bit menos significativo, cree grupos de tres bits.

  • Si hay uno o dos bits menos al hacer los grupos, se pueden agregar ceros después del bit más significativo

  • Convierta cada grupo en su número octal equivalente

Tomemos un ejemplo para entender esto.

1011001010 12 = 2625 8

Para convertir un número octal en binario, cada dígito octal se convierte a su equivalente binario de 3 bits de acuerdo con esta tabla.

Dígito octal 0 1 2 3 4 5 6 7
Equivalente binario 000 001 010 011 100 101 110 111

54673 8 = 101100110111011 2

Binario a hexadecimal

Para convertir un número binario en un número hexadecimal, se siguen estos pasos:

  • Empezando por el bit menos significativo, cree grupos de cuatro bits.

  • Si hay uno o dos bits menos al hacer los grupos, se pueden agregar ceros después del bit más significativo.

  • Convierta cada grupo en su número octal equivalente.

Tomemos un ejemplo para entender esto.

10110110101 2 = DB5 16

Para convertir un número octal en binario, cada dígito octal se convierte en su equivalente binario de 3 bits.

Microprocessores el cerebro de la computadora, que hace todo el trabajo. Es un procesador de computadora que incorpora todas las funciones de CPU (Unidad Central de Procesamiento) en un solo IC (Circuito Integrado) o como máximo unos pocos IC. Los microprocesadores se introdujeron por primera vez a principios de la década de 1970. 4004 fue el primer microprocesador de propósito general utilizado por Intel en la construcción de computadoras personales. La llegada de microprocesadores de propósito general de bajo costo ha sido fundamental en el desarrollo de la sociedad moderna tal como lo ha hecho.

Estudiaremos en detalle las características y componentes de un microprocesador.

Características de los microprocesadores

Los microprocesadores son dispositivos multipropósito que pueden diseñarse para funciones genéricas o especializadas. Los microprocesadores de computadoras portátiles y teléfonos inteligentes son de uso general, mientras que los diseñados para procesamiento gráfico o visión artificial son especializados. Hay algunas características que son comunes a todos los microprocesadores.

Estas son las características definitorias más importantes de un microprocesador:

  • Velocidad de reloj
  • Conjunto de instrucciones
  • Tamaño de la palabra

Velocidad de reloj

Cada microprocesador tiene un internal clockque regula la velocidad a la que ejecuta las instrucciones y también la sincroniza con otros componentes. La velocidad a la que el microprocesador ejecuta las instrucciones se denominaclock speed. Las velocidades de reloj se miden en MHz o GHz, donde 1 MHz significa 1 millón de ciclos por segundo, mientras que 1 GHz equivale a mil millones de ciclos por segundo. Aquí el ciclo se refiere al ciclo de una sola señal eléctrica.

Actualmente, los microprocesadores tienen una velocidad de reloj en el rango de 3 GHz, que es el máximo que puede alcanzar la tecnología actual. Velocidades superiores a esta generan suficiente calor como para dañar el propio chip. Para superar esto, los fabricantes están utilizando varios procesadores que trabajan en paralelo en un chip.

Tamaño de la palabra

El número de bits que puede procesar un procesador en una sola instrucción se denomina word size. El tamaño de la palabra determina la cantidad de RAM a la que se puede acceder de una vez y el número total de pines en el microprocesador. El número total de pines de entrada y salida determina a su vez la arquitectura del microprocesador.

El primer microprocesador comercial Intel 4004 fue un procesador de 4 bits. Tenía 4 pines de entrada y 4 pines de salida. El número de pines de salida es siempre igual al número de pines de entrada. Actualmente, la mayoría de los microprocesadores utilizan una arquitectura de 32 o 64 bits.

Conjunto de instrucciones

Un comando dado a una máquina digital para realizar una operación en un dato se llama instruction. El conjunto básico de instrucciones a nivel de máquina que un microprocesador está diseñado para ejecutar se denomina suinstruction set. Estas instrucciones realizan este tipo de operaciones:

  • Transferencia de datos
  • Operaciones aritmeticas
  • Operaciones lógicas
  • Flujo de control
  • Entrada / salida y control de la máquina

Componentes del microprocesador

En comparación con los primeros microprocesadores, los procesadores de hoy son muy pequeños, pero aún tienen estas partes básicas desde el primer modelo:

  • CPU
  • Bus
  • Memory

UPC

La CPU está fabricada como un circuito integrado a gran escala (VLSI) y tiene estas partes:

  • Instruction register - Contiene la instrucción a ejecutar.

  • Decoder - Decodifica (convierte a lenguaje de nivel de máquina) la instrucción y la envía a la ALU (Unidad Aritmética Lógica).

  • ALU - Dispone de los circuitos necesarios para realizar operaciones aritméticas, lógicas, de memoria, de registro y de secuenciación de programas.

  • Register- Contiene resultados intermedios obtenidos durante el procesamiento del programa. Los registros se utilizan para almacenar estos resultados en lugar de la RAM porque acceder a los registros es casi 10 veces más rápido que acceder a la RAM.

Autobús

Las líneas de conexión utilizadas para conectar las partes internas del chip del microprocesador se denominan bus. Hay tres tipos de buses en un microprocesador:

  • Data Bus- Las líneas que transportan datos hacia y desde la memoria se denominan bus de datos. Es un bus bidireccional con un ancho igual a la longitud de palabra del microprocesador.

  • Address Bus - Es un responsable unidireccional de llevar la dirección de una ubicación de memoria o puerto de E / S desde la CPU a la memoria o puerto de E / S.

  • Control Bus - Líneas que transportan señales de control como clock signals, interrupt signal o ready signalse denominan bus de control. Son bidireccionales. La señal que indica que un dispositivo está listo para procesarse se llamaready signal. La señal que indica a un dispositivo que interrumpa su proceso se llamainterrupt signal.

Memoria

El microprocesador tiene dos tipos de memoria

  • RAM- La memoria de acceso aleatorio es una memoria volátil que se borra cuando se apaga. Todos los datos e instrucciones se almacenan en RAM.

  • ROM- La memoria de solo lectura es una memoria no volátil cuyos datos permanecen intactos incluso después de desconectar la alimentación. El microprocesador puede leer de él en cualquier momento que lo desee, pero no puede escribir en él. Está preprogramado con la mayoría de los datos esenciales, como la secuencia de arranque, por parte del fabricante.

El primer microprocesador introducido en 1971 fue un microprocesador de 4 bits con memoria de 4m5KB y tenía un conjunto de 45 instrucciones. En las últimas cinco décadas, la velocidad del microprocesador se ha duplicado cada dos años, como predijo Gordon Moore, cofundador de Intel. Los microprocesadores actuales pueden acceder a la memoria de 64 GB. Dependiendo del ancho de los datos que los microprocesadores pueden procesar, pertenecen a estas categorías:

  • 8-bit
  • 16-bit
  • 32-bit
  • 64-bit

El tamaño del conjunto de instrucciones es otra consideración importante al clasificar los microprocesadores. Inicialmente, los microprocesadores tenían conjuntos de instrucciones muy pequeños porque el hardware complejo era caro y difícil de construir.

A medida que se desarrolló la tecnología para superar estos problemas, se agregaron instrucciones cada vez más complejas para aumentar la funcionalidad del microprocesador. Sin embargo, pronto se dio cuenta de que tener grandes conjuntos de instrucciones era contraproducente, ya que muchas instrucciones que rara vez se usaban permanecían inactivas en un valioso espacio de memoria. Así que la vieja escuela de pensamiento que apoyaba conjuntos de instrucción más pequeños ganó popularidad.

Aprendamos más sobre los dos tipos de microprocesadores en función de su conjunto de instrucciones.

RISC

RISC significa Reduced Instruction Set Computers. Tiene un pequeño conjunto de instrucciones altamente optimizadas. Las instrucciones complejas también se implementan utilizando instrucciones más simples, lo que reduce el tamaño del conjunto de instrucciones. La filosofía de diseño de RISC incorpora estos puntos destacados:

  • El número de instrucciones debe ser mínimo.
  • Las instrucciones deben tener la misma longitud.
  • Deben utilizarse modos de direccionamiento simples
  • Reducir las referencias de memoria para recuperar operandos agregando registros

Algunas de las técnicas utilizadas por la arquitectura RISC incluyen:

  • Pipelining- Se recupera una secuencia de instrucciones incluso si ello significa superposición de instrucciones en la búsqueda y ejecución.

  • Single cycle execution - La mayoría de las instrucciones RISC necesitan un ciclo de CPU para ejecutarse.

Ejemplos de procesadores RISC son Intel P6, Pentium4, AMD K6 y K7, etc.

CISC

CISC significa Complex Instruction Set Computers. Admite cientos de instrucciones. Las computadoras compatibles con CISC pueden realizar una amplia variedad de tareas, lo que las hace ideales para computadoras personales. Estas son algunas características de la arquitectura CISC:

  • Conjunto de instrucciones más grande
  • Las instrucciones son de longitud variable
  • Modos de direccionamiento complejos
  • Las instrucciones toman más de un ciclo de reloj
  • Funciona bien con compiladores más simples

Ejemplos de procesadores CISC son Intel 386 y 486, Pentium, Pentium II y III, Motorola 68000, etc.

ÉPICO

EPIC significa Explicitly Parallel Instruction Computing. Es una arquitectura de computadora que es un cruce entre RISC y CISC, tratando de brindar lo mejor de ambos. Sus características importantes incluyen:

  • Instrucciones paralelas en lugar de ancho fijo
  • Mecanismo de comunicación del plan de ejecución del compilador al hardware
  • Los programas deben tener semántica secuencial

Algunos procesadores EPIC son Intel IA-64, Itanium, etc.

Se requiere memoria en las computadoras para almacenar datos e instrucciones. La memoria está organizada físicamente como un gran número de células que son capaces de almacenar un bit cada una. Lógicamente están organizados como grupos de bits denominadoswordsque tienen asignada una dirección. Se accede a los datos e instrucciones a través de estosmemory address. La velocidad con la que se puede acceder a estas direcciones de memoria determina el costo de la memoria. Cuanto más rápida sea la velocidad de la memoria, mayor será el precio.

Se puede decir que la memoria de la computadora está organizada de manera jerárquica donde la memoria con las velocidades de acceso más rápidas y los costos más altos se encuentra en la parte superior, mientras que las que tienen las velocidades más bajas y, por lo tanto, los costos más bajos se encuentran en la parte inferior. Según este criterio, la memoria es de dos tipos:primary y secondary. Aquí veremos la memoria primaria en detalle.

Las principales características de la memoria primaria, que la distinguen de la memoria secundaria son:

  • Se accede directamente por el procesador
  • Es la memoria más rápida disponible
  • Cada palabra se almacena así como
  • Es volátil, es decir, su contenido se pierde una vez que se apaga

Dado que la memoria primaria es cara, se desarrollan tecnologías para optimizar su uso. Estos son tipos amplios de memoria primaria disponibles.

RAM

RAM significa Random Access Memory. El procesador accede a todas las direcciones de memoria directamente, independientemente de la longitud de la palabra, lo que agiliza el almacenamiento y la recuperación. La RAM es la memoria más rápida disponible y, por tanto, la más cara. Estos dos factores implican que la RAM está disponible en cantidades muy pequeñas de hasta 1 GB. La RAM es volátil pero puede ser de cualquiera de estos dos tipos

DRAM (RAM dinámica)

Cada celda de memoria en una DRAM está hecha de un transistor y un capacitor, que almacenan un bit de datos. Sin embargo, esta celda comienza a perder su carga y, por lo tanto, los datos se almacenan en menos de una milésima de segundo. Por lo tanto, debe actualizarse mil veces por segundo, lo que consume tiempo del procesador. Sin embargo, debido al pequeño tamaño de cada celda, una DRAM puede tener una gran cantidad de celdas. La memoria principal de la mayoría de las computadoras personales está hecha de DRAM.

SRAM (SRAM)

Cada celda en SRAM está hecha de un flip flop que almacena un bit. Conserva su parte hasta que la fuente de alimentación está encendida y no necesita actualizarse como DRAM. También tiene ciclos de lectura-escritura más cortos en comparación con DRAM. SRAM se utiliza en aplicaciones especializadas.

ROM

ROM significa Read Only Memory. Como sugiere el nombre, la ROM solo puede ser leída por el procesador. No se pueden escribir datos nuevos en la ROM. Los datos que se almacenarán en la ROM se escriben durante la propia fase de fabricación. Contienen datos que no necesitan ser alterados, como la secuencia de arranque de una computadora o tablas algorítmicas para aplicaciones matemáticas. La ROM es más lenta y, por tanto, más barata que la RAM. Conserva sus datos incluso cuando se desconecta la alimentación, es decir, no es volátil. La ROM no se puede alterar de la misma manera que la RAM, pero hay tecnologías disponibles para programar este tipo de ROM:

PROM (ROM programable)

PROM se puede programar usando un dispositivo de hardware especial llamado programador PROM o quemador PROM.

EPROM (ROM programable borrable)

La EPROM se puede borrar y luego programar mediante señales eléctricas especiales o rayos UV. Las EPROM que se pueden borrar mediante rayos ultravioleta se denominan UVEPROM y las que se pueden borrar mediante señales eléctricas se denominan EEPROM. Sin embargo, manejar las señales eléctricas es más fácil y seguro que los rayos UV.

Memoria caché

La pequeña pieza de memoria volátil de alta velocidad disponible para el procesador para un procesamiento rápido se llama cache memory. La caché puede ser una parte reservada de la memoria principal, otro chip en la CPU o un dispositivo de almacenamiento de alta velocidad independiente. La memoria caché está hecha de SRAM de alta velocidad. El proceso de mantener algunos datos e instrucciones en la memoria caché para un acceso más rápido se llamacaching. El almacenamiento en caché se realiza cuando se accede una y otra vez a un conjunto de datos o instrucciones.

Siempre que el procesador necesita algún dato o instrucciones, primero verifica la caché. Si no está disponible allí, se accede a la memoria principal y finalmente a la memoria secundaria. Como el caché tiene una velocidad muy alta, el tiempo que se dedica a acceder a él cada vez es insignificante en comparación con el tiempo que se ahorra si los datos están en el caché. La búsqueda de datos o instrucciones en la caché se denominacache hit.

Usted sabe que la memoria del procesador, también conocida como memoria primaria, es cara y limitada. La memoria primaria más rápida también es volátil. Si necesitamos almacenar gran cantidad de datos o programas de forma permanente, necesitamos una memoria permanente más económica. Tal recuerdo se llamasecondary memory. Aquí discutiremos los dispositivos de memoria secundaria que se pueden usar para almacenar una gran cantidad de archivos de datos, audio, video y multimedia.

Características de la memoria secundaria

Estas son algunas características de la memoria secundaria, que la distinguen de la memoria primaria:

  • No es volátil, es decir, retiene datos cuando se apaga
  • Son grandes capacidades por una suma de terabytes
  • Es más barato en comparación con la memoria primaria.

Dependiendo de si el dispositivo de memoria secundaria es parte de la CPU o no, existen dos tipos de memoria secundaria: fija y extraíble.

Veamos algunos de los dispositivos de memoria secundaria disponibles.

Disco duro

La unidad de disco duro se compone de una serie de discos circulares denominados platters dispuestos uno sobre el otro a casi ½ pulgadas de distancia alrededor de un spindle. Los discos están hechos de material no magnético como una aleación de aluminio y están recubiertos con 10-20 nm de material magnético.

El diámetro estándar de estos discos es de 14 pulgadas y giran con velocidades que varían desde 4200 rpm (rotaciones por minuto) para computadoras personales hasta 15000 rpm para servidores. Los datos se almacenan magnetizando o desmagnetizando el revestimiento magnético. Se utiliza un brazo lector magnético para leer y escribir datos en los discos. Un disco duro moderno típico tiene capacidad en terabytes (TB).

Unidad de CD

CD significa Compact Disk. Los CD son discos circulares que utilizan rayos ópticos, generalmente láseres, para leer y escribir datos. Son muy baratos, ya que puede obtener 700 MB de espacio de almacenamiento por menos de un dólar. Los CD se insertan en unidades de CD integradas en el gabinete de la CPU. Son portátiles, ya que puede expulsar la unidad, extraer el CD y llevarlo consigo. Hay tres tipos de CD:

  • CD-ROM (Compact Disk – Read Only Memory)- Los datos de estos CD son grabados por el fabricante. El software patentado, el audio o el video se publican en CD-ROM.

  • CD-R (Compact Disk – Recordable)- El usuario puede escribir datos una vez en el CD-R. No se puede eliminar ni modificar más tarde.

  • CD-RW (Compact Disk – Rewritable) - Los datos se pueden escribir y borrar en estos discos ópticos una y otra vez.

Unidad de DVD

DVD significa Digital Video Display. Los DVD son dispositivos ópticos que pueden almacenar 15 veces más datos que los CD. Por lo general, se utilizan para almacenar archivos multimedia enriquecidos que necesitan una gran capacidad de almacenamiento. Los DVD también vienen en tres variedades: solo lectura, grabables y regrabables.

Memoria USB

Pen drive es un dispositivo de memoria portátil que utiliza memoria de estado sólido en lugar de campos magnéticos o láseres para registrar datos. Utiliza una tecnología similar a la RAM, excepto que no es volátil. También se le llama unidad USB, unidad clave o memoria flash.

Disco Blu Ray

Blu Ray Disk (BD) es un medio de almacenamiento óptico que se utiliza para almacenar videos de alta definición (HD) y otros archivos multimedia. BD utiliza láser de longitud de onda más corta en comparación con CD / DVD. Esto permite que el brazo de escritura se concentre más en el disco y, por lo tanto, empaque más datos. Los BD pueden almacenar hasta 128 GB de datos.

Un punto de conexión que actúa como interfaz entre la computadora y los dispositivos externos como mouse, impresora, módem, etc. se llama port. Los puertos son de dos tipos:

  • Internal port - Conecta la placa base a dispositivos internos como unidad de disco duro, unidad de CD, módem interno, etc.

  • External port - Conecta la placa base a dispositivos externos como módem, mouse, impresora, unidades flash, etc.

Veamos algunos de los puertos más utilizados.

Puerto serial

Los puertos seriales transmiten datos secuencialmente un bit a la vez. Por lo que solo necesitan un cable para transmitir 8 bits. Sin embargo, también los hace más lentos. Los puertos seriales suelen ser conectores macho de 9 o 25 pines. También se conocen como puertos COM (comunicación) o puertos RS323C.

Puerto paralelo

Los puertos paralelos pueden enviar o recibir 8 bits o 1 byte a la vez. Los puertos paralelos vienen en forma de pines hembra de 25 pines y se utilizan para conectar impresoras, escáneres, unidades de disco duro externas, etc.

Puerto USB

USB son las siglas de Universal Serial Bus. Es el estándar de la industria para la conexión de datos digitales de corta distancia. El puerto USB es un puerto estandarizado para conectar una variedad de dispositivos como impresora, cámara, teclado, altavoz, etc.

Puerto PS-2

PS / 2 significa Personal System/2. Es un puerto estándar hembra de 6 pines que se conecta al cable mini-DIN macho. IBM introdujo PS / 2 para conectar el mouse y el teclado a las computadoras personales. Este puerto ahora está casi obsoleto, aunque algunos sistemas compatibles con IBM pueden tener este puerto.

Puerto de infrarrojos

Infrared portes un puerto que permite el intercambio inalámbrico de datos en un radio de 10 m. Dos dispositivos que tienen puertos infrarrojos se colocan uno frente al otro para que los haces de luces infrarrojas se puedan utilizar para compartir datos.

Puerto bluetooth

Bluetoothes una especificación de telecomunicaciones que facilita la conexión inalámbrica entre teléfonos, computadoras y otros dispositivos digitales a través de una conexión inalámbrica de corto alcance. El puerto Bluetooth permite la sincronización entre dispositivos habilitados para Bluetooth. Hay dos tipos de puertos Bluetooth:

  • Incoming - Se utiliza para recibir conexión desde dispositivos Bluetooth.

  • Outgoing - Se utiliza para solicitar la conexión a otros dispositivos Bluetooth.

Puerto FireWire

FireWire es el estándar de interfaz de Apple Computer para permitir la comunicación de alta velocidad mediante bus serie. También se llama IEEE 1394 y se usa principalmente para dispositivos de audio y video como videocámaras digitales.