Como o trabalho é processado
Quando o sistema é iniciado, começa a ser executado um trabalho supervisor de subsistema. O trabalho supervisor de subsistema controla os trabalhos dentro de subsistemas. Também inicia e finaliza trabalho, além de gerir os recursos para trabalhar no subsistema.
O trabalho (ou os trabalhos) entram num subsistema através de entradas de trabalho onde fica activo e passível de ser executado. O trabalho só pode ser concluído quando for atribuída memória ao subsistema para execução. A memória é atribuída ao subsistema por um conjunto de memória.
Como a descrição do subsistema ajuda a processar trabalho
Tal como um trabalho, um subsistema tem uma descrição, denominada descrição do subsistema. A descrição do subsistema contém informações importantes que dizem como, quando, quanto trabalho pode estar activo num subsistema em dada altura, e quais os recursos que pode usar para realizar trabalho.
- Entrada de encaminhamento
- Uma entrada de encaminhamento existe na descrição do subsistema que diz a este último qual o conjunto de memória a usar para executar o trabalho, qual o programa a executar para o trabalho, e qual o objecto classe a usar para executar o trabalho.
- Objecto classe
- O objecto Classe define a prioridade de execução, o tempo de espera predefinido, o tempo de processador e outros atributos. A prioridade de execução é importante porque determina quando é que um trabalho terá tempo de processador para ser executado. A escala da prioridade de execução vai de 0 a 99, sendo 0 a prioridade mais alta. (Só os trabalhos de sistema recebem prioridade 0, porque são os trabalhos que executam o sistema.)
Quando um trabalho entra no subsistema, o subsistema tenta fazer corresponder os dados de encaminhamento ao valor de comparação na entrada de encaminhamento. Se os dados de encaminhamento e o valor de comparação numa entrada de encaminhamento corresponderem, esta última será atribuída ao trabalho. Se não houver correspondência, o trabalho é finalizado.
Outro factor que afecta o tempo de execução de um trabalho no subsistema consiste no número de trabalhos que podem estar activos no subsistema em dada altura (também denominado máximo de trabalhos activos no subsistema). Quando se atinge o número máximo de trabalhos activos num subsistema, já não podem entrar mais trabalhos nele até que os existentes activos concluam a respectiva execução. É necessário atribuir Memória ao subsistema para que o trabalho possa ser executado. Os níveis de actividade do conjunto de memória dizem ao sistema quantos módulos podem estar activos dentro do conjunto. Lembre-se que um trabalho activo tem pelo menos um módulo. Quando se atinge o nível de actividade do conjunto de memória, o trabalho tem de aguardar por outro módulo para desistir da utilização do nível de actividade. Assim, um trabalho pode estar activo num subsistema e pode não estar em funcionamento.