El sistema de archivos bajo Linux es una estructura de arbol construida bajo archivos y directorios. Linux almacena distintos tipos de información sobre cada archivo en sus sistema de archivos, incluyendo la siguiente información:
• El nombre del archivo.
• El tipo de archivo.
• El tamaño del archivo.
• La ubicación fisica del archivo en el disco.
• Varios horarios de permisos controlan los derechos de acceso del propietario, los miembros del grupo asociado y otros utilitarios. Si se utiliza el comando ls-l se creará una lista de archivos que muestra el campo de permisos. Los permisos del archivo se modifican mediante el comando chmod.
PROGRAMAS SUID Y SGID:
Existen 2 bits adicionales de permiso asociados a un archivo: los bits SUID y SGID.
SUID representa Establecer el identificador del usuario y SGID representa Establecer el identificador de grupo. Cuando se ejecutan programas con estos permisos, éstos se comportan como si pertenecieran a identificadores de usuarios distintos. Cuando se ejecuta un programa con SUID, su identificador de usuario efectivo es el mismo que el del usuario propietario del programa en el sistema de archivo, independientemente de quién esté ejecutando realmente el programa. SGID es similar, salvo que cambia el identificador de grupo.
Los problemas de seguridad de los programas SUID surgen cuando el programa ejecuta una línea de comandos, activa un shell o ejecuta una archivo que los usuarios pueden modificar para que contenga sus propios comandos.
Aunque algunos programas SUID son necesarios, es mejor reducirlos al mínimo.-
COPIAS DE SEGURIDAD
Pocos temas con los que tratan los administradores típicos de linux son tan importantes como las copias de seguridad de un sistema. Un administrador puede ser despedido o una empresa puede llegar a colapsarse por la pérdida de datos valiosos. Los discos de una computadora son dispositivos electromecánicos y pueden fallar en cualquier momento.
La mayoría de discos duros nuevos están homologados para periodos de funcionamiento de unas 150.000 horas de media entre fallos; es decir mas de 5 años. Pero las estadísticas de tiempos medios pueden ser engañosas. Su disco puede fallar después de 50.000 horas de trabajo o podría durar mas de 10 años(algo poco probable). Correrá un gran riesgo si solo realiza copias de seguridad de un sistema de tarde en tarde y se arriesgara aun mas si no comprueba sus cintas de copia de seguridad.
• El nombre del archivo.
• El tipo de archivo.
• El tamaño del archivo.
• La ubicación fisica del archivo en el disco.
• Varios horarios de permisos controlan los derechos de acceso del propietario, los miembros del grupo asociado y otros utilitarios. Si se utiliza el comando ls-l se creará una lista de archivos que muestra el campo de permisos. Los permisos del archivo se modifican mediante el comando chmod.
PROGRAMAS SUID Y SGID:
Existen 2 bits adicionales de permiso asociados a un archivo: los bits SUID y SGID.
SUID representa Establecer el identificador del usuario y SGID representa Establecer el identificador de grupo. Cuando se ejecutan programas con estos permisos, éstos se comportan como si pertenecieran a identificadores de usuarios distintos. Cuando se ejecuta un programa con SUID, su identificador de usuario efectivo es el mismo que el del usuario propietario del programa en el sistema de archivo, independientemente de quién esté ejecutando realmente el programa. SGID es similar, salvo que cambia el identificador de grupo.
Los problemas de seguridad de los programas SUID surgen cuando el programa ejecuta una línea de comandos, activa un shell o ejecuta una archivo que los usuarios pueden modificar para que contenga sus propios comandos.
Aunque algunos programas SUID son necesarios, es mejor reducirlos al mínimo.-
COPIAS DE SEGURIDAD
Pocos temas con los que tratan los administradores típicos de linux son tan importantes como las copias de seguridad de un sistema. Un administrador puede ser despedido o una empresa puede llegar a colapsarse por la pérdida de datos valiosos. Los discos de una computadora son dispositivos electromecánicos y pueden fallar en cualquier momento.
La mayoría de discos duros nuevos están homologados para periodos de funcionamiento de unas 150.000 horas de media entre fallos; es decir mas de 5 años. Pero las estadísticas de tiempos medios pueden ser engañosas. Su disco puede fallar después de 50.000 horas de trabajo o podría durar mas de 10 años(algo poco probable). Correrá un gran riesgo si solo realiza copias de seguridad de un sistema de tarde en tarde y se arriesgara aun mas si no comprueba sus cintas de copia de seguridad.
Mecanismos de Protección
Dominios de Protección
Muchos objetos del sistema necesitan protección, tales como la cpu, segmentos de memoria, unidades de disco, terminales, impresoras, procesos, archivos, bases de datos, etc.
Cada objeto se referencia por un nombre y tiene habilitadas un conjunto de operaciones sobre él. Un dominio es un conjunto de parejas (objeto, derechos):
• Cada pareja determina:
• Un objeto.
• Un subconjunto de las operaciones que se pueden llevar a cabo en él.
Un derecho es el permiso para realizar alguna de las operaciones. Es posible que un objeto se encuentre en varios dominios con “distintos” derechos en cada dominio.
Un proceso se ejecuta en alguno de los dominios de protección:
• Existe una colección de objetos a los que puede tener acceso.
• Cada objeto tiene cierto conjunto de derechos.
Los procesos pueden alternar entre los dominios durante la ejecución. Una llamada al S. O. provoca una alternancia de dominio. En algunos S. O. los dominios se llaman anillos.
Una forma en la que el S. O. lleva un registro de los objetos que pertenecen a cada dominio es mediante una matriz:
• Los renglones son los dominios.
• Las columnas son los objetos.
• Cada elemento de la matriz contiene los derechos correspondientes al objeto en ese dominio, por ej.: leer, escribir, ejecutar.
Listas Para Control de Acceso
Las “matrices de protección” son muy grandes y con muchos lugares vacíos:
• Desperdician espacio de almacenamiento.
• Existen métodos prácticos que almacenan solo los elementos no vacíos por filas o por columnas. La lista de control de acceso (ACL: access control list):
• Asocia a cada objeto una lista ordenada con:
• Todos los dominios que pueden tener acceso al objeto.
• La forma de dicho acceso (ej: lectura ®, grabación (w), ejecución (x)).
Una forma de implementar las ACL consiste en:
• Asignar tres bits (r, w, x) para cada archivo, para:
• El propietario, el grupo del propietario y los demás usuarios.
• Permitir que el propietario de cada objeto pueda modificar su ACL en cualquier momento:
• Permite prohibir accesos antes permitidos.
Posibilidades
La matriz de protección también puede dividirse por renglones:
• Se le asocia a cada proceso una lista de objetos a los cuales puede tener acceso.
• Se le indican las operaciones permitidas en cada uno.
• Esto define su dominio.
La lista de objetos se denomina lista de posibilidades y los elementos individuales se llaman posibilidades. Cada posibilidad tiene:
• Un campo tipo:
• Indica el tipo del objeto.
• Un campo derechos:
• Mapa de bits que indica las operaciones básicas permitidas en este tipo de objeto.
• Un campo objeto:
• Apuntador al propio objeto (por ej.: su número de nodo-i).
Las listas de posibilidades son a su vez objetos y se les puede apuntar desde otras listas de posibilidades; esto facilita la existencia de subdominios compartidos. Las listas de posibilidades o listas-c deben ser protegidas del manejo indebido por parte del usuario. Los principales métodos de protección son:
• Arquitectura marcada:
• Necesita un diseño de hardware en el que cada palabra de memoria tiene un bit adicional:
• Indica si la palabra contiene una posibilidad o no.
• Solo puede ser modificado por el S. O.
• Lista de posibilidades dentro del S. O.:
• Los procesos hacen referencia a las posibilidades mediante su número.
• Lista de posibilidades cifrada dentro del espacio del usuario:
• Cada posibilidad está cifrada con una clave secreta desconocida por el usuario.
• Muy adecuado para sistemas distribuidos.
Generalmente las posibilidades tienen derechos genéricos aplicables a todos los objetos, por ej.:
• Copiar posibilidad:
• Crear una nueva posibilidad para el mismo objeto.
• Copiar objeto:
• Crear un duplicado del objeto con una nueva posibilidad.
• Eliminar posibilidad:
• Eliminar un dato dentro de la lista-c sin afectar al objeto.
• Destruir objeto:
• Eliminar en forma permanente un objeto y una posibilidad.
Muchos sistemas con posibilidades se organizan como una colección de módulos con módulos administradores de tipos para cada tipo de objeto y entonces es esencial que el módulo administrador de tipos pueda hacer más cosas con la posibilidad que un proceso ordinario.
Se utiliza la técnica de amplificación de derechos:
• Los administradores de tipo obtienen una plantilla de derechos que les da más derechos sobre un objeto de los que permitía la propia lista de posibilidades.
Modelos de Protección
Las matrices de protección no son estáticas sino dinámicas. Se pueden identificar seis operaciones primitivas en la matriz de protección:
• Crear objeto.
• Eliminar objeto.
• Crear dominio.
• Eliminar dominio.
• Insertar derecho.
• Eliminar derecho.
Las primitivas se pueden combinar en comandos de protección, que pueden ser ejecutados por los programas del usuario para modificar la matriz de protección.
En cada momento, la matriz de protección determina lo que puede hacer un proceso en cualquier momento; no determina lo que no está autorizado a realizar. La matriz es impuesta por el sistema. La autorización tiene que ver con la política de administración.
Control de Acceso Por Clases de Usuarios
Una matriz de control de acceso puede llegar a ser tan grande que resulte impráctico mantenerla. Una técnica que requiere menos espacio es controlar el acceso a varias clases de usuarios. Un ejemplo de esquema de clasificación es el siguiente:
• Propietario:
• Suele ser el usuario que creó el archivo.
• Usuario especificado:
• El propietario especifica quién más puede usar el archivo.
• Grupo o proyecto:
• Los diferentes miembros de un grupo de trabajo sobre un proyecto, acceden a los diferentes archivos relacionados con el proyecto.
• Público:
• Un archivo público puede ser accedido por cualquier usuario de la computadora.
• Generalmente permite leer o ejecutar pero no escribir sobre el archivo.
Dominios de Protección
Muchos objetos del sistema necesitan protección, tales como la cpu, segmentos de memoria, unidades de disco, terminales, impresoras, procesos, archivos, bases de datos, etc.
Cada objeto se referencia por un nombre y tiene habilitadas un conjunto de operaciones sobre él. Un dominio es un conjunto de parejas (objeto, derechos):
• Cada pareja determina:
• Un objeto.
• Un subconjunto de las operaciones que se pueden llevar a cabo en él.
Un derecho es el permiso para realizar alguna de las operaciones. Es posible que un objeto se encuentre en varios dominios con “distintos” derechos en cada dominio.
Un proceso se ejecuta en alguno de los dominios de protección:
• Existe una colección de objetos a los que puede tener acceso.
• Cada objeto tiene cierto conjunto de derechos.
Los procesos pueden alternar entre los dominios durante la ejecución. Una llamada al S. O. provoca una alternancia de dominio. En algunos S. O. los dominios se llaman anillos.
Una forma en la que el S. O. lleva un registro de los objetos que pertenecen a cada dominio es mediante una matriz:
• Los renglones son los dominios.
• Las columnas son los objetos.
• Cada elemento de la matriz contiene los derechos correspondientes al objeto en ese dominio, por ej.: leer, escribir, ejecutar.
Listas Para Control de Acceso
Las “matrices de protección” son muy grandes y con muchos lugares vacíos:
• Desperdician espacio de almacenamiento.
• Existen métodos prácticos que almacenan solo los elementos no vacíos por filas o por columnas. La lista de control de acceso (ACL: access control list):
• Asocia a cada objeto una lista ordenada con:
• Todos los dominios que pueden tener acceso al objeto.
• La forma de dicho acceso (ej: lectura ®, grabación (w), ejecución (x)).
Una forma de implementar las ACL consiste en:
• Asignar tres bits (r, w, x) para cada archivo, para:
• El propietario, el grupo del propietario y los demás usuarios.
• Permitir que el propietario de cada objeto pueda modificar su ACL en cualquier momento:
• Permite prohibir accesos antes permitidos.
Posibilidades
La matriz de protección también puede dividirse por renglones:
• Se le asocia a cada proceso una lista de objetos a los cuales puede tener acceso.
• Se le indican las operaciones permitidas en cada uno.
• Esto define su dominio.
La lista de objetos se denomina lista de posibilidades y los elementos individuales se llaman posibilidades. Cada posibilidad tiene:
• Un campo tipo:
• Indica el tipo del objeto.
• Un campo derechos:
• Mapa de bits que indica las operaciones básicas permitidas en este tipo de objeto.
• Un campo objeto:
• Apuntador al propio objeto (por ej.: su número de nodo-i).
Las listas de posibilidades son a su vez objetos y se les puede apuntar desde otras listas de posibilidades; esto facilita la existencia de subdominios compartidos. Las listas de posibilidades o listas-c deben ser protegidas del manejo indebido por parte del usuario. Los principales métodos de protección son:
• Arquitectura marcada:
• Necesita un diseño de hardware en el que cada palabra de memoria tiene un bit adicional:
• Indica si la palabra contiene una posibilidad o no.
• Solo puede ser modificado por el S. O.
• Lista de posibilidades dentro del S. O.:
• Los procesos hacen referencia a las posibilidades mediante su número.
• Lista de posibilidades cifrada dentro del espacio del usuario:
• Cada posibilidad está cifrada con una clave secreta desconocida por el usuario.
• Muy adecuado para sistemas distribuidos.
Generalmente las posibilidades tienen derechos genéricos aplicables a todos los objetos, por ej.:
• Copiar posibilidad:
• Crear una nueva posibilidad para el mismo objeto.
• Copiar objeto:
• Crear un duplicado del objeto con una nueva posibilidad.
• Eliminar posibilidad:
• Eliminar un dato dentro de la lista-c sin afectar al objeto.
• Destruir objeto:
• Eliminar en forma permanente un objeto y una posibilidad.
Muchos sistemas con posibilidades se organizan como una colección de módulos con módulos administradores de tipos para cada tipo de objeto y entonces es esencial que el módulo administrador de tipos pueda hacer más cosas con la posibilidad que un proceso ordinario.
Se utiliza la técnica de amplificación de derechos:
• Los administradores de tipo obtienen una plantilla de derechos que les da más derechos sobre un objeto de los que permitía la propia lista de posibilidades.
Modelos de Protección
Las matrices de protección no son estáticas sino dinámicas. Se pueden identificar seis operaciones primitivas en la matriz de protección:
• Crear objeto.
• Eliminar objeto.
• Crear dominio.
• Eliminar dominio.
• Insertar derecho.
• Eliminar derecho.
Las primitivas se pueden combinar en comandos de protección, que pueden ser ejecutados por los programas del usuario para modificar la matriz de protección.
En cada momento, la matriz de protección determina lo que puede hacer un proceso en cualquier momento; no determina lo que no está autorizado a realizar. La matriz es impuesta por el sistema. La autorización tiene que ver con la política de administración.
Control de Acceso Por Clases de Usuarios
Una matriz de control de acceso puede llegar a ser tan grande que resulte impráctico mantenerla. Una técnica que requiere menos espacio es controlar el acceso a varias clases de usuarios. Un ejemplo de esquema de clasificación es el siguiente:
• Propietario:
• Suele ser el usuario que creó el archivo.
• Usuario especificado:
• El propietario especifica quién más puede usar el archivo.
• Grupo o proyecto:
• Los diferentes miembros de un grupo de trabajo sobre un proyecto, acceden a los diferentes archivos relacionados con el proyecto.
• Público:
• Un archivo público puede ser accedido por cualquier usuario de la computadora.
• Generalmente permite leer o ejecutar pero no escribir sobre el archivo.
Se consideran aspectos tales como
• La forma de almacenamiento de archivos y directorios.
• La administración del espacio en disco.
• La forma de hacerlo de manera eficiente y confiable.
Se deben tener presentes problemas tales como la “fragmentación” creciente del espacio en disco:
• Ocasiona problemas de performance al hacer que los archivos se desperdiguen a través de bloques muy dispersos.
• Una técnica para aliviar el problema de la “fragmentación” consiste en realizar periódicamente:
o “Condensación”: se pueden “reorganizar” los archivos expresamente o automáticamente según algún criterio predefinido.
o “Recolección de basura o residuos”: se puede hacer fuera de línea o en línea, con el sistema activo, según la implementación
• La forma de almacenamiento de archivos y directorios.
• La administración del espacio en disco.
• La forma de hacerlo de manera eficiente y confiable.
Se deben tener presentes problemas tales como la “fragmentación” creciente del espacio en disco:
• Ocasiona problemas de performance al hacer que los archivos se desperdiguen a través de bloques muy dispersos.
• Una técnica para aliviar el problema de la “fragmentación” consiste en realizar periódicamente:
o “Condensación”: se pueden “reorganizar” los archivos expresamente o automáticamente según algún criterio predefinido.
o “Recolección de basura o residuos”: se puede hacer fuera de línea o en línea, con el sistema activo, según la implementación
Es la Forma como se traslada la informacion, la recuperacion y el almacenamiento entre los datos de diferentes terminales
Los programas son un conjunto de instrucciones organizadas con un objetivo. Un proceso es conceptualmente un programa en ejecución. En los sistemas operativos multitarea, puede haber varios procesos ejecutándose concurrentemente. Cada proceso puede requerir el uso de recursos de hardware, como periféricos, o espacio de memoria principal, u otros recursos.
Dado que el hardware es compartido por múltiples procesos, el acceso a los recursos debe ser administrado para garantizar su correcto uso y evitar problemas de seguridad (si procesos malintencionados desean acceder a recursos asignados a otros procesos). Por estas razones,en los sistemas duales, el acceso al ambiente físico es manejado exclusivamente por el Sistema Operativo. La única forma de acceder al hardware es a través de las llamadas al sistema, que están perfectamente definidas. Esto no ocurre en los Sistemas Operativos no duales, como el MS-DOS, donde cualquier proceso podía acceder a todos los niveles del hardware.
Los procesadores actuales pueden ejecutar las instrucciones en diferentes estados. En los sistemas duales, normalmente son llamados modo supervisor y modo usuario. Los procesadores proveen diferentes niveles de privilegio de forma tal que los sistemas operativos pueden restringir las operaciones que ejecutan los programas tanto por razones de seguridad como de estabilidad. Estas operaciones incluyen el acceso a periféricos, habilitar o deshabilitar interrupciones, cambiar el estado del procesador, y acceder a la memoria, entre otras.
Las llamadas al sistema comúnmente usan una instrucción especial de la CPU que causa que el procesador transfiera el control a un código privilegiado, previamente especificado por el mismo código. Esto permite al código privilegiado especificar donde va a ser conectado así como el estado del procesador.
Cuando una llamada al sistema es invocada, la ejecución del programa que invoca es interrumpida y sus datos son guardados, normalmente en su PCB, para poder continuar ejecutándose luego. El procesador entonces comienza a ejecutar las instrucciones de código de alto nivel de privilegio, para realizar la tarea requerida. Cuando esta finaliza, se retorna al proceso original, y continúa su ejecución. El retorno al proceso demandante no obligatoriamente es inmediato, depende del tiempo de ejecución de la llamada al sistema y del algoritmo de planificación de CPU.
Los programas son un conjunto de instrucciones organizadas con un objetivo. Un proceso es conceptualmente un programa en ejecución. En los sistemas operativos multitarea, puede haber varios procesos ejecutándose concurrentemente. Cada proceso puede requerir el uso de recursos de hardware, como periféricos, o espacio de memoria principal, u otros recursos.
Dado que el hardware es compartido por múltiples procesos, el acceso a los recursos debe ser administrado para garantizar su correcto uso y evitar problemas de seguridad (si procesos malintencionados desean acceder a recursos asignados a otros procesos). Por estas razones,en los sistemas duales, el acceso al ambiente físico es manejado exclusivamente por el Sistema Operativo. La única forma de acceder al hardware es a través de las llamadas al sistema, que están perfectamente definidas. Esto no ocurre en los Sistemas Operativos no duales, como el MS-DOS, donde cualquier proceso podía acceder a todos los niveles del hardware.
Los procesadores actuales pueden ejecutar las instrucciones en diferentes estados. En los sistemas duales, normalmente son llamados modo supervisor y modo usuario. Los procesadores proveen diferentes niveles de privilegio de forma tal que los sistemas operativos pueden restringir las operaciones que ejecutan los programas tanto por razones de seguridad como de estabilidad. Estas operaciones incluyen el acceso a periféricos, habilitar o deshabilitar interrupciones, cambiar el estado del procesador, y acceder a la memoria, entre otras.
Las llamadas al sistema comúnmente usan una instrucción especial de la CPU que causa que el procesador transfiera el control a un código privilegiado, previamente especificado por el mismo código. Esto permite al código privilegiado especificar donde va a ser conectado así como el estado del procesador.
Cuando una llamada al sistema es invocada, la ejecución del programa que invoca es interrumpida y sus datos son guardados, normalmente en su PCB, para poder continuar ejecutándose luego. El procesador entonces comienza a ejecutar las instrucciones de código de alto nivel de privilegio, para realizar la tarea requerida. Cuando esta finaliza, se retorna al proceso original, y continúa su ejecución. El retorno al proceso demandante no obligatoriamente es inmediato, depende del tiempo de ejecución de la llamada al sistema y del algoritmo de planificación de CPU.
Interfaz de preguntas y respuestas
En los primeros días de las computadoras (antes de pantallas gráficas, el ratón, etc.) era la única forma realista de interfaz. El usuario podía comunicarse con el sistema especifico con ordenes de la forma indicada en la figura. Aunque es una forma concisa, es muy propensa a errores, muy estricta y difícil de aprender.
Interfaz de menú simple
Es una variante de la forma anterior, se presenta al usuario una lista de opciones y la selección se realiza por medio de un número, letra o un código en particular. Ofrece al usuario un contexto global y tiene menos porcentaje de errores que el anterior, pero su uso puede llegar a ser tedioso. Este es el caso de las opciones del ejemplo de la figura, que incluyen subopciones (que a su vez puede incluir otras opciones) dentro de las opciones principales.
interfaz orientada a ventanas
A medida que el hardware se ha hecho mas eficiente y los ingenieros de software han aprendido mas sobre los factores humanos, las técnicas de interfaz evolucionaron, llegando a lo que se conoce como interfaces de la tercera generación. Ofrece al usuario las siguiente ventajas:
Se puede visualizar diferentes tipos de información simultáneamente El esquema de menús desplegables permite realizar muchas tareas interactivas diferentes. Se realizan tareas de control y de dialogo en forma sencilla. La utilización de menús desplegables, botones y técnicas de presentación reducen el manejo del teclado.
En los primeros días de las computadoras (antes de pantallas gráficas, el ratón, etc.) era la única forma realista de interfaz. El usuario podía comunicarse con el sistema especifico con ordenes de la forma indicada en la figura. Aunque es una forma concisa, es muy propensa a errores, muy estricta y difícil de aprender.
Interfaz de menú simple
Es una variante de la forma anterior, se presenta al usuario una lista de opciones y la selección se realiza por medio de un número, letra o un código en particular. Ofrece al usuario un contexto global y tiene menos porcentaje de errores que el anterior, pero su uso puede llegar a ser tedioso. Este es el caso de las opciones del ejemplo de la figura, que incluyen subopciones (que a su vez puede incluir otras opciones) dentro de las opciones principales.
interfaz orientada a ventanas
A medida que el hardware se ha hecho mas eficiente y los ingenieros de software han aprendido mas sobre los factores humanos, las técnicas de interfaz evolucionaron, llegando a lo que se conoce como interfaces de la tercera generación. Ofrece al usuario las siguiente ventajas:
Se puede visualizar diferentes tipos de información simultáneamente El esquema de menús desplegables permite realizar muchas tareas interactivas diferentes. Se realizan tareas de control y de dialogo en forma sencilla. La utilización de menús desplegables, botones y técnicas de presentación reducen el manejo del teclado.
Un lenguaje de programación es un idioma artificial diseñado para expresar computaciones que pueden ser llevadas a cabo por máquinas como las computadoras. Pueden usarse para crear programas que controlen el comportamiento físico y lógico de una máquina, para expresar algoritmos con precisión, o como modo de comunicación humana. Está formado de un conjunto de símbolos y reglas sintácticas y semánticas que definen su estructura y el significado de sus elementos y expresiones.
Existe un error común que trata por sinónimos los términos 'lenguaje de programación' y 'lenguaje informático'. Los lenguajes informáticos engloban a los lenguajes de programación y a otros más, como por ejemplo el HTML. (lenguaje para el marcado de páginas web que no es propiamente un lenguaje de programación sino un conjunto de instrucciones que permiten diseñar el contenido y el texto de los documentos)
Permite especificar de manera precisa sobre qué datos debe operar una computadora, cómo deben ser almacenados o transmitidos y qué acciones debe tomar bajo una variada gama de circunstancias. Todo esto, a través de un lenguaje que intenta estar relativamente próximo al lenguaje humano o natural, tal como sucede con el lenguaje Léxico. Una característica relevante de los lenguajes de programación es precisamente que más de un programador puedan tener un conjunto común de instrucciones que puedan ser comprendidas entre ellos para realizar la construcción del programa de forma colaborativa.
Los procesadores usados en las computadoras entienden únicamente instrucciones en lenguaje de máquina. Todo programa escrito en otro lenguaje puede ser ejecutado
Existe un error común que trata por sinónimos los términos 'lenguaje de programación' y 'lenguaje informático'. Los lenguajes informáticos engloban a los lenguajes de programación y a otros más, como por ejemplo el HTML. (lenguaje para el marcado de páginas web que no es propiamente un lenguaje de programación sino un conjunto de instrucciones que permiten diseñar el contenido y el texto de los documentos)
Permite especificar de manera precisa sobre qué datos debe operar una computadora, cómo deben ser almacenados o transmitidos y qué acciones debe tomar bajo una variada gama de circunstancias. Todo esto, a través de un lenguaje que intenta estar relativamente próximo al lenguaje humano o natural, tal como sucede con el lenguaje Léxico. Una característica relevante de los lenguajes de programación es precisamente que más de un programador puedan tener un conjunto común de instrucciones que puedan ser comprendidas entre ellos para realizar la construcción del programa de forma colaborativa.
Los procesadores usados en las computadoras entienden únicamente instrucciones en lenguaje de máquina. Todo programa escrito en otro lenguaje puede ser ejecutado
