7 votos

¿Cuál es la diferencia entre "Aplicación" y "Proceso" en OS X?

A medida que me voy adentrando en AppleScript y en los ajustes de OS X en general, llego a esta pregunta:

¿Cuál es la diferencia entre estas dos palabras en términos de operaciones internas de OS X - por ejemplo, algunos procesos operan "dentro" de las aplicaciones (o vica versa), o dos procesos operan como parte de una "aplicación" en términos de lo que el usuario interactúa con la GUI (o, vica versa)?

Además, vengo de un entorno de Microsoft Windows. ¿Tienen "aplicación" y "proceso" alguna relación con "servicio" en OS X, (dado que "servicio" y "programa" son cosas diferentes en Windows), y existe realmente una tercera categoría en OS X llamada "servicio" también?

5voto

Jose Chavez Puntos 645

La forma estándar de enfocar estos términos es decir que una "aplicación" es un programa específico y estático en el almacenamiento. Es un trozo de código almacenado en un disco duro, un CD-ROM o cualquier otro lugar.

Por otro lado, un "proceso" es una instancia específica de un corriendo programa. Es decir, es registrado por el sistema operativo como ejecutado o capaz de ejecutarse cuando el sistema operativo lo considere oportuno.

Si tomas por ejemplo Calculator.app, es una sola aplicación. Sin embargo, puedes tener varios procesos de Calculadora si inicias el programa varias veces.

Como escribió chananelb, también es posible tener procesos que no son "sólo" aplicaciones ordinarias que se han iniciado. Podrían ser, por ejemplo, procesos del kernel, o simplemente procesos ordinarios que generen subprocesos para realizar tareas específicas.

En cuanto a los servicios, la respuesta de I chananelb te lleva en la dirección equivocada. Su respuesta te habla de lo que se llama "Servicio" en Mac OS X... pero tú preguntaste por lo que se llama "Servicio" en Windows.

El equivalente a un servicio de Windows es un demonio en Mac OS X (y otros sistemas derivados de Unix).

Los daemons se clasifican normalmente por ejecutarse en "segundo plano", es decir, sin interacción directa del usuario a través de una interfaz gráfica o no gráfica. Sin embargo, la distinción es un poco borrosa, ya que un Daemon podría, por ejemplo, tener una interfaz web para la interacción con el usuario.

Los daemons en Mac OS X son controlados por el programa launchd, que es responsable, por ejemplo, de iniciar los daemons en el arranque, y de permitir al usuario iniciar y detener los daemons a petición.

4voto

200_success Puntos 319

Según el Guía de programación de aplicaciones para Mac ,

Utilizas Cocoa para escribir aplicaciones para OS X.

Basado en esa definición, aplicaciones debe ser envasada en Paquetes de aplicaciones :

Los paquetes de aplicaciones son uno de los tipos más comunes de paquetes creados por los desarrolladores. El paquete de aplicaciones almacena todo lo que la aplicación necesita para funcionar correctamente.

En la misma página, dice:

Nota: Aunque los bundles son una forma de empaquetar el código ejecutable, no son la única forma que se admite. Los shell UNIX scripts y las herramientas de línea de comandos no utilizan la estructura de paquetes, ni tampoco las bibliotecas compartidas estáticas y dinámicas.

Basándome en esto, diría que Apple no considera las herramientas de línea de comandos como ls para ser "aplicaciones". Serían programas ejecutables o ejecutables .


A proceso es cualquier instancia de un programa informático que se está ejecutando. Un proceso puede crearse ejecutando una aplicación o un ejecutable de Unix. (Los Shell scripts serían un tipo de ejecutable donde /bin/sh u otro shell interpreta el script.)

"Proceso" significa lo mismo en Windows (véase la pestaña Proceso en el Administrador de tareas de Windows).


Servicio tiene tres significados diferentes en Mac OS X:

  • Puede referirse a un daemon que es análogo a un servicio de Windows. Se trata de procesos de fondo persistentes en todo el sistema que no pertenecen a la sesión de ningún usuario.

  • Podría referirse a una función específica de Mac OS X que facilita la transferencia de datos entre aplicaciones . Por ejemplo, existe un servicio "Make New Sticky Note" que permite convertir una selección de texto en una Sticky Note.

  • También puede utilizarse en el sentido genérico de la palabra en inglés, como en Servicios de lanzamiento . Launch Services es una API para abrir aplicaciones, y puede, por ejemplo, decidir cuál es la aplicación adecuada para gestionar un tipo de archivo concreto.

2voto

Bytevic Puntos 11

Una aplicación es un proceso que puede engendrar subprocesos (conocidos como hijos) pero algunos procesos son engendrados por el propio SO y pueden no tener una 'aplicación' per se detrás de ellos. Esta es (a mi entender) la forma en que funciona unix en general (introducción a unix - procesos).

Gracias jksoegaard, lo siguiente no viene al caso, he interpretado mal la pregunta. Soy algo nuevo, ¿lo borro o lo dejo?

Los servicios en OS X son algo similar al botón de compartir en Android - es una forma de enviar un trozo de datos directamente desde la aplicación actual a otra diferente.

Un ejemplo sencillo es el texto: si resaltas un texto y haces clic con el botón derecho, aparecerá el menú contextual con los servicios en la parte inferior, y si entras en ese menú verás qué otras aplicaciones de tu Mac pueden utilizar ese texto para algo (por ejemplo, resumir, buscar en la web (Chrome), Spotlight, etc.).

Puede modificar los servicios en el panel de Preferencias del Teclado en la pestaña "Atajos" y crear los suyos propios en Automator ver este artículo de Ars Technica para más información.

0voto

Goldorak84 Puntos 116

Aplicación: un programa informático que realiza un trabajo útil no relacionado con el propio ordenador; una pieza de software que realiza una función concreta para el usuario. Algunos ejemplos son los programas de procesamiento de textos, los navegadores web, los programas de presentación y los sistemas de contabilidad.

Proceso: una serie de instrucciones que un ordenador ejecuta en un sistema operativo multitarea. Muchos procesos se ejecutan simultáneamente. Desde el punto de vista del usuario, los procesos pueden ser programas o partes de programas (como la rutina de edición y la rutina de impresión en un procesador de textos que puede imprimir mientras se edita).

Tenga en cuenta que ambas cosas no son necesariamente excluyentes. Sin embargo, en pocas palabras, una aplicación es un conjunto de procesos que, para el usuario, aparecen como uno solo.

Definiciones de: Diccionario de términos de Internet e informática

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X