En los sistemas operativos Windows NT , un servicio de Windows es un programa informático que funciona en segundo plano . [1] Es similar en concepto a un demonio de Unix . [1] Un servicio de Windows debe cumplir con las reglas de interfaz y los protocolos del Administrador de control de servicios , el componente responsable de administrar los servicios de Windows. Es la aplicación Servicios y controlador, services.exe, la que lanza todos los servicios y administra sus acciones, como inicio, fin, etc. [2]
Los servicios de Windows se pueden configurar para que se inicien cuando se inicia el sistema operativo y se ejecuten en segundo plano mientras Windows esté en ejecución. Alternativamente, se pueden iniciar manualmente o mediante un evento. Los sistemas operativos Windows NT incluyen numerosos servicios que se ejecutan en el contexto de tres cuentas de usuario : Sistema, Servicio de red y Servicio local. Estos componentes de Windows suelen estar asociados con el Proceso host para servicios de Windows . Debido a que los servicios de Windows funcionan en el contexto de sus propias cuentas de usuario dedicadas, pueden funcionar cuando un usuario no ha iniciado sesión.
Antes de Windows Vista , los servicios instalados como "servicios interactivos" podían interactuar con el escritorio de Windows y mostrar una interfaz gráfica de usuario . Sin embargo, en Windows Vista, los servicios interactivos están en desuso y pueden no funcionar correctamente, como resultado del endurecimiento de los servicios de Windows . [3] [4]
Los administradores de Windows pueden administrar servicios a través de:
El complemento Servicios, creado sobre Microsoft Management Console , puede conectarse a la computadora local o a una computadora remota en la red, lo que permite a los usuarios: [1]
La herramienta de línea de comandos para administrar los servicios de Windows es sc.exe. Está disponible para todas las versiones de Windows NT . [7] Esta utilidad está incluida en Windows XP [8] y posteriores [9] y también en ReactOS .
El sc
alcance de gestión del comando está restringido al equipo local. Sin embargo, a partir de Windows Server 2003 , no solo puede sc
hacer todo lo que hace el complemento Servicios, sino que también puede instalar y desinstalar servicios. [9]
El sc
comando duplica algunas características del net
comando. [10]
La versión de ReactOS fue desarrollada por Ged Murphy y tiene licencia GPL . [11]
El siguiente ejemplo enumera el estado de los servicios y controladores activos. [12]
C:\> consulta sc
El siguiente ejemplo muestra el estado del servicio de registro de eventos de Windows . [12]
C:\> sc consulta registro de eventos
El módulo de PowerShell Microsoft.PowerShell.Management (incluido con Windows) tiene varios cmdlets que se pueden usar para administrar servicios de Windows:
Windows también incluye componentes que pueden realizar un subconjunto de lo que hacen el complemento Sc.exe y PowerShell. El net
comando puede iniciar, detener, pausar o reanudar un servicio de Windows. [21] En Windows Vista y versiones posteriores, el Administrador de tareas de Windows puede mostrar una lista de servicios instalados e iniciarlos o detenerlos. MSConfig puede habilitar o deshabilitar (consulte la descripción del tipo de inicio más arriba) los servicios de Windows.
Los servicios de Windows se instalan y eliminan a través de scripts de configuración *.INF de SetupAPI ; un servicio instalado se puede iniciar inmediatamente después de su instalación y un servicio en ejecución se puede detener antes de su desinstalación. [22] [23] [24]
Para que un programa se ejecute como un servicio de Windows, debe estar escrito para manejar mensajes de inicio, detención y pausa del servicio desde el Administrador de control de servicios (SCM) a través de la API de servicios del sistema. SCM es el componente de Windows responsable de administrar los procesos de servicio.
El Kit de recursos de Windows para Windows NT 3.51 , Windows NT 4.0 y Windows 2000 proporciona herramientas para controlar el uso y registro de servicios: SrvAny.exe
actúa como un contenedor de servicios para manejar la interfaz esperada de un servicio (por ejemplo, manejar service_start y responder algún tiempo después con service_started o service_failed) y permite que cualquier ejecutable o script se configure como un servicio. Sc.exe
permite instalar, iniciar, detener y desinstalar nuevos servicios. [25]
El servicio CmdAsSystem está configurado como interactivo y su compatibilidad está en desuso. Es posible que el servicio no funcione correctamente. El problema es que este script intenta crear e iniciar un servicio interactivo. Los servicios interactivos no funcionarán correctamente debido al aislamiento de la sesión 0 en Windows Vista.
{{cite web}}
: CS1 maint: postscript (link)Windows 7, Windows 8, Windows Server 2003, Windows Server 2003 R2, Windows Server 2003 con SP1, Windows Server 2003 con SP2, Windows Server 2008, Windows Server 2008 R2, Windows Server 2012, Windows Vista