Multitarea: proceso de fondo e proceso de primeiro plano

Como un sistema operativo multitarea, Linux admite a execución de moitos procesos, basicamente, programas ou comandos ou tarefas similares, en segundo plano mentres continúa traballando en primeiro plano.

Procesos de primeiro plano

Un proceso de primeiro plano é calquera comando ou tarefa que corres directamente e espera que se complete. Algúns procesos en primeiro plano mostran algún tipo de interface de usuario que admite a interacción do usuario en curso, mentres que outros executan unha tarefa e "conxelan" a computadora mentres completa esa tarefa.

Do shell, un proceso de primeiro plano comeza escribindo un comando no indicador. Por exemplo, para ver unha lista simple dos ficheiros do directorio activo, escriba:

$ ls

Verás a lista de ficheiros. Mentres a computadora está a preparar e imprimir esa lista, non pode facer outra cousa no símbolo do sistema.

Proceso de fondo

A diferenza dun proceso de primeiro plano, o shell non ten que esperar a que finalice un proceso de fondo antes de que poida executar máis procesos. Dentro do límite da cantidade de memoria dispoñible, pode introducir varias ordes de fondo unha despois da outra. Para executar un comando como proceso de fondo, escriba o comando e engada un espazo e un ámbar e ao final do comando. Por exemplo:

$ command1 &

Cando emita un comando cos ampersand de conclusión, o shell executará o traballo, pero no canto de facerlle esperar que remate o comando, volverá inmediatamente ao shell e verá o símbolo do shell (% para a C Shell, e $ para o Bourne Shell eo Korn Shell) volven. Neste punto, pode introducir outro comando para calquera proceso de fondo ou fondo. Os traballos en segundo plano executáronse nunha prioridade menor aos traballos en primeiro plano.

Verá unha mensaxe na pantalla cando finalice un proceso de fondo.

Cambiar entre procesos

Se un proceso en primeiro plano leva moito tempo, deténlo presionando CTRL + Z. Aínda existe un traballo parado, pero a súa execución queda suspendida. Para continuar o traballo, pero en segundo plano, escriba bg para enviar o traballo parado á execución de fondo.

Para continuar un proceso suspendido en primeiro plano, escriba fg e ese proceso asumirá a sesión activa.

Para ver unha lista de todos os procesos suspendidos, use o comando emprego ou use o comando superior para mostrar unha lista das tarefas máis intensivas da CPU para que poida suspendelos ou impedilos para liberar os recursos do sistema.

Shell vs. GUI

A multitarea funciona de forma diferente dependendo de se estás traballando desde a shell ou unha interface gráfica de usuario . Linux do shell soporta só un proceso de primeiro plano activo por terminal virtual. Non obstante, desde o punto de vista práctico do usuario, un contorno de fiestra (por exemplo, Linux cun escritorio, e non dun shell de texto) admite varias fiestras activas que serven efectivamente como múltiples procesos de primeiro plano simultáneos. Na práctica, Linux detrás das escenas axusta a prioridade dos procesos nunha GUI para promover a estabilidade do sistema e soportar o procesamento do usuario final.