Procesos Informal Flashcards

1
Q

Que es un proceso?

A

Un programa en ejecucion. Incluye el texto, el stack con el entorno de ejecucion (variables). Puede incluir heap con memoria allocada. Y el Program Counter con el proximo elemento a ejecutar. Es conceptualmente la unidad de trabajo del software

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Cuales son los estados de un proceso?

A

Nuevo. Se esta creando
Corriendo.
Esperando. (algun evento)
Listo, el proceso esta esperando ser asignado a un proceso
Terminado. El proceso termino

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Que es una pcb y que contiene

A

Es El program control block, la representacion de un proceso en el Sistema Operativo. Tiene:
Program Counter.
CPU Registers
Cpu Shceduling information (prioridad, pointers to queues, etc)
Memory management information.
Accounting information. (Cuanto se uso la cpu, limites, etc. la informacion que te provee top)
I/O status information. Que dispositivos usa este proceso, archivos abiertos, etc.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Como es la estructura de pcb en linux

A

Se llama task_struck.

Tiene un pid,
Un state
Time_slice
Lista de open files
y un puntero al stack del proceso

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Cuantas queues de procesos hay

A

Por cada dispositivo tiene una queue esperando a poder leer/escribir. Hay una ready queue

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Que tipos de scheduler hay?

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Que hace el long term scheduler?

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Que hace el short term scheduler?

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Posibilidades cuando un padre crea un proceso?

A

Que se ejecute concurrentemente o que espere a que termine sus hijos

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Posibilidades de adress space de un proceso?

A

Que copie el proceso, o que cargue otro programa

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Explicar el pid al hacer un fork

A

El padre sabe el PID de su hijo (pid = fork()).
Cada hijo sabe su pid, pero al hacer pid= fork(), la variable de pid es 0. Podes hacer un if pid== 0 para saber si sos el hijo o el padre

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Explicar la operacion fork y exec

A

Pagina 93 de System concepts

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Por que windows es una verga (al crear procesos)?

A

Porque no tiene fork y exec, tiene createProccess, que no copia el adress space, por lo que tenes que pasar un nuevo programa para ejecutar (en no menos de 10 parametros)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Cuando termina un proceso?

A

con el exit() syscall, en el cual puede mandar un int a su padre
Con una syscoll a otro proceso.
Un pádre puede terminar un proceso de un hijo por varias razones
- el hijo se paso de recursos
- La tarea que estaba haciendo ya no es necesaria
- El padre esta terminando, y el Sistema no te deja tener hijos huerfanos.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Que sucede con los hijos de un proceso que muere

A

DEPENDE del proceso. Puede ser que mate a todos sus hijos. Si por alguna razon no los quiere matar, pasan a ser hijos de init (que es el proceso superpadre)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Razones para cooperar procesos

A

Compartir informacion
Paralelizar
Modularidad
“Conveniencia”

17
Q

Cuales son los dos modelos fundamentales de IPC y cuando se usa cada uno

A

Memoria compartida:
NO ES MEMORIA COMPARTIDA exactamente. Una region de memoria es accedida por varios procesos (los pipes son un ejemplo). Esto funciona cuando tenes que tener mucha informacion comun, y muy rapido

Pasaje de mensajes: Se cambian mensajes. es muy util para mandar poca info entre pocos procesos. Es mas lento que memoria compartida, pero no tenes que preocuparte por conflictos

18
Q

Que tipos de buffers hay en shared memory (productor/consumidor)

A

Unbounded: No tiene limite. El consumidor puede esperar nuevos items, pero el productor siempre puede leer mas
Bounded: tiene un limite fijo. El consumidor tiene que esperar si el buffer esta vacio, el productor tiene que esperar si el buffer esta lleno

19
Q

Describir comunicacion por medio de mensaje

A

Pagina 102

20
Q

Que tipos de blockeo hay en un mensaje

A

Blocking send: El proceso es bloqueado hasta que se lea
Nonblocking send
Blocking Receive.
nonblocking recieve

21
Q

Tipos de buffer en comunicacion

A

Zero: no puede etener mensajes esperando.Se blouqea hasta que se lee
Bounded: puede tener n mensajes. El sender se bloquea hasta que haya espacio
Unbounded. El sender nunca se bloquea

22
Q

Hablame de Sockts (no relevante)

A

Pagina 108