|
|
This document is available in: English Castellano ChineseGB Deutsch Francais Nederlands Russian Turkce |
by Ismael Ripoll <iripoll(at)disca.upv.es> Ŀ¼: |
ʵʱLinux (RT-Linux)ժҪ:
��ƪ���½�����ʵʱLinux��RT���Ļ�������Լ�ʹ��RT-Linux��Ӳʵʱ��
|
��һ��ʵʱϵͳ������һ����Ϣϵͳ��������ȷ�Բ������������㷨��������� �������ڲ�����Щ������ļ�ʱ�ԡ���
��������ȷ���������Dz����ģ���������������һ���ض���ʱ�����ڵ����� ��Ҫע�⣺������Ķ����У�һ��ʵʱϵͳ�����������Ǻ���Ȼ���뵽����������Ҫ�졣 �ȷ�˵��һ����ֻ����ϵͳ�����������ٶȺ������������Ǿ����С����㡱 ��ʱ���������Ŀ����������������Գ����������ܲ���һ��ʵʱϵͳ�� ��������Σ��������ǵĶ��壬������һ��ʵʱϵͳ��
ע�����Ƕ������һ����ʵʱϵͳ��������һ��������ϵͳ���� һ������ϵͳͨ���dz��죬���ҿ��Ը��˺ܡ���ʵ����ӡ�� ���͵أ����е�ģ�����ͽ���ʽ��Ϸ����Ҫ���û�һ��������ʱ�仭�棬 ���ң��ڵ�λʱ���������ɵ�ͼ��Խ��Խ�á�
��������������ϸ�ؿ���һ�¡�˲ʱ���ơ��ĸ�� ����һ������ͨ������һ�������������Ӧ����ͬ�ĸ��أ� ����������ʹ��һ��PID��Proportional- Integral-Derivative�����ơ� �����ǵĹ۵�������PID���ƾ���һ��������������һ����� �����������������������ʣ������ҷ���һ����Ӧ��������Ŀ����źŵ�ֵ�� �������ֵ��������ʩ����Ӧ�ĵ�ѹ��PID�㷨��Ʊ�������ۣ�˳����һ�����Ƕ��ģ� �������ʱ���ǿ��Ժ��Բ��Ƶģ�Ҳ����˵���Ӷ�ȡ��������ʵ����ǿ�ʼִ����һ��ʱ��̡ܶ� ��������£�ϵͳ������һ��С���ӳ١� �������͵Ŀ��Ƶ���һ�����Ծ��������������Ե�ִ�С� ����֮��PID�㷨���밴��һ���Ĺ���ִ�С� ����������ε���PID���������ʱ��̫���� ��ô������ܻ�ﵽһ�������������������ʡ��ܵ������� PID�㷨���Ա�����һ�����������������Ե�ִ�У�Pi���� ������ʼִ��ֱ��������������ʱ����Բ��ܴ������PIDʱָ�������ʱ�䣨Di���� ���ң����ݴ��������ٶȣ�PID����Ҳ��Ҫһ���ض���ʱ��(Ci) . ��
���ϵͳ�ǵ�����ģ���ô��һ��ʵʱϵͳ�������κ����⣺ ������������������Ҫ��ʱ������������߲��ܡ� ��������������㹻�죬��ô����ֻ��Ҫ��һ����һЩ��CPU��
��ϵͳ���ɶ��������ɵģ�������ҪΪ���Ƿ���һ�����������������Ĵ�������ʱ�� ��ʵʱ������ͳ����ˡ����谭������ʹ��һ������ķ�ʱϵͳ���ȷ�˵Linux�� ��Ȼ����û�б�Ҫȥ����Щ���硰��Ҫ��Windows�ϱ�д��Ҫʵʱ�Եij���֮������ˡ� һ����һ��Ľ����ǣ���Ҫ������ƽ̨��д�κ����͵ij���
���������е�ʵʱϵͳ������ͬ�ģ� ����һ��������ABSɲ��ϵͳ������������ȼ��ע��ϵͳ�Ϳ���һ��MPEG�ļ��Ľ�ѹ���Ӿ�Ч���Dz�ͬ�ġ� �ڵ�һ������£�ִ��ʱ���һ��С���ӳپ��п���Σ����ʻԱ��������ȫ���ᵼ�´�����������ʧ�� ���ڶ������ֻ������ϵͳ�������˻���ͼ����ܻ�ͣס�����ܶ�ʧһЩ֡���� ��һ�����͵�ϵͳ������Ӳʵʱϵͳ���ڶ���Ϊ��ʵʱϵͳ�� �ڴ����ǽ���������Ӳʵʱϵͳ��
���һ��ӲʵʱϵͳҪ���������Σ����ȣ� Ҫִ�е������˲ʱ���Ʊ��뾭���������������ǵ������� �ڶ�����д���룬ÿһ��ʵʱ����Ҫ���������͵��Ȳ��ԣ� �Ա�֤��ϵͳ���й�����ÿ�������ܳ�������������ʱ�����ֵ�� ���Ȳ�����Ӧ����һϵ�в��Ե�����������ɣ� �����ͨ���ڶ��εIJ��ԣ����п��ܱ�֤û��������ܻ����г����������ޡ� ������Բ���ͨ���Ļ�����ô��ƾͱ������´�ͷ��ʼ�� ѡ��һ����һ���CPU������ʹ���������㷨��ʵ����Щ����
�ܽ�����������������ʱ���ʶ��Pi��Di��Ci��ϵͳ��Ŀ���ǣ� ��֤���е����������е�ִ�й����ж�������ϵͳ������ʱ�����ֵ�� Ϊ�˱�֤����ʱ�䣬ϵͳ��������Ԥ���ġ� ˵һ��ϵͳ��һ��ʵʱϵͳ��˵һ��ϵͳ�ǿ�Ԥ���ʵ������һ���ġ�
ϵͳ��Ӧ�������ȷ���dz���Ա�����Σ���˲ʱ����ȷ�������ڲ���ϵͳ��OS����
����ϵͳ������֧�ֺ���֯���������ִ�У������ж�Ҳ������ְ�� ����ϵͳ�����ṩ��
����ͨ�IJ���ϵͳ��ͬ��ʵʱ����ϵͳ��Ŀ�������̶ȵؼ��ٸ����ԡ� ���Dz���Ҫһ�������ܶ������ϵͳ������Ҫ���������ڹ涨��ʱ���ڿ�Ԥ���ִ�����ǵ�����
��һ��ʵʱϵͳ�ϣ�һ�������������Ҫ10����λʱ������� ���������Ļ����ĸı䣬��������������12�ĵ�λʱ���ǿ�ȡ�ġ� ����������ͨ�IJ���ϵͳ�ϣ�һ��ƽ���������Ҫ3����λʱ��ij�����ִ��20����λʱ�䡣
�������һ��ʵʱϵͳ����ͨ�IJ���ϵͳ�����������Dz��ظе���֡� ��ʱ��Ϊ�˻�ÿ�Ԥ�����Ϊ��������Ҫ��ֹʹ��Cache�� ������һЩ�����ϵĶ�ʧ����һ��ʵʱϵͳ��˵�� ������Cache���ṩ�Ĺܵ��ߵ�Ԫ��Ԥ����ת�㷨�����ĵ��ˡ�
POSIX�ǿ���ֲ����ϵͳ�ӿڣ�Portable Operating System Interface��������ĸ��д������ΪʲôOS�����д����û��һ��X�أ����� ��һ�������������Դ���뼶����������ֲ�ԡ� ���仰˵��Ϊһ��POSIX���ݵIJ���ϵͳ��д�ij��� Ӧ�ÿ������κ�������POSIX����ϵͳ����ʹ��������һ�����̣��ϱ���ִ�С� POSIX�������˲���ϵͳӦ��ΪӦ�ó����ṩ�Ľӿڣ�ϵͳ���ü��� POSIX����IEEE (Institute of Electrical and Electronic Engineering) �����ģ�����ANSI (American National Standards Institute)�� ISO (International Standards Organisation)������ ����ȻPOSIX�ǻ���UNIX�ģ�������IJ���ϵͳ������Windows NT���������ڿ������ǵı���汾��POSIX���ݡ�
POSIX�Ķ��屻��Ϊ���������飺������������̡�������˾�� �������źͼ�������ʦ��ÿһ����������ڲ���ϵͳ��ijһ���档 ���磺POSIX.4���ǹ���ʵʱ��������ݡ�
POSIX.4����չ��1993�����Ϊ1003.1b������һ������ϵͳ��ʵʱ�����ʹ�á� �����ԣ���Щ��չ�ֶ��ǹ���ʱ������ͽ������ȼ��� Ҳ��һЩϵͳ������Э�����н��̼�ͨ�š�
POSIX��չ�����������ǿ����ϵͳ����Դ�Ĺ�������������
Linux2.0Ϊʵʱ��ʵ�����������POSIX��չ��ϵͳ���ã� ��Linux��һ������������ǽ����Ժ�������ۡ� ����2.2�汾������100%��POSIX 1003.1b���ݡ�
RT-Linux������ī�����ҵ���Ƽ�ѧԺ�����ϵ�� Victor Yodaiken��Michael Barabanov���������ġ� ����Michael�ύ����ɼ������ѧ˶ʿ���ĵ�һ���֡� ������õİ汾��0.6������ֻ����INTEL��ϵ�ṹ�ļ�����ϡ�
RT-Linux����һ����ȫ��ͬ�ķ�ʽ�����һ����ġ� �б�����Linuxϵͳ���ں���ʹ����п�Ԥ���ԣ���ֱ���ڴ�������i386�� �Ͻ�����һ������һ����������С�ĺ��ģ���Linux kernel��������� Linux�ں�����һ���������У���������ʵʱ��������������� ��ôLinux�������������CPU������ȷ��˵��Linux�Ǻ�̨������ ֻ��û������ʵʱ����ִ�е�ʱ�����Ż����С�
�Ҳ���������ڿ��������ˣ���������Ϊ���������ϵͳ��һ�����壬 ��ô����������
�����˾�����ǣ���ʵ�ϣ������Ϊһ��ģ�����Ļ��� ����Զ�̬��װ����Ƴ���������
����������ϵͳ���ƣ���Ϊͬ����ʽ����Ϊ��ʵ���ٽ����� Linux�ں˴���ͨ����ر��жϡ������Linux���ж��ڼ�����һ��ʱ���жϣ� ���ͻ��������⽫���¶�ʧ˲ʱ��ȷ�ȡ�RT-Linuxʹ����һ���dz����ŵĽ�������� ���ж�CLI��STI��IRET�����ж�״̬�Ļ����ã��ĵ��ö��� S_CLI��S_STI��S_IRET�������ģ�⣬������Linux����Զ���ܽ�ֹ�жϵ��á�
RT-Linuxȱʡ�ĵ��Ȳ�������ռʽ���̶����ȼ��ĵ��ȣ� ����Linux�������˽ϵ͵����ȼ��� ���ʵʱ�������������е�CPUʱ�䣬��ôLinux�����ܻ���κ�CPUʱ�䣬 ������������ֹͣ��һ����
ʹ��RT-Linux���Dz�������һ��ʵʱϵͳ��������һ������IJ���ϵͳ�� �ڲ����Ϳ���һ������ϵͳ��ͬʱ���ǻ������������ˡ�
��һ���а���ļ������������ã� http://luz.cs.nt.edu/~rtlinux.
Ϊ�˰�һ��Linuxϵͳ�ij�RT-Linux�� ���DZ����RT-Linux�ṩ���ں˲���Ӧ�õ��ں�Դ�����ϲ����±����ںˡ� �����DZ���ķ��������Ǽ���rtlinux-0.6-2.0.33.tgz��Ŀ¼/usr/src�£� �������ѱ���ѹ����/usr/src/rtlinux-0.6�� ���ǻ��ٶ����е��ں�ѡ��Ѿ����ã�make config�����ˡ�������
# cd /usr/src/linux # patch -p1 <../rtlinux-0.6-2.0.33/kernel_path # make dep; make clean; make zlilo; make modules; make modules_install # reboot
���ں˸�һ����ͨ���ں˿�����ûʲô��� �����Ѿ�����ת��Ϊһ��ʵʱϵͳ�ˡ� ��/usr/src/rtlinu-0.6-2.0.33/testing���и��ָ�������ʾ����
���˷��а���testingĿ¼�е����ӣ��㻹��������Oleg SubbotinΪ����������һ��ʾ���������������Ǵ��������ִ�м�¼�� ��һʾ����һ���ļ���һ�����˵ĵ���������������ִ��������ȣ� ���ܹ�������������ߵ���Ϣ����һ��Ϣ���ռ����洢��һ���ļ��У� �Ժ����ͼ�λ�����ʾ��������ǾͿ��Կ���������������ʲô˳��ִ�еģ� ���и�����Ȩ�������������ռ�����ȼ�������ġ�Linux����û�б��ֳ�����
ÿһ����������һ��ˮƽ���ϡ������α�ʾÿһ������ռ��CPU��ʱ�� ����Ϊ����ʹ��һ������������ϵͳ��������ͬһʱ��ֻ����һ��ʵ�������У��� ����������ÿһ��������������ִ��ʱ�������ǵ�������ͬ�� ��һ������һ��ʱ������ǣ���������������һ������������ִ����ϡ� ���沿�ֵ�������нϸߵ����ȼ��������ܴ�����������600λ�ã���ռ��������
�����Ѿ�����һ���ദ������RT-Linux�汾��Ϊ�˾����ܵر���ϵͳ�Ŀ�Ԥ���ԣ� RT-Linux�����ṩ�ķ���������Ƶĺ��٣� ��Ϊû�б�Ҫ������Щ��ʵʱ��Ҫ���ϸ�Ĺ��ܡ�
������ǰ��ʼ��һ��RT-Linux�ֲ�-�̵̳ı�д��������������д��1998�꣺����ע��
��RT-Linux������ǰ���������Ҫʵʱϵͳ�Ĺ���ʦ����ʹ��MS-DOS���ҽ���������Ҫ�������� �������Էdz����˵ļ�Ǯ����һ��������ʵʱ����ϵͳ�� ���ڿ�����������һ��ȫ���ܵIJ���ϵͳ�� ���ǿ������뽫Ҫ���������ϵ���ͬ��ϵͳ�Ͽ���ʵʱ�ij��� ʵ���ϣ��������������˵�ͬʱ�����м���ʵʱ����Ҳû�����⡣
������һϵ���Ժ�������л��о�����ʵʱӦ�ó�������ӣ� �Լ���α�д�����Լ���ʵʱ����
��ҳ��LinuxFocus�༭��ά��
© Ismael Ripoll, FDL http://www.LinuxFocus.org |
������Ϣ:
|
2005-03-26, generated by lfparser version 2.51