SlideShare ist ein Scribd-Unternehmen logo
1 von 24
UNIVERSIDAD NACIONAL AUTONOMA DE
            HONDURAS

       Facultad de Ciencias Económicas
  Departamento de Informática Administrativa

       Asignatura: Sistemas Operativos I

       Catedrático: Lic. Carmen González

                 Sección: 1101

         Alumno: Roy Portillo Álvarez

             Cuenta: 20091002855

    Tegucigalpa M.D.C. 20 de Mayo de 2012
POSIX
Portable Operating System Interface X
POSIX
POSIX es el acrónimo de Portable Operating System Interface;
la X viene de UNIX como seña de identidad de la API.

El término fue sugerido por Richard Stallman en respuesta a la
demanda de la IEEE , que buscaba un nombre fácil de recordar.
Una traducción aproximada del acrónimo podría ser "Interfaz de
sistema operativo portable" o "Interfaz portable de sistema
operativo".
¿Que es POSIX?
O   POSIX es el estándar de interfaz de sistemas operativos
    portables de IEEE basado en el sistema operativo UNIX.
    Aunque UNIX era prácticamente un estándar industrial, había
    bastantes diferencias entre las distintas implementaciones de
    UNIX, lo que provocaba que las aplicaciones no se pudieran
    transportar fácilmente entre distintas plataformas UNIX.

O   El POSIX Se trata de un estándar que intenta asegurar la
    portabilidad entre diferentes sistemas operativos. Dentro del
    estándar se especifica el comportamiento de las expresiones
    regulares y de las herramientas más comunes que las usan.
O   Estos son una familia de estándares de llamadas al sistema
    operativo definido por el IEEE y especificado formalmente en el
    IEEE 1003. Persiguen generalizar las interfaces de los
    sistemas operativos para que una misma aplicación pueda
    ejecutarse en distintas plataformas. Estos estándares surgieron
    de un proyecto de normalización de las API y describen un
    conjunto de interfaces de aplicación adaptables a una gran
    variedad de implementaciones de sistemas operativos.
El POSIX es un grupo de estándares en evolución. Cada uno
de los estándares que lo componen cubre diferentes aspectos
de los sistemas operativos. Algunos de ellos ya han sido
aprobados, mientras que otros están aún en fase de desarrollo.
Los estándares POSIX se pueden agrupar en tres categorías
diferentes:
1)Estándares de Base Definen interfaces del sistema relacionadas con
diferentes aspectos del sistema operativo. El estándar especifica la sintaxis
y la semántica de estos servicios del sistema operativo, de modo que los
programas de aplicación puedan invocarlos directamente. El estándar no
especifica cómo se implementan estos servicios; de este modo, los
implementadores de sistemas pueden elegir la implementación que crean
más conveniente—y así competir entre ellos—, siempre que cumplan la
especificación de la interface. Todos los estándares base desarrollados
hasta el momento lo han sido para lenguaje C. En el momento de escribir
este artículo está abierto el debate sobre si los estándares base deben
desarrollarse de forma independiente del lenguaje, y luego especificar
interfaces concretas para los diferentes lenguajes de programación.
2) Interfaces en diferentes lenguajes de programación: Son estándares
secundarios que traducen a un lenguaje de programación concreto los
estándares base. Los lenguajes utilizados hasta el momento son Ada,
Fortran 77, y Fortran 90, además del lenguaje C, en el que se han
especificado hasta el momento los estándares base.
3) Entorno de Sistemas Abiertos Estos estándares incluyen una guía al
entorno POSIX y los perfiles de entornos de aplicación. Un perfil de
aplicación es una lista de los estándares POSIX, con especificación de las
opciones y parámetros necesarios, que se requieren para un cierto entorno
de aplicación. El objetivo principal de los perfiles de aplicación es conseguir
un conjunto pequeño de clases de implementaciones de sistemas
operativos bien definidas y que sean apropiadas para entornos particulares
de aplicaciones. La Tabla IV muestra la lista de estándares que están
siendo desarrollados en este grupo.
¿Donde se Utiliza ?

O En hilos, se les asignan porciones de tiempo por el
    núcleo.
O   Definen interfaces de sistemas operativos;
O   Permiten el desarrollo de Software portable y
    reutilizable;
O   Interfaz básica;
O   Extensiones de tiempo real;
O   Procesos ligeros;
O   Seguridad;
O   Servicios de red;
O   Tolerancia de fallos;
O   Comunicaciones de tiempo real.
Uso del POSIX
O Especifica las interfaces de usuario y software al sistema
  operativo en 15 documentos diferentes. La línea de comandos
  estándar y las interfaces de scripting se basaron en Korn Shell.
  Otros programas a nivel de usuario (user-level), servicios y
  utilidades incluyen AWK, echo, ed y cientos de otras. Los
  servicios a nivel de programa requeridos incluyen definición de
  estándares básicos de I/O, (file, terminal, y servicios de red).
O También especifican una API para las bibliotecas de threading,
  que es muy utilizada en una gran variedad de sistemas
  operativos. Una serie de pruebas acompañan al estándar
  POSIX. Son llamadas “PCTS” en alusión al acrónimo “Posix
  Conformance Test Suite”. Desde que la IEEE empezó a cobrar
  altos precios por la documentación de POSIX y se ha negado a
  publicar los estándares, ha aumentado el uso del modelo
  Single Unix Specification. Este modelo es abierto, acepta
  entradas de todo el mundo y está libremente disponible en
  Internet. Fue creado por The Open Group.
O   Sincronización de procesos. Define funciones para permitir la
    sincronización de procesos a través de semáforos contadores.
O Memoria compartida. Tienen espacios de direccionamiento que son
  independientes entre sí. Sin embargo, muchas aplicaciones de tiempo
  real (y también muchas que no son de tiempo real) necesitan
  compartir grandes cantidades de datos de una manera eficiente.
O Señales de tiempo real. Permite notificar eventos que ocurren en el
  sistema, pero no es completamente satisfactorio para aplicaciones de
  tiempo real. Las señales no se almacenan en colas y, por tanto,
  algunos eventos se pueden perder. Las señales no están priorizadas,
  y esto implica tiempos de respuesta más largos para eventos
  urgentes.
O Comunicación de procesos. Se especifica un mecanismo sencillo de
  colas de mensajes para la comunicación entre procesos. Las colas de
  mensajes están identificadas por un nombre perteneciente a un
  espacio de nombres dependiente de la implementación.
O   Entrada/Salida Asíncrona. Define funciones que permiten solapar
    el procesado de aplicaciones con las operaciones de
    entrada/salida iniciadas por la aplicación. Una operación de
    entrada/salida asíncrona es similar a las operaciones de
    entrada/salida normales, con la excepción de que una vez que
    la operación asíncrona ha sido iniciada por un proceso, este
    proceso no se suspende y puede continuar ejecutando
    instrucciones, en paralelo con la operación de entrada/salida.

