��ȨͶ��
��ҳ / �ٿ� / ����
����

����

���ࣺ ���ӹ���
���ԣ� ����
����޸�ʱ�䣺 2013��07��16��
�������������0
�����Dz���ϵͳ�ṹ�Ļ�������һ������ִ�еij��򣻼�������������еij���ʵ�������Է�������������ɴ�����ִ�е�һ��ʵ�壻�ɵ�һ˳���ִ����ʾ��һ����ǰ״̬��һ����ص�ϵͳ��Դ�������Ļ��Ԫ��

����������������ִ��ʱ����Ҫ����ϵͳ��Դ���Ӷ����¸�������ִ�й����г����໥��Լ�Ĺ�ϵ�������ִ�б��ֳ�����Ե���������Щ���������ڳ����ִ�й����з����ģ��Ƕ�̬�Ĺ��̣�����ͳ�ij�������һ��ָ��ļ��ϣ���һ����̬�ĸ���޷������������ڴ��е�ִ��������������޷��ӳ���������Ͽ�������ʱִ�У���ʱͣ�٣�Ҳ�޷�������������ִ�г���Ĺ�ϵ����ˣ����������̬�����Ѳ�����ʵ��ӳ���򲢷�ִ�й��̵�������Ϊ�������������ִ̬�й��̵����ʣ���������“���̣�Process��”���

��������

����������60�������������ʡ����ѧԺ��MULTICSϵͳ��IBM��˾��CTSS/360ϵͳ����ġ�

����������һ�����ж������ܵij������ij�����ݼ��ϵ�һ�����л�������������ӵ��ϵͳ��Դ����һ����̬�ĸ����һ�����ʵ�塣����ֻ�dz���Ĵ��룬��������ǰ�Ļ��ͨ�������������ֵ�ʹ����Ĵ�������������ʾ��

����

windows�Ľ��̹�����

��������

�������嶨�壺���̾��dz����ִ�й��̡�

����������һ������һ���������ܵij������ij�����ݼ��ϵ�һ�����л�����Dz���ϵͳ��ִ̬�еĻ�����Ԫ���ڴ�ͳ�IJ���ϵͳ�У����̼��ǻ����ķ��䵥Ԫ��Ҳ�ǻ�����ִ�е�Ԫ��

������Ҫ����

�������̵ĸ�����Ҫ�����㣺��һ��������һ��ʵ�塣ÿһ�����̶������Լ��ĵ�ַ�ռ䣬һ������£������ı�����text region������������data region���Ͷ�ջ��stack region�����ı�����洢������ִ�еĴ��룻��������洢�����ͽ���ִ���ڼ�ʹ�õĶ�̬������ڴ棻��ջ����洢�Ż���̵��õ�ָ��ͱ��ر������ڶ���������һ��“ִ���еij���”��������һ��û��������ʵ�壬ֻ�д����������������ʱ�������ܳ�Ϊһ�����ʵ�壬���dz���Ϊ���̡�

���������Dz���ϵͳ�����������Ҫ�ĸ���Ƕ������ϵͳ���ֺ�Ϊ�˿̻�ϵͳ�ڲ����ֵĶ�̬���������ϵͳ�ڲ���������Ļ����������һ������,���ж��������Ʋ���ϵͳ�������ڽ��̵Ļ����ϡ�

����ԭ��

��������ϵͳ������̵ĸ����ԭ��:

���������۽Ƕȿ����Ƕ��������еij�����̵ij���

������ʵ�ֽǶȿ�����һ�����ݽṹ��Ŀ�����������ؿ̻���̬ϵͳ�����ڹ��ɣ���Ч������������������ϵͳ���洢�����еij���

��������

������̬�ԣ����̵�ʵ���dz����ڶ������ϵͳ�е�һ��ִ�й��̣������Ƕ�̬��������̬�����ġ�

���������ԣ��κν��̶�����ͬ��������һ�𲢷�ִ��

���������ԣ�������һ���ܶ������еĻ�����λ��ͬʱҲ��ϵͳ������Դ�͵��ȵĶ�����λ��

�����첽�ԣ����ڽ��̼���໥��Լ��ʹ���̾���ִ�еļ���ԣ������̰����Զ����ġ�����Ԥ֪���ٶ���ǰ�ƽ�

�����ṹ�����������ɳ������ݺͽ��̿��ƿ���������ɡ�

���������ͬ�Ľ��̿��԰�����ͬ�ij���һ�������ڲ�ͬ�����ݼ���͹��ɲ�ͬ�Ľ��̣��ܵõ���ͬ�Ľ��������ִ�й����У������ܷ����ı䡣

��������

����һ�������ϵͳ���̰���������˵“ӵ��”���������ݣ�

�����Ǹ�����Ŀ����л������һ���ڴ洢����ӳ�� ���䵽�Ĵ洢����ͨ�����������ڴ��һ�����򣩡��洢�������ݰ��������д��롢�ض��ڽ��̵����ݣ����롢����������ö�ջ����ջ�����ڱ�������ʱ������;���������ݣ��� ������ý��̵���Դ�IJ���ϵͳ�������������ļ���������Unix ������ļ������Windows��������Դ�������նˡ� ��ȫ���ԣ��������ӵ���ߺͽ��̵�Ȩ�޼������������IJ������� ������״̬�����ģ�������Ĵ������ݡ������洢��Ѱַ�ȡ���������������ʱ��״̬ͨ�������ڼĴ�������������ڴ洢����

������

����

Windows ��Windows Vista ��ϵ�ṹ

�������н����л����Ǵ��������еĽ������ջش�������Ȼ����ʹ�����н�����ռ�ô�������

����������˵�Ĵ�ij�������ջش�������ʵ���Ͼ��ǰѽ��̴���ڴ������ļĴ����е��м������Ҹ��ط����������Ӷ��Ѵ������ļĴ����ڳ�������������ʹ�á���ô����ֹ���н��̵��м����ݴ��ںδ����أ���Ȼ����ط�Ӧ���ǽ��̵�˽�ж�ջ��

�����ý�����ռ�ô�������ʵ�����ǰ�ij�����̴����˽�ж�ջ�мĴ��������ݣ�ǰһ�α����̱���ֹʱ���м����ݣ��ٻָ����������ļĴ�����ȥ�����Ѵ����н��̵Ķϵ����봦�����ij���ָ��PC�����Ǵ����н��̾Ϳ�ʼ�������������ˣ�Ҳ������������Ѿ�ռ�д�������ʹ��Ȩ�ˡ�

�����������ͬѧҪ��ʱʹ��ͬһ�ſ���һ������νҪ�ջ�����ʹ�ÿ���ͬѧ�Ŀ���ʹ��Ȩ��ʵ���Ͼ����������������Ķ������ߣ�������ij��ͬѧ����ʹ��Ȩ��ֻ�����������������Ķ����ŵ������ϰ��ˡ�

�������л�ʱ��һ�����̴洢�ڴ��������Ĵ����е��м����ݽ������̵������ģ����Խ��̵� �л�ʵ���Ͼ��DZ���ֹ���н���������н��������ĵ��л����ڽ���δռ�ô�����ʱ������ ���������Ǵ洢�ڽ��̵�˽�ж�ջ�еġ�

����״̬

����

���̵���������״̬

��������ִ��ʱ�ļ���ԣ������˽��̿��ܾ��ж���״̬����ʵ�ϣ������еĽ��̿��ܾ����������ֻ���״̬��

����1������״̬��Ready����

���������ѻ�ó����������������Դ���ȴ����䴦������Դ��ֻҪ�����˴��������̾Ϳ�ִ�С��������̿��԰�������ȼ������ֶ��С����磬��һ����������ʱ��Ƭ������������״̬ʱ����������ȼ����У���������I/O������ɶ��������״̬ʱ����������ȼ����С�

����2������״̬(Running)��

��������ռ�ô�������Դ�����ڴ�״̬�Ľ��̵���ĿС�ڵ��ڴ���������Ŀ����û���������̿���ִ��ʱ(�����н��̶�������״̬)��ͨ�����Զ�ִ��ϵͳ�Ŀ��н��̡�

����3������״̬(Blocked)��

�������ڽ��̵ȴ�ij����������I/O���������ͬ����������������֮ǰ�޷�����ִ�С����¼�����ǰ��ʹ�Ѵ�����������ý��̣�Ҳ�޷����С�

��������

��������

����������ָ������ݵ����򼯺ϣ��䱾��û���κ����еĺ��壬��һ����̬�ĸ���������dz����ڴ������ϵ�һ��ִ�й��̣�����һ����̬�ĸ��

�������������Ϊһ���������ϳ��ڴ��ڣ�����������һ�������ڵġ����������õģ���������ʱ�ġ�

�������̸�����ʵ�������������������ܣ�

�����������ɽ��̿��ƿ顢����Ρ����ݶ����������;

�������̾��д����������̵Ĺ��ܣ�������û�С�

����ͬһ����ͬʱ���������ɸ����ݼ����ϣ������������ɸ���ͬ�Ľ��̣�Ҳ����˵ͬһ������Զ�Ӧ������̡�

�����ڴ�ͳ�IJ���ϵͳ�У����򲢲��ܶ������У���Ϊ��Դ����Ͷ������еĻ�����Ԫ���ǽ��̡�

�����߳�

����

���̺��̹߳�ϵ

����ͨ����һ�������п��԰������ɸ��̣߳����ǿ������ý�����ӵ�е���Դ���������̵߳IJ���ϵͳ�У�ͨ�����ǰѽ�����Ϊ������Դ�Ļ�����λ�������߳���Ϊ�������кͶ������ȵĻ�����λ�������̱߳Ƚ��̸�С�������ϲ�ӵ��ϵͳ��Դ���ʶ����ĵ����������Ŀ����ͻ�С�ö࣬�ܸ���Ч�����ϵͳ�ڶ������䲢��ִ�еij̶ȡ�

������һ���Ƴ���ͨ�ò���ϵͳ���������̣߳��Ա��һ�����ϵͳ�IJ����ԣ���������Ϊ�ִ�����ϵͳ��һ����Ҫָ�ꡣ

��������

�������̿����ǽ��̹�����������Ĺ��ܡ������ڴ���һ���½��̣���ֹһ������ɵĽ��̣�����ȥ��ֹһ�������ij�¼���ʹ���޷�������ȥ�Ľ��̣����ɸ�����������е�״̬ת����

������������

����1.���𴴽����̵��¼�

�����ڶ�����򻷾��У�ֻ�У���Ϊ�����̣�ʱ��������ϵͳ�����С���ˣ�Ϊʹ���������У��ͱ���Ϊ���������̡�����һ������ȥ������һ�����̵ĵ����¼����������������ࣺ

����1�� �û���¼

�����ڷ�ʱϵͳ�У��û����ն˼����¼���������ǺϷ��û���ϵͳ��Ϊ���ն˽���һ�����̣����������뵽���������С�

����2����ҵ����

������������ϵͳ�У�����ҵ���ȳ�����һ�����㷨���ȵ�ij��ҵʱ���㽫����ҵװ�뵽�ڴ棬Ϊ�������Ҫ����Դ��������Ϊ���������̣��ٲ��뵽���������С�

����3�� �ṩ����

�����������е��û��������ij�������ϵͳ��ר�Ŵ���һ���������ṩ�û�����Ҫ�ķ������磬�û�����Ҫ������ļ���ӡ������ϵͳ��Ϊ������һ����ӡ���̣���������������ʹ��ӡ��������û����̲���ִ�У����һ����ڼ����Ϊ��ɴ�ӡ���������ѵ�ʱ�䡣

����4�� Ӧ������

������������������У�������ϵͳ�ں�Ϊ������һ���½��̣�����һ���¼����ǻ���Ӧ�ý��̵�������������һ���µĽ��̣��Ա�ʹ�½����Բ��������з�ʽ����ض�����

����2.���̵Ĵ�������

����һ������ϵͳ������Ҫ�󴴽��½��̵��¼��󣬱���ý��̴���ԭ��Creat�������������贴��һ���½��̡�

����1�� ����հ�PCB��Ϊ�½���������Ψһ�����ֱ�ʶ��������PCB��������ȡһ���հ�PCB��

����2�� Ϊ�½��̷�����Դ��Ϊ�½��̵ij���������Լ��û�ջ�����Ҫ���ڴ�ռ䡣��Ȼ����ʱ����ϵͳ����֪���½�������Ҫ���ڴ��С��

����3�� ��ʼ�����̿��ƿ顣PCB�ij�ʼ��������

�����ٳ�ʼ����ʶ��Ϣ����ϵͳ����ı�ʶ���͸����̱�ʶ���������µ�PCB�С�

�����ڳ�ʼ��������״̬��Ϣ��ʹ���������ָ��������ڵ�ַ��ʹջָ��ָ��ջ����

�����۳�ʼ��������������Ϣ�������̵�״̬����Ϊ����״̬��ֹ����״̬���������ȼ���ͨ���ǽ�������Ϊ������ȼ��������û�����ʽ�ķ�ʽ��������ȼ�Ҫ��

����4�� ���½��̲���������У�������̾��������ܹ������½��̣��㽫�½��̲��뵽���������С�

����������ֹ

����1.���������ֹ���¼�

����1����������

�������κμ����ϵͳ�У���Ӧ����һ����ʾ�����Ѿ�������ɵ�ָʾ�����磬��������ϵͳ�У�ͨ���ڳ���������һ��Holdָ�����ֹ��ϵͳ���á����������е�Holdָ��ʱ��������һ���жϣ�ȥ֪ͨOS�������Ѿ���ɡ�

����2���쳣����

�����ڽ��������ڼ䣬���ڳ���ijЩ����͹��϶���ʹ������ֹ�������쳣�¼��ܶ࣬�������У�Խ����󣬱��������Ƿ�ָ���Ȩָ��������г�ʱ���ȴ���ʱ�������������I/O���ϡ�

����3������Ԥ

��������Ԥ����ָ�ڱ����������г������쳣�¼�������ָ����Ӧ�����������ֹ���С���Щ��Ԥ�У�����Ա�����ϵͳ��Ԥ�����������󣬸�������ֹ��

����2. ���̵���ֹ����

�������ϵͳ����������Ҫ����ֹ���̵�ij�¼���OS����ý�����ֹԭ�����������ȥ��ָֹ���Ľ��̡�

����1�����ݱ���ֹ���̵ı�ʶ������PCB�����м������ý��̵�PCB�����ж����ý���״̬��

����2��������ֹ����������ִ��״̬��Ӧ������ֹ�ý��̵�ִ�У����õ��ȱ�־Ϊ�档����ָʾ�ý��̱���ֹ��Ӧ���½��е��ȡ�

����3�����ý��̻���������̣���Ӧ���������������������ֹ���Է����dz�Ϊ���ɿصĽ��̡�

����4��������ֹ�Ľ�����ӵ�е�ȫ����Դ�����߹黹���丸���̣����߹黹��ϵͳ��

����5��������ֹ���̣�����PCB�������ڶ��У������������Ƴ����ȴ������������Ѽ���Ϣ��

������������

����1.������������ͻ��ѵ��¼�

����1������ϵͳ����

����������ִ�еĽ����������ϵͳ�ṩ����ʱ������ij��ԭ�򣬲���ϵͳ������������ý��̵�Ҫ��ʱ���ý���ֻ��ת��Ϊ����״̬���ȴ���һ��Ҫ��õ�����󣬽��̱����ѡ�

����2������ij�ֲ���

��������������ij�ֲ���������ý��̱����ڸò������֮����ܼ���ִ�У��������ʹ�ý����������Եȴ��ò�����ɣ��ò�����ɺ󣬽��ý��̻��ѡ�

����3�������������

���������໥�����Ľ��̣��������һ��������Ҫ�Ȼ����һ�������������ṩ�����ݲ��������Զ����ݽ��д���������Ҫ������������δ����ý���ֻ�У��ȴ����������ȵ����ݵ���󣬸ý��̱����ѡ�

����4�����¹�������

����ϵͳ��������һЩ����ij�ض����ܵ�ϵͳ���̣�ÿ�����ֽ����������󣬱���Լ����������Եȴ����������������񵽴�󣬸ý��̱����ѡ�

����2.������������

��������ִ�еĽ��̣�����������ij�¼��������޷�����ִ�У����ǽ��̱�ͨ����������ԭ��block���Լ��������ɼ������̵������ǽ���������һ��������Ϊ������block���̺����ڴ�ʱ�ý��̻�����ִ��״̬������Ӧ������ִֹͣ�У��ѽ��̿��ƿ��е�����״̬��ִ�и�Ϊ����������PCB�����������С����ϵͳ����������ͬ�¼��������Ķ���������У���Ӧ�������̲��뵽������ͬ�¼����������ȴ������С����ת���ȳ���������µ��ȣ����������������һ�������̣��������л����༴���������������̵Ĵ�����״̬����PCB�У����ٰ��½��̵�PCB�еĴ�����״̬����CPU������

����3. ���̻��ѹ���

�������������Ľ������ڴ����¼�����ʱ����I/O��ɻ��������ڴ��������Ѿ���������йؽ��̣����磬���겢�ͷ��˸�I/O�豸�Ľ��̣����û���ԭ��wakeup���������ȴ����¼��Ľ��̻��ѡ�����ԭ��ִ�еĹ����ǣ����Ȱѱ������Ľ��̴ӵȴ����¼��������������Ƴ�������PCB�е�����״̬��������Ϊ������Ȼ���ٽ���PCB���뵽���������С�

���������㷨

�������̵ĵ����㷨������

����FIFO��First Input First Output �Ƚ��ȳ�������

����RR��ʱ��Ƭ��ת�㷨����

������HPF��������ȼ��㷨��

�����׶�

�����������ɽ��̿��ƿ顢����Ρ����ݶ���������ɡ�һ�����̿��԰��������߳�(Thread)���߳̿��԰���Ӧ�ó���ͬʱ��������(����һ���߳�������д���ļ�����һ��������û��İ�����������ʱ������Ӧ�����಻����)���ڳ������к�ϵͳ����Ҫ���ľ���Ϊ�ó�����̽���һ��Ĭ���̣߳�Ȼ�������Ը�����Ҫ�������ӻ�ɾ����ص��̡߳��ǿɲ���ִ�еij�����һ�����ݼ����ϵ����й��̣���ϵͳ������Դ����͵��ȵ�һ��������λ��Ҳ�dzƻ��·���������������������ʣ���ԡ������ԡ����̿��Ի���Ϊ���С���������������״̬������һ���������໥ת��������--���У�����--����������--������

��������ΪӦ�ó��������ʵ������Ӧ�ó����һ�ζ�ִ̬�С����Ƹ�����ǿ��Լ򵥵�����Ϊ�����Dz���ϵͳ��ǰ���е�ִ�г�����ϵͳ��ǰ���е�ִ�г����������ϵͳ����������������ɸ��ֲ���������ij����û�������ִ�еĶ�����򣬵�ȻҲ�����û���֪�������Զ����еķǷ��������Ǿ��п����Dz������򣩡�
 

  • ��������
  • ���Ŵ���

���������� 44030502002758��