O   Extensión de threads. Define interfaces para soportar
    múltiples actividades concurrentes, denominadas threads,
    dentro de cada proceso POSIX. Los threads definidos en el
    POSIX tienen un estado asociado más pequeño que el de un
    proceso. Todos los threads que pertenecen al mismo proceso
    comparten el mismo espacio de direccionamiento. Pueden ser
    implementados con tiempos de cambio de contexto y de
    creación y destrucción más bajos que los de los procesos. El
    POSIX.4a ha sido específicamente desarrollado para abordar
    las necesidades de los sistemas multiprocesadores de
    memoria compartida.
Características del POSIX
O   Algunos tipos de datos utilizados por las funciones no se
    definen como parte de estándar, pero se definen como parte de
    la implementación. Estos tipos se encuentran definidos en el
    archivo de cabecera <sys/types.h>. Estos acaba con el sufijo
    _t. Por ejemplo, uid_t es el tipo que se emplea para almacenar
    un identificador de usuario.
O   Los nombres de las funciones en POSIX son en general cortos
    y con todas sus letras en minúsculas. Ejemplo de funciones en
    POSIX son:
     1. Fork, para crear un nuevo proceso.
     2. Read, para leer datos de un archivo.
     3. Close, para cerrar un archivo.
O   Las funciones, normalmente devuelven cero si se ejecutaron
    con éxito 0-1 en caso de error.

O   Cuando una función devuelve -1, se almacena en una variable
    global, denominada errno, el código de error. Este código de
    error es un valor entero. La variable errno se encuentra
    definida en el archivo de cabecera <errno.h>.

O   La mayoría de los recursos gestionados por el sistema
    operativo se referencian mediante descriptores. Un descriptor
    es un numero entero mayor o igual que cero.
Funciones del POSIX
Instalación
Las funciones POSIX son habilitadas por defecto. Puede
deshabilitar las funciones tipo POSIX con --disable-posix.
Constantes predefinidas
Estas constantes están definidas por esta extensión y estarán
disponibles solamente cuando la extensión ha sido o bien
compilada dentro de PHP o grabada dinámicamente en tiempo de
ejecución.
POSIX_F_OK (integer)Verificar si el archivo existe.
POSIX_R_OK (integer)Verificar si el archivo existe y tiene permisos de lectura.
POSIX_W_OK (integer)Verificar si el archivo existe y tiene permisos de escritura.
POSIX_X_OK (integer)Verificar si el archivo existe y tiene permisos de ejecución.
POSIX_S_IFBLK (integer)Archivo especial de bloque.
POSIX_S_IFCHR (integer) Archivo especial de carácter.
POSIX_S_IFIFO (integer)Archivo especial FIFO (pipe con nombre).
POSIX_S_IFREG (integer)Archivo normal.
POSIX_S_IFSOCK (integer)Socket.
 posix_access — Determinar la accesibilidad de un archivo,
    verifica el permiso del usuario sobre un archivo.
   posix_ctermid — Recoge el nombre de ruta de la terminal de
    control. Necesita ser escrito.
   posix_get_last_error — Recuperar el número de error
    establecido por la última función posix que ha fallado.
    Recupera el número de error establecido por la última función
    posix que falló. El mensaje de error del sistema asociado con el
    valor errno puede ser consultado con posix_strerror().
   posix_getcwd — Nombre de ruta del directorio actual.
    Necesita ser escrito cuanto antes.
   posix_getegid — Devuelve el ID de grupo efectivo del proceso
    actual. Devuelve el valor numérico ID de grupo efectivo del
    proceso actual.
 posix_geteuid — Devuelve el ID de usuario efectivo del proceso
    actual. Devuelve el valor numérico ID de usuario efectivo del
    proceso actual.
   posix_getgid — Devuelve el ID de grupo real del proceso
    actual. Devuelve el valor numérico ID de grupo real del proceso
    actual.
   posix_getgrgid — Devuelve información sobre un grupo a
    través del id de grupo. Necesita ser escrito.
   posix_getgrnam — Devuelve información sobre un grupo a
    través del nombre. Necesita ser escrito.
   posix_getgroups — Devuelve el conjunto de grupos del
    proceso actual. Devuelve un vector de enteros que contiene los
    ids numéricos de grupo de el conjunto de grupos del proceso
    actual.
   posix_getlogin — Devuelve el nombre de usuario. Devuelve el
    nombre de usuario (login) que es dueño del proceso actual.
   posix_getpgid — Recoge el id del grupo de procesos para el
    control de trabajo. Devuelve el identificador de grupo de
    procesos                del              proceso            pid.
 posix_getpgrp — Devuelve el identificador de grupo del proceso actual.
    Devuelve el identificador de grupo de proceso del proceso actual.
   posix_getpid — Devuelve el identificador del proceso actual. Devuelve el
    identificador de proceso del proceso actual.
   posix_getppid — Devuelve el identificador del proceso padre. Devuelve
    el identificador de proceso del proceso padre del proceso actual.
   posix_getpwnam — Devuelve información sobre un usuario a través del
    nombre de usuario. Devuelve un vector asociativo conteniendo
    información sobre un usuario referenciado por un nombre alfanumérico,
    pasado a la función en el parámetro username .
   posix_getpwuid — Devuelve información sobre un usuario a través de su
    id. Devuelve un vector asociativo que contiene información sobre un
    usuario referenciado con un ID de usuario, pasado por el parámetro uid.
   posix_getrlimit — Devuelve información sobre los limites de recursos del
    sistema. Necesita ser escrita tan pronto como sea posible.
   posix_getsid — Consigue el sid actual del proceso. Devuelve el sid del
    proceso pid . Si pid es 0, se devolverá el sid del proceso actual. Esta no
    es una función POSIX, pero es normal en sistemas System V. Si su
    sistema no soporta esta función a nivel de sistema, esta función PHP
    devolverá siempre FALSE.
 posix_getuid — Devuelve el ID de usuario real del proceso actual.
    Devuelve el valor numérico ID de usuario real del proceso actual.
   posix_isatty — Determinar si un descriptor de archivo es una
    terminal interactiva. Determina si el descriptor de archivo da hace
    referencia a un dispositivo tipo terminal válido.
   posix_kill — Manda una señal a un proceso. Manda la señal sig al
    proceso con el identificador de proceso pid . Devuelve FALSE, si
    no puede enviar la señal. Si sí la envía devuelve TRUE .
   posix_mkfifo — Crear un archivo especial fifo (un pipe con
    nombre). posix_mkfifo() crea un archivo FIFO especial que existe
    en el sistema de archivos y actúa como un punto de comunicación
    bi-direccional para los procesos.
   posix_mknod — Crear un archivo especial u ordinario. Crea un
    archivo especial u ordinario.
   posix_setegid — Establecer el GID efectivo del proceso actual.
    Establece el ID de grupo efectivo del proceso actual. Esta es una
    función privilegiada y se necesitan los permisos apropiados
    (usualmente root) en el sistema para contar con la capacidad de
    ejecutar esta función.
 posix_seteuid — Establecer el UID efectivo del proceso actual.
    Establece el ID de usuario real del proceso actual. Esta es una
    función privilegiada y se necesitan los permisos apropiados
    (usualmente root) en el sistema para tener la capacidad de ejecutar
    esta función.
   posix_setgid — Asigna el GID efectivo del proceso actual. Asigna el
    ID de grupo real del proceso actual. Esta es una función privilegiada
    y necesitas los privilegios apropiados (normalmente root) en tu
    sistema para realizar esta función. El orden apropiado de llamada
    es posix_setgid() primero, posix_setuid() después.Devuelve TRUE
    si tiene éxito, FALSE en caso contrario.
   posix_setpgid — Asigna el id de grupo de procesos para el control
    de trabajos. Inserta el proceso pid en el grupo de procesos pgid.
   posix_setsid — Convierte el proceso actual en líder de sesión.
    Convierte el proceso actual en líder de sesión.
   posix_setuid — Asigna el UID efectivo del proceso actual. Asigna el
    ID de usuario real al proceso actual. Esta es una función privilegiada
    y necesitas los privilegios apropiados (normalmente root) en tu
    sistema para realizar esta función.
 posix_strerror — Recuperar el mensaje de error del sistema
     asociado con el errno dado. Devuelve el mensaje de error del sistema
     POSIX asociado con el errno. Es posible obtener el
     parámetro errno llamando la función posix_get_last_error().
    posix_times — Recoge el tiempo de los procesos. Devuelve un hash
     de cadenas con información sobre el uso de CPU del proceso actual.
     Los índices del hash son
a)    ticks - el numero de ticks de reloj que han pasado desde el reinicio.
b)    utime - tiempo de usuario usado por el proceso actual.
c)    stime - tiempo de sistema usado por el proceso actual.
d)    cutime - tiempo de usuario usado por el proceso actual e hijos.
e)    cstime - tiempo de sistema usado por el proceso actual e hijos.
    posix_ttyname — Determina el nombre del dispositivo terminal.
     Necesita ser escrito.
    posix_uname — Consigue el nombre del sistema.
Compatibilidad
Los siguientes Sistemas Operativos son 100% compatibles con uno o varios
estándares POSIX.
1.      A/UX
2.      AIX
3.      BSD/OS
4.      DSPnano
5.      HP-UX
6.      INTEGRITY
7.      IRIX
8.      LynxOS
9.      Mac OS X v10.5 en Procesadores Intel.
10.     MINIX
11.     MPE/iX
12.     QNX (IEEE Std. 1003.13-2003 PSE52;
13.     RTEMS (POSIX 1003.1-2003 Profile 52)
14.     Solaris
15.     Unison RTOS
16.     UnixWare
17.     velOSity
18.     VxWorks (IEEE Std. 1003.13-2003 PSE52;
POSIX para Windows
 Cygwin ofrece un desarrollo en gran parte compatible con
   POSIX y un entorno de ejecución para Microsoft Windows.
 Microsoft POSIX subsystem, un subsistema opcional Windows
 Windows Services for UNIX de Microsoft permite una plena
   compatibilidad POSIX para ciertos productos de Microsoft
   Windows.
Los sistemas operativos basados en Windows NT hasta Windows
2000 tenían una interfaz POSIX incorporada en el sistema
operativo y los Servicios UNIX para Windows brindaban un
entorno del tipo UNIX. Para Windows XP, los Servicios UNIX para
Windows deben de instalarse para que exista compatibilidad
POSIX. El subsistema UNIX está incorporado a las ediciones
Enterprise y Ultimate de Windows Vista y 7, y no pueden ser
agregados en forma separada a las otras ediciones..
 UWIN de AT&T Research implementa una capa POSIX sobre
   la interfaz de programa de aplicaciones (API) de Win32.
 MKS Toolkit.

Weitere ähnliche Inhalte

Was ist angesagt?

Sistemas De Archivos Distrivuidos
Sistemas De Archivos DistrivuidosSistemas De Archivos Distrivuidos
Sistemas De Archivos DistrivuidosByron Ochoa
 
5.- PPT 2022 05 U01 T01 Desarrollo de Servicios Web I (1915).pptx
5.- PPT 2022 05 U01 T01 Desarrollo de Servicios Web I (1915).pptx5.- PPT 2022 05 U01 T01 Desarrollo de Servicios Web I (1915).pptx
5.- PPT 2022 05 U01 T01 Desarrollo de Servicios Web I (1915).pptxSibilinoAndante
 
Modelos de los sistemas distribuidos
Modelos de los sistemas distribuidosModelos de los sistemas distribuidos
Modelos de los sistemas distribuidosMargarita Labastida
 
SO Unidad 2: Mecanismos de comunicación y sincronización de procesos
SO Unidad 2: Mecanismos de comunicación y sincronización de procesosSO Unidad 2: Mecanismos de comunicación y sincronización de procesos
SO Unidad 2: Mecanismos de comunicación y sincronización de procesosFranklin Parrales Bravo
 
Unidad 3 administracion de memoria(recoplilacion de todas las exposiciones)
Unidad 3 administracion de memoria(recoplilacion de todas las exposiciones)Unidad 3 administracion de memoria(recoplilacion de todas las exposiciones)
Unidad 3 administracion de memoria(recoplilacion de todas las exposiciones)Juan Lopez
 
Actividad 2 Analizador léxico, sintáctico y semántico
Actividad 2 Analizador léxico, sintáctico y semántico Actividad 2 Analizador léxico, sintáctico y semántico
Actividad 2 Analizador léxico, sintáctico y semántico maryr_
 
Interfaz del Sistema de Archivos
Interfaz del Sistema de ArchivosInterfaz del Sistema de Archivos
Interfaz del Sistema de ArchivosAcristyM
 
Analisis y determinacion de requerimientos
Analisis y determinacion de requerimientosAnalisis y determinacion de requerimientos
Analisis y determinacion de requerimientosYesith Valencia
 
Canales DMA
Canales DMACanales DMA
Canales DMAfalpema
 
Mapa conceptual sobre
Mapa conceptual sobre Mapa conceptual sobre
Mapa conceptual sobre Juan Anaya
 
Funciones de administracion de memoria
Funciones de administracion de memoriaFunciones de administracion de memoria
Funciones de administracion de memoriaMiguel Magaña
 
Arranque y parada de la base de datos. Ficheros de traza
Arranque y parada de la base de datos. Ficheros de trazaArranque y parada de la base de datos. Ficheros de traza
Arranque y parada de la base de datos. Ficheros de trazacestiogalo
 
Topicos Avanzados de Programacion - Unidad 3 componentes y librerias
Topicos Avanzados de Programacion - Unidad 3 componentes y libreriasTopicos Avanzados de Programacion - Unidad 3 componentes y librerias
Topicos Avanzados de Programacion - Unidad 3 componentes y libreriasJosé Antonio Sandoval Acosta
 

Was ist angesagt? (20)

Sistemas De Archivos Distrivuidos
Sistemas De Archivos DistrivuidosSistemas De Archivos Distrivuidos
Sistemas De Archivos Distrivuidos
 
5.- PPT 2022 05 U01 T01 Desarrollo de Servicios Web I (1915).pptx
5.- PPT 2022 05 U01 T01 Desarrollo de Servicios Web I (1915).pptx5.- PPT 2022 05 U01 T01 Desarrollo de Servicios Web I (1915).pptx
5.- PPT 2022 05 U01 T01 Desarrollo de Servicios Web I (1915).pptx
 
UNIDAD 1 INTRODUCCIÓN AL LENGUAJE ENSAMBLADOR
UNIDAD 1 INTRODUCCIÓN AL LENGUAJE ENSAMBLADORUNIDAD 1 INTRODUCCIÓN AL LENGUAJE ENSAMBLADOR
UNIDAD 1 INTRODUCCIÓN AL LENGUAJE ENSAMBLADOR
 
Modelos de los sistemas distribuidos
Modelos de los sistemas distribuidosModelos de los sistemas distribuidos
Modelos de los sistemas distribuidos
 
SO Unidad 2: Mecanismos de comunicación y sincronización de procesos
SO Unidad 2: Mecanismos de comunicación y sincronización de procesosSO Unidad 2: Mecanismos de comunicación y sincronización de procesos
SO Unidad 2: Mecanismos de comunicación y sincronización de procesos
 
Unidad 3 administracion de memoria(recoplilacion de todas las exposiciones)
Unidad 3 administracion de memoria(recoplilacion de todas las exposiciones)Unidad 3 administracion de memoria(recoplilacion de todas las exposiciones)
Unidad 3 administracion de memoria(recoplilacion de todas las exposiciones)
 
Actividad 2 Analizador léxico, sintáctico y semántico
Actividad 2 Analizador léxico, sintáctico y semántico Actividad 2 Analizador léxico, sintáctico y semántico
Actividad 2 Analizador léxico, sintáctico y semántico
 
Ado net
Ado netAdo net
Ado net
 
Bloqueos _
Bloqueos _Bloqueos _
Bloqueos _
 
Interfaz del Sistema de Archivos
Interfaz del Sistema de ArchivosInterfaz del Sistema de Archivos
Interfaz del Sistema de Archivos
 
Diapositivas de sgbd
Diapositivas de sgbdDiapositivas de sgbd
Diapositivas de sgbd
 
Gestión de archivos
Gestión de archivosGestión de archivos
Gestión de archivos
 
Hilo de ejecución
Hilo de ejecuciónHilo de ejecución
Hilo de ejecución
 
Analisis y determinacion de requerimientos
Analisis y determinacion de requerimientosAnalisis y determinacion de requerimientos
Analisis y determinacion de requerimientos
 
Canales DMA
Canales DMACanales DMA
Canales DMA
 
Mapa conceptual sobre
Mapa conceptual sobre Mapa conceptual sobre
Mapa conceptual sobre
 
4 unidad polimorfismo
4 unidad polimorfismo4 unidad polimorfismo
4 unidad polimorfismo
 
Funciones de administracion de memoria
Funciones de administracion de memoriaFunciones de administracion de memoria
Funciones de administracion de memoria
 
Arranque y parada de la base de datos. Ficheros de traza
Arranque y parada de la base de datos. Ficheros de trazaArranque y parada de la base de datos. Ficheros de traza
Arranque y parada de la base de datos. Ficheros de traza
 
Topicos Avanzados de Programacion - Unidad 3 componentes y librerias
Topicos Avanzados de Programacion - Unidad 3 componentes y libreriasTopicos Avanzados de Programacion - Unidad 3 componentes y librerias
Topicos Avanzados de Programacion - Unidad 3 componentes y librerias
 

Andere mochten auch

Sistemas operativos informatica basica
Sistemas operativos  informatica basicaSistemas operativos  informatica basica
Sistemas operativos informatica basicaEVARGAS025
 
Sistemas operativos 2
Sistemas operativos 2Sistemas operativos 2
Sistemas operativos 2Chulinneitor
 
sistema operativo linux
sistema operativo linuxsistema operativo linux
sistema operativo linuxmantojuan
 
Ieee 802 brenda baide
Ieee 802 brenda baideIeee 802 brenda baide
Ieee 802 brenda baidesirenita2
 
Entendiendo el sistema de almacenamiento de datos y SQL Server
Entendiendo el sistema de almacenamiento de datos y SQL ServerEntendiendo el sistema de almacenamiento de datos y SQL Server
Entendiendo el sistema de almacenamiento de datos y SQL ServerJoseph Lopez
 
Tsp (Team Software Process )
Tsp (Team Software Process )Tsp (Team Software Process )
Tsp (Team Software Process )silviachmn
 
Interrupciones y llamadas del sistema
Interrupciones y llamadas del sistemaInterrupciones y llamadas del sistema
Interrupciones y llamadas del sistemajomapuga
 
Team Software Process (TSP)
Team Software Process (TSP)Team Software Process (TSP)
Team Software Process (TSP)Juan Garcia
 
Ieee julissa martinez alberto
Ieee julissa martinez albertoIeee julissa martinez alberto
Ieee julissa martinez albertojuli_28
 
Diagrama de-estado-de-procesos
Diagrama de-estado-de-procesosDiagrama de-estado-de-procesos
Diagrama de-estado-de-procesosGiant_serch
 
Sistema operativo unix
Sistema operativo unixSistema operativo unix
Sistema operativo unixJosé Chancoh
 
Transmisión asíncrona y síncrona
Transmisión asíncrona y síncronaTransmisión asíncrona y síncrona
Transmisión asíncrona y síncronagracekam
 
Ventajas y desventajas de itil
Ventajas y desventajas de itilVentajas y desventajas de itil
Ventajas y desventajas de itilNena Patraca
 
2.4 ventajas y desventajas cobit
2.4 ventajas y desventajas cobit2.4 ventajas y desventajas cobit
2.4 ventajas y desventajas cobitNena Patraca
 

Andere mochten auch (20)

Procesos e hilos_parte_3
Procesos e hilos_parte_3Procesos e hilos_parte_3
Procesos e hilos_parte_3
 
PMBOK
PMBOKPMBOK
PMBOK
 
Sistemas operativos informatica basica
Sistemas operativos  informatica basicaSistemas operativos  informatica basica
Sistemas operativos informatica basica
 
Ieee y osi
Ieee y osiIeee y osi
Ieee y osi
 
Sistemas operativos 2
Sistemas operativos 2Sistemas operativos 2
Sistemas operativos 2
 
sistema operativo linux
sistema operativo linuxsistema operativo linux
sistema operativo linux
 
Ieee 802 brenda baide
Ieee 802 brenda baideIeee 802 brenda baide
Ieee 802 brenda baide
 
Entendiendo el sistema de almacenamiento de datos y SQL Server
Entendiendo el sistema de almacenamiento de datos y SQL ServerEntendiendo el sistema de almacenamiento de datos y SQL Server
Entendiendo el sistema de almacenamiento de datos y SQL Server
 
Procesos
ProcesosProcesos
Procesos
 
Tsp (Team Software Process )
Tsp (Team Software Process )Tsp (Team Software Process )
Tsp (Team Software Process )
 
Interrupciones y llamadas del sistema
Interrupciones y llamadas del sistemaInterrupciones y llamadas del sistema
Interrupciones y llamadas del sistema
 
Team Software Process (TSP)
Team Software Process (TSP)Team Software Process (TSP)
Team Software Process (TSP)
 
Ieee julissa martinez alberto
Ieee julissa martinez albertoIeee julissa martinez alberto
Ieee julissa martinez alberto
 
Diagrama de-estado-de-procesos
Diagrama de-estado-de-procesosDiagrama de-estado-de-procesos
Diagrama de-estado-de-procesos
 
Sistema operativo unix
Sistema operativo unixSistema operativo unix
Sistema operativo unix
 
Transmisión asíncrona y síncrona
Transmisión asíncrona y síncronaTransmisión asíncrona y síncrona
Transmisión asíncrona y síncrona
 
Ventajas y desventajas de itil
Ventajas y desventajas de itilVentajas y desventajas de itil
Ventajas y desventajas de itil
 
2.4 ventajas y desventajas cobit
2.4 ventajas y desventajas cobit2.4 ventajas y desventajas cobit
2.4 ventajas y desventajas cobit
 
Iso 25000
Iso 25000Iso 25000
Iso 25000
 
Proceso de Software Personal
Proceso de Software PersonalProceso de Software Personal
Proceso de Software Personal
 

Ähnlich wie POSIX-UNA

Introducción a la programación visual
Introducción a la programación visualIntroducción a la programación visual
Introducción a la programación visualmiguelangelvillelli
 
Trabajo de informática
Trabajo de informáticaTrabajo de informática
Trabajo de informáticaedcamoy
 
Sistema Operativo Linux
Sistema Operativo LinuxSistema Operativo Linux
Sistema Operativo LinuxDiana
 
Lengiajes de programacion valeria loaiza zuleta
Lengiajes de programacion valeria loaiza zuletaLengiajes de programacion valeria loaiza zuleta
Lengiajes de programacion valeria loaiza zuletaOnce Redes
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativosfree2803
 
Kernel de Windows PDF
Kernel de Windows PDFKernel de Windows PDF
Kernel de Windows PDFLikedLol
 
Instalación y configuración de servidor ftp
Instalación  y configuración de servidor ftpInstalación  y configuración de servidor ftp
Instalación y configuración de servidor ftpjfracs
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativosJuliethPaez
 
Términos de Programación Distribuida 8
Términos de Programación Distribuida 8Términos de Programación Distribuida 8
Términos de Programación Distribuida 8RJ Manayay Chavez
 
Framework .NET 3.5 04 El common language runtime
Framework .NET 3.5 04 El common language runtimeFramework .NET 3.5 04 El common language runtime
Framework .NET 3.5 04 El common language runtimeAntonio Palomares Sender
 

Ähnlich wie POSIX-UNA (20)

Posix
PosixPosix
Posix
 
Victor hugo software
Victor hugo  softwareVictor hugo  software
Victor hugo software
 
Victor hugo software
Victor hugo  softwareVictor hugo  software
Victor hugo software
 
Victor hugo software
Victor hugo  softwareVictor hugo  software
Victor hugo software
 
Introducción a la programación visual
Introducción a la programación visualIntroducción a la programación visual
Introducción a la programación visual
 
Trabajo de informática
Trabajo de informáticaTrabajo de informática
Trabajo de informática
 
Sistema operativo
Sistema operativoSistema operativo
Sistema operativo
 
Sistema Operativo Linux
Sistema Operativo LinuxSistema Operativo Linux
Sistema Operativo Linux
 
Lengiajes de programacion valeria loaiza zuleta
Lengiajes de programacion valeria loaiza zuletaLengiajes de programacion valeria loaiza zuleta
Lengiajes de programacion valeria loaiza zuleta
 
michael ascanio
michael ascaniomichael ascanio
michael ascanio
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativos
 
Kernel de Windows PDF
Kernel de Windows PDFKernel de Windows PDF
Kernel de Windows PDF
 
Instalación y configuración de servidor ftp
Instalación  y configuración de servidor ftpInstalación  y configuración de servidor ftp
Instalación y configuración de servidor ftp
 
Sistemas operativos
Sistemas operativosSistemas operativos
Sistemas operativos
 
Unidad 1
Unidad 1Unidad 1
Unidad 1
 
Términos de Programación Distribuida 8
Términos de Programación Distribuida 8Términos de Programación Distribuida 8
Términos de Programación Distribuida 8
 
Uc1 ec2
Uc1 ec2Uc1 ec2
Uc1 ec2
 
Framework .NET 3.5 04 El common language runtime
Framework .NET 3.5 04 El common language runtimeFramework .NET 3.5 04 El common language runtime
Framework .NET 3.5 04 El common language runtime
 
Capítulo 5 it essentials
Capítulo 5 it essentialsCapítulo 5 it essentials
Capítulo 5 it essentials
 
Dany
DanyDany
Dany
 

Kürzlich hochgeladen

sesión de aprendizaje 4 E1 Exposición oral.pdf
sesión de aprendizaje 4 E1 Exposición oral.pdfsesión de aprendizaje 4 E1 Exposición oral.pdf
sesión de aprendizaje 4 E1 Exposición oral.pdfpatriciavsquezbecerr
 
cuadernillo de lectoescritura para niños de básica
cuadernillo de lectoescritura para niños de básicacuadernillo de lectoescritura para niños de básica
cuadernillo de lectoescritura para niños de básicaGianninaValeskaContr
 
MODELO DE INFORME DE INDAGACION CIENTIFICA .docx
MODELO DE INFORME DE INDAGACION CIENTIFICA .docxMODELO DE INFORME DE INDAGACION CIENTIFICA .docx
MODELO DE INFORME DE INDAGACION CIENTIFICA .docxRAMON EUSTAQUIO CARO BAYONA
 
periodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicasperiodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicas123yudy
 
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...YobanaZevallosSantil1
 
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...fcastellanos3
 
4º SOY LECTOR PART2- MD EDUCATIVO.p df PARTE
4º SOY LECTOR PART2- MD  EDUCATIVO.p df PARTE4º SOY LECTOR PART2- MD  EDUCATIVO.p df PARTE
4º SOY LECTOR PART2- MD EDUCATIVO.p df PARTESaraNolasco4
 
SIMULACROS Y SIMULACIONES DE SISMO 2024.docx
SIMULACROS Y SIMULACIONES DE SISMO 2024.docxSIMULACROS Y SIMULACIONES DE SISMO 2024.docx
SIMULACROS Y SIMULACIONES DE SISMO 2024.docxLudy Ventocilla Napanga
 
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxPresentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxYeseniaRivera50
 
PROGRAMACION ANUAL DE MATEMATICA 2024.docx
PROGRAMACION ANUAL DE MATEMATICA 2024.docxPROGRAMACION ANUAL DE MATEMATICA 2024.docx
PROGRAMACION ANUAL DE MATEMATICA 2024.docxEribertoPerezRamirez
 
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptxMonitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptxJUANCARLOSAPARCANARE
 
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfMapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfvictorbeltuce
 
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdfFichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdfssuser50d1252
 
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdfFisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdfcoloncopias5
 

Kürzlich hochgeladen (20)

sesión de aprendizaje 4 E1 Exposición oral.pdf
sesión de aprendizaje 4 E1 Exposición oral.pdfsesión de aprendizaje 4 E1 Exposición oral.pdf
sesión de aprendizaje 4 E1 Exposición oral.pdf
 
TL/CNL – 2.ª FASE .
TL/CNL – 2.ª FASE                       .TL/CNL – 2.ª FASE                       .
TL/CNL – 2.ª FASE .
 
PPTX: La luz brilla en la oscuridad.pptx
PPTX: La luz brilla en la oscuridad.pptxPPTX: La luz brilla en la oscuridad.pptx
PPTX: La luz brilla en la oscuridad.pptx
 
VISITA À PROTEÇÃO CIVIL _
VISITA À PROTEÇÃO CIVIL                  _VISITA À PROTEÇÃO CIVIL                  _
VISITA À PROTEÇÃO CIVIL _
 
cuadernillo de lectoescritura para niños de básica
cuadernillo de lectoescritura para niños de básicacuadernillo de lectoescritura para niños de básica
cuadernillo de lectoescritura para niños de básica
 
MODELO DE INFORME DE INDAGACION CIENTIFICA .docx
MODELO DE INFORME DE INDAGACION CIENTIFICA .docxMODELO DE INFORME DE INDAGACION CIENTIFICA .docx
MODELO DE INFORME DE INDAGACION CIENTIFICA .docx
 
periodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicasperiodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicas
 
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...
 
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
Estas son las escuelas y colegios que tendrán modalidad no presencial este lu...
 
4º SOY LECTOR PART2- MD EDUCATIVO.p df PARTE
4º SOY LECTOR PART2- MD  EDUCATIVO.p df PARTE4º SOY LECTOR PART2- MD  EDUCATIVO.p df PARTE
4º SOY LECTOR PART2- MD EDUCATIVO.p df PARTE
 
Aedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptxAedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptx
 
SIMULACROS Y SIMULACIONES DE SISMO 2024.docx
SIMULACROS Y SIMULACIONES DE SISMO 2024.docxSIMULACROS Y SIMULACIONES DE SISMO 2024.docx
SIMULACROS Y SIMULACIONES DE SISMO 2024.docx
 
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptxPresentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
Presentación de Estrategias de Enseñanza-Aprendizaje Virtual.pptx
 
PROGRAMACION ANUAL DE MATEMATICA 2024.docx
PROGRAMACION ANUAL DE MATEMATICA 2024.docxPROGRAMACION ANUAL DE MATEMATICA 2024.docx
PROGRAMACION ANUAL DE MATEMATICA 2024.docx
 
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptxMonitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
Monitoreo a los coordinadores de las IIEE JEC_28.02.2024.vf.pptx
 
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdfTema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
 
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfMapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
 
DIA INTERNACIONAL DAS FLORESTAS .
DIA INTERNACIONAL DAS FLORESTAS         .DIA INTERNACIONAL DAS FLORESTAS         .
DIA INTERNACIONAL DAS FLORESTAS .
 
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdfFichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
Fichas de Matemática DE SEGUNDO DE SECUNDARIA.pdf
 
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdfFisiologia.Articular. 3 Kapandji.6a.Ed.pdf
Fisiologia.Articular. 3 Kapandji.6a.Ed.pdf
 

POSIX-UNA

  • 1. UNIVERSIDAD NACIONAL AUTONOMA DE HONDURAS Facultad de Ciencias Económicas Departamento de Informática Administrativa Asignatura: Sistemas Operativos I Catedrático: Lic. Carmen González Sección: 1101 Alumno: Roy Portillo Álvarez Cuenta: 20091002855 Tegucigalpa M.D.C. 20 de Mayo de 2012
  • 3. POSIX POSIX es el acrónimo de Portable Operating System Interface; la X viene de UNIX como seña de identidad de la API. El término fue sugerido por Richard Stallman en respuesta a la demanda de la IEEE , que buscaba un nombre fácil de recordar. Una traducción aproximada del acrónimo podría ser "Interfaz de sistema operativo portable" o "Interfaz portable de sistema operativo".
  • 4. ¿Que es POSIX? O POSIX es el estándar de interfaz de sistemas operativos portables de IEEE basado en el sistema operativo UNIX. Aunque UNIX era prácticamente un estándar industrial, había bastantes diferencias entre las distintas implementaciones de UNIX, lo que provocaba que las aplicaciones no se pudieran transportar fácilmente entre distintas plataformas UNIX. O El POSIX Se trata de un estándar que intenta asegurar la portabilidad entre diferentes sistemas operativos. Dentro del estándar se especifica el comportamiento de las expresiones regulares y de las herramientas más comunes que las usan.
  • 5. O Estos son una familia de estándares de llamadas al sistema operativo definido por el IEEE y especificado formalmente en el IEEE 1003. Persiguen generalizar las interfaces de los sistemas operativos para que una misma aplicación pueda ejecutarse en distintas plataformas. Estos estándares surgieron de un proyecto de normalización de las API y describen un conjunto de interfaces de aplicación adaptables a una gran variedad de implementaciones de sistemas operativos.
  • 6. El POSIX es un grupo de estándares en evolución. Cada uno de los estándares que lo componen cubre diferentes aspectos de los sistemas operativos. Algunos de ellos ya han sido aprobados, mientras que otros están aún en fase de desarrollo. Los estándares POSIX se pueden agrupar en tres categorías diferentes:
  • 7. 1)Estándares de Base Definen interfaces del sistema relacionadas con diferentes aspectos del sistema operativo. El estándar especifica la sintaxis y la semántica de estos servicios del sistema operativo, de modo que los programas de aplicación puedan invocarlos directamente. El estándar no especifica cómo se implementan estos servicios; de este modo, los implementadores de sistemas pueden elegir la implementación que crean más conveniente—y así competir entre ellos—, siempre que cumplan la especificación de la interface. Todos los estándares base desarrollados hasta el momento lo han sido para lenguaje C. En el momento de escribir este artículo está abierto el debate sobre si los estándares base deben desarrollarse de forma independiente del lenguaje, y luego especificar interfaces concretas para los diferentes lenguajes de programación.
  • 8. 2) Interfaces en diferentes lenguajes de programación: Son estándares secundarios que traducen a un lenguaje de programación concreto los estándares base. Los lenguajes utilizados hasta el momento son Ada, Fortran 77, y Fortran 90, además del lenguaje C, en el que se han especificado hasta el momento los estándares base.
  • 9. 3) Entorno de Sistemas Abiertos Estos estándares incluyen una guía al entorno POSIX y los perfiles de entornos de aplicación. Un perfil de aplicación es una lista de los estándares POSIX, con especificación de las opciones y parámetros necesarios, que se requieren para un cierto entorno de aplicación. El objetivo principal de los perfiles de aplicación es conseguir un conjunto pequeño de clases de implementaciones de sistemas operativos bien definidas y que sean apropiadas para entornos particulares de aplicaciones. La Tabla IV muestra la lista de estándares que están siendo desarrollados en este grupo.
  • 10. ¿Donde se Utiliza ? O En hilos, se les asignan porciones de tiempo por el núcleo. O Definen interfaces de sistemas operativos; O Permiten el desarrollo de Software portable y reutilizable; O Interfaz básica; O Extensiones de tiempo real; O Procesos ligeros; O Seguridad; O Servicios de red; O Tolerancia de fallos; O Comunicaciones de tiempo real.
  • 11. Uso del POSIX O Especifica las interfaces de usuario y software al sistema operativo en 15 documentos diferentes. La línea de comandos estándar y las interfaces de scripting se basaron en Korn Shell. Otros programas a nivel de usuario (user-level), servicios y utilidades incluyen AWK, echo, ed y cientos de otras. Los servicios a nivel de programa requeridos incluyen definición de estándares básicos de I/O, (file, terminal, y servicios de red). O También especifican una API para las bibliotecas de threading, que es muy utilizada en una gran variedad de sistemas operativos. Una serie de pruebas acompañan al estándar POSIX. Son llamadas “PCTS” en alusión al acrónimo “Posix Conformance Test Suite”. Desde que la IEEE empezó a cobrar altos precios por la documentación de POSIX y se ha negado a publicar los estándares, ha aumentado el uso del modelo Single Unix Specification. Este modelo es abierto, acepta entradas de todo el mundo y está libremente disponible en Internet. Fue creado por The Open Group.
  • 12. O Sincronización de procesos. Define funciones para permitir la sincronización de procesos a través de semáforos contadores. O Memoria compartida. Tienen espacios de direccionamiento que son independientes entre sí. Sin embargo, muchas aplicaciones de tiempo real (y también muchas que no son de tiempo real) necesitan compartir grandes cantidades de datos de una manera eficiente. O Señales de tiempo real. Permite notificar eventos que ocurren en el sistema, pero no es completamente satisfactorio para aplicaciones de tiempo real. Las señales no se almacenan en colas y, por tanto, algunos eventos se pueden perder. Las señales no están priorizadas, y esto implica tiempos de respuesta más largos para eventos urgentes. O Comunicación de procesos. Se especifica un mecanismo sencillo de colas de mensajes para la comunicación entre procesos. Las colas de mensajes están identificadas por un nombre perteneciente a un espacio de nombres dependiente de la implementación.
  • 13. O Entrada/Salida Asíncrona. Define funciones que permiten solapar el procesado de aplicaciones con las operaciones de entrada/salida iniciadas por la aplicación. Una operación de entrada/salida asíncrona es similar a las operaciones de entrada/salida normales, con la excepción de que una vez que la operación asíncrona ha sido iniciada por un proceso, este proceso no se suspende y puede continuar ejecutando instrucciones, en paralelo con la operación de entrada/salida. O Extensión de threads. Define interfaces para soportar múltiples actividades concurrentes, denominadas threads, dentro de cada proceso POSIX. Los threads definidos en el POSIX tienen un estado asociado más pequeño que el de un proceso. Todos los threads que pertenecen al mismo proceso comparten el mismo espacio de direccionamiento. Pueden ser implementados con tiempos de cambio de contexto y de creación y destrucción más bajos que los de los procesos. El POSIX.4a ha sido específicamente desarrollado para abordar las necesidades de los sistemas multiprocesadores de memoria compartida.
  • 14. Características del POSIX O Algunos tipos de datos utilizados por las funciones no se definen como parte de estándar, pero se definen como parte de la implementación. Estos tipos se encuentran definidos en el archivo de cabecera <sys/types.h>. Estos acaba con el sufijo _t. Por ejemplo, uid_t es el tipo que se emplea para almacenar un identificador de usuario. O Los nombres de las funciones en POSIX son en general cortos y con todas sus letras en minúsculas. Ejemplo de funciones en POSIX son: 1. Fork, para crear un nuevo proceso. 2. Read, para leer datos de un archivo. 3. Close, para cerrar un archivo.
  • 15. O Las funciones, normalmente devuelven cero si se ejecutaron con éxito 0-1 en caso de error. O Cuando una función devuelve -1, se almacena en una variable global, denominada errno, el código de error. Este código de error es un valor entero. La variable errno se encuentra definida en el archivo de cabecera <errno.h>. O La mayoría de los recursos gestionados por el sistema operativo se referencian mediante descriptores. Un descriptor es un numero entero mayor o igual que cero.
  • 16. Funciones del POSIX Instalación Las funciones POSIX son habilitadas por defecto. Puede deshabilitar las funciones tipo POSIX con --disable-posix. Constantes predefinidas Estas constantes están definidas por esta extensión y estarán disponibles solamente cuando la extensión ha sido o bien compilada dentro de PHP o grabada dinámicamente en tiempo de ejecución. POSIX_F_OK (integer)Verificar si el archivo existe. POSIX_R_OK (integer)Verificar si el archivo existe y tiene permisos de lectura. POSIX_W_OK (integer)Verificar si el archivo existe y tiene permisos de escritura. POSIX_X_OK (integer)Verificar si el archivo existe y tiene permisos de ejecución. POSIX_S_IFBLK (integer)Archivo especial de bloque. POSIX_S_IFCHR (integer) Archivo especial de carácter. POSIX_S_IFIFO (integer)Archivo especial FIFO (pipe con nombre). POSIX_S_IFREG (integer)Archivo normal. POSIX_S_IFSOCK (integer)Socket.
  • 17.  posix_access — Determinar la accesibilidad de un archivo, verifica el permiso del usuario sobre un archivo.  posix_ctermid — Recoge el nombre de ruta de la terminal de control. Necesita ser escrito.  posix_get_last_error — Recuperar el número de error establecido por la última función posix que ha fallado. Recupera el número de error establecido por la última función posix que falló. El mensaje de error del sistema asociado con el valor errno puede ser consultado con posix_strerror().  posix_getcwd — Nombre de ruta del directorio actual. Necesita ser escrito cuanto antes.  posix_getegid — Devuelve el ID de grupo efectivo del proceso actual. Devuelve el valor numérico ID de grupo efectivo del proceso actual.
  • 18.  posix_geteuid — Devuelve el ID de usuario efectivo del proceso actual. Devuelve el valor numérico ID de usuario efectivo del proceso actual.  posix_getgid — Devuelve el ID de grupo real del proceso actual. Devuelve el valor numérico ID de grupo real del proceso actual.  posix_getgrgid — Devuelve información sobre un grupo a través del id de grupo. Necesita ser escrito.  posix_getgrnam — Devuelve información sobre un grupo a través del nombre. Necesita ser escrito.  posix_getgroups — Devuelve el conjunto de grupos del proceso actual. Devuelve un vector de enteros que contiene los ids numéricos de grupo de el conjunto de grupos del proceso actual.  posix_getlogin — Devuelve el nombre de usuario. Devuelve el nombre de usuario (login) que es dueño del proceso actual.  posix_getpgid — Recoge el id del grupo de procesos para el control de trabajo. Devuelve el identificador de grupo de procesos del proceso pid.
  • 19.  posix_getpgrp — Devuelve el identificador de grupo del proceso actual. Devuelve el identificador de grupo de proceso del proceso actual.  posix_getpid — Devuelve el identificador del proceso actual. Devuelve el identificador de proceso del proceso actual.  posix_getppid — Devuelve el identificador del proceso padre. Devuelve el identificador de proceso del proceso padre del proceso actual.  posix_getpwnam — Devuelve información sobre un usuario a través del nombre de usuario. Devuelve un vector asociativo conteniendo información sobre un usuario referenciado por un nombre alfanumérico, pasado a la función en el parámetro username .  posix_getpwuid — Devuelve información sobre un usuario a través de su id. Devuelve un vector asociativo que contiene información sobre un usuario referenciado con un ID de usuario, pasado por el parámetro uid.  posix_getrlimit — Devuelve información sobre los limites de recursos del sistema. Necesita ser escrita tan pronto como sea posible.  posix_getsid — Consigue el sid actual del proceso. Devuelve el sid del proceso pid . Si pid es 0, se devolverá el sid del proceso actual. Esta no es una función POSIX, pero es normal en sistemas System V. Si su sistema no soporta esta función a nivel de sistema, esta función PHP devolverá siempre FALSE.
  • 20.  posix_getuid — Devuelve el ID de usuario real del proceso actual. Devuelve el valor numérico ID de usuario real del proceso actual.  posix_isatty — Determinar si un descriptor de archivo es una terminal interactiva. Determina si el descriptor de archivo da hace referencia a un dispositivo tipo terminal válido.  posix_kill — Manda una señal a un proceso. Manda la señal sig al proceso con el identificador de proceso pid . Devuelve FALSE, si no puede enviar la señal. Si sí la envía devuelve TRUE .  posix_mkfifo — Crear un archivo especial fifo (un pipe con nombre). posix_mkfifo() crea un archivo FIFO especial que existe en el sistema de archivos y actúa como un punto de comunicación bi-direccional para los procesos.  posix_mknod — Crear un archivo especial u ordinario. Crea un archivo especial u ordinario.  posix_setegid — Establecer el GID efectivo del proceso actual. Establece el ID de grupo efectivo del proceso actual. Esta es una función privilegiada y se necesitan los permisos apropiados (usualmente root) en el sistema para contar con la capacidad de ejecutar esta función.
  • 21.  posix_seteuid — Establecer el UID efectivo del proceso actual. Establece el ID de usuario real del proceso actual. Esta es una función privilegiada y se necesitan los permisos apropiados (usualmente root) en el sistema para tener la capacidad de ejecutar esta función.  posix_setgid — Asigna el GID efectivo del proceso actual. Asigna el ID de grupo real del proceso actual. Esta es una función privilegiada y necesitas los privilegios apropiados (normalmente root) en tu sistema para realizar esta función. El orden apropiado de llamada es posix_setgid() primero, posix_setuid() después.Devuelve TRUE si tiene éxito, FALSE en caso contrario.  posix_setpgid — Asigna el id de grupo de procesos para el control de trabajos. Inserta el proceso pid en el grupo de procesos pgid.  posix_setsid — Convierte el proceso actual en líder de sesión. Convierte el proceso actual en líder de sesión.  posix_setuid — Asigna el UID efectivo del proceso actual. Asigna el ID de usuario real al proceso actual. Esta es una función privilegiada y necesitas los privilegios apropiados (normalmente root) en tu sistema para realizar esta función.
  • 22.  posix_strerror — Recuperar el mensaje de error del sistema asociado con el errno dado. Devuelve el mensaje de error del sistema POSIX asociado con el errno. Es posible obtener el parámetro errno llamando la función posix_get_last_error().  posix_times — Recoge el tiempo de los procesos. Devuelve un hash de cadenas con información sobre el uso de CPU del proceso actual. Los índices del hash son a) ticks - el numero de ticks de reloj que han pasado desde el reinicio. b) utime - tiempo de usuario usado por el proceso actual. c) stime - tiempo de sistema usado por el proceso actual. d) cutime - tiempo de usuario usado por el proceso actual e hijos. e) cstime - tiempo de sistema usado por el proceso actual e hijos.  posix_ttyname — Determina el nombre del dispositivo terminal. Necesita ser escrito.  posix_uname — Consigue el nombre del sistema.
  • 23. Compatibilidad Los siguientes Sistemas Operativos son 100% compatibles con uno o varios estándares POSIX. 1. A/UX 2. AIX 3. BSD/OS 4. DSPnano 5. HP-UX 6. INTEGRITY 7. IRIX 8. LynxOS 9. Mac OS X v10.5 en Procesadores Intel. 10. MINIX 11. MPE/iX 12. QNX (IEEE Std. 1003.13-2003 PSE52; 13. RTEMS (POSIX 1003.1-2003 Profile 52) 14. Solaris 15. Unison RTOS 16. UnixWare 17. velOSity 18. VxWorks (IEEE Std. 1003.13-2003 PSE52;
  • 24. POSIX para Windows  Cygwin ofrece un desarrollo en gran parte compatible con POSIX y un entorno de ejecución para Microsoft Windows.  Microsoft POSIX subsystem, un subsistema opcional Windows  Windows Services for UNIX de Microsoft permite una plena compatibilidad POSIX para ciertos productos de Microsoft Windows. Los sistemas operativos basados en Windows NT hasta Windows 2000 tenían una interfaz POSIX incorporada en el sistema operativo y los Servicios UNIX para Windows brindaban un entorno del tipo UNIX. Para Windows XP, los Servicios UNIX para Windows deben de instalarse para que exista compatibilidad POSIX. El subsistema UNIX está incorporado a las ediciones Enterprise y Ultimate de Windows Vista y 7, y no pueden ser agregados en forma separada a las otras ediciones..  UWIN de AT&T Research implementa una capa POSIX sobre la interfaz de programa de aplicaciones (API) de Win32.  MKS Toolkit.