📄 kconfig
字号:
mainmenu "RTAI/x86 configuration"config MODULES bool default yconfig RTAI_VERSION string default "3.1-test3 (vesuvio)"menu "General"config RTAI_INSTALLDIR string "Installation directory" default "/usr/realtime" help This option defines the directory where the various RTAI files will be installed on your target system. This directory may be changed if you double-click in the area named "Value". The default installation directory is /usr/realtime.config RTAI_LINUXDIR string "Linux source tree" default "/usr/src/linux" help This variable contains the directory of your previously patched Linux kernel. As explained before, you can changed the value of the Linux source tree which is fixed by default to /usr/src/linux. menu "RTAI Documentation"config RTAI_DOX_DOC bool "Build RTAI Doxygen documentation (HTML)" default n help This option causes the Doxygen-based RTAI documentation to be built. This option is intended for people actually writing documentation and who want to update the pre-built manuals, regular users can just use the latter directly. You will need the Doxygen toolsuite for regenerating the documentation.config RTAI_LATEX_DOC bool "Build RTAI LaTeX documentation (PS/PDF)" default n help This option causes the LaTeX-based RTAI documentation to be built. This option is intended for people actually writing documentation and who want to update the pre-built manuals, regular users can just use the latter directly.config RTAI_DOC_LATEX_NONSTOP bool "Enable LaTeX verbose output" depends on RTAI_LATEX_DOC default n help By default, all documentation generated with LaTeX uses the silent (batchmode) of LaTeX. If this option is enabled, the verbose (nonstopmode) of LaTeX will be used instead. This option is mainly intended for people writing RTAI documentation.config RTAI_DBX_DOC bool "Build DocBook XML documentation (HTML/PDF)" default n help This option causes the DocBook XML based RTAI documentation to be built. This option is intended for people actually writing documentation and who want to update the pre-built manuals, regular users can just use the latter directly.config RTAI_DBX_NET bool "Let the DocBook XML tools use network" depends on RTAI_DBX_DOC default n help Let the DocBook tools use internet to fetch the DTD and XSL stylesheets. If disabled, the documentation generation will fail if the necessary DTD(s) and XSL stylesheets can not be found on the local computer.config RTAI_DBX_ROOT string "Docbook XML root" depends on RTAI_DBX_DOC default "" help Specify the DocBook XML root (that is, the directory where docbook.dtd should be taken). Leave blank to let configure try the "well-known" locations.config RTAI_DBX_XSL_ROOT string "Docbook XML XSL stylesheet root" depends on RTAI_DBX_DOC default "" help Specify the DocBook XML XSL root. Leave blank to let configure try the "well-known" locations.endmenuconfig RTAI_TESTSUITE bool "Build RTAI testsuite" default y help Once you are done with the building process of RTAI, it may be safe to run the testsuite to make sure your RTAI system is functional.config RTAI_COMPAT bool "Enable source compatibility mode" default y help This option allows to preserve the compatibility between applications issued from the 24.1.x version of RTAI and the 3.x branch. This way, no adaptation in the header files is required.config RTAI_EXTENDED bool "Enable extended configuration mode" default n help Allows some configuration parameters in the Hardware Abstraction Layer or the schedulers.config RTAI_KMOD_DEBUG bool "Enable debug symbols in modules" depends on RTAI_EXTENDED default n help This options adds the -g flag when compiling kernel modules.config RTAI_USER_DEBUG bool "Enable debug symbols in user-space programs" depends on RTAI_EXTENDED default n help This options adds the -g flag when compiling user-space programs. LXRT inlining is also implicitely disabled.config RTAI_MAINTAINER bool "Enable maintainer mode" depends on RTAI_EXTENDED default n help This option will activate the '--enable-maintainer-mode' option in the configure scripts. For more information, refer to the autoconf documentation: http://sources.redhat.com/autobook/autobook/autobook_26.html#SEC26config RTAI_MAINTAINER_AUTOTOOLS bool "Enable Autoconf/Automake maintainer mode" depends on RTAI_MAINTAINER default nchoice optional prompt "Private maintainer profiles" depends on RTAI_MAINTAINERconfig RTAI_MAINTAINER_NONE bool "Use standard settings"config RTAI_MAINTAINER_PMA bool "Use settings from mantegazza()aero!polimi!it"config RTAI_MAINTAINER_PGM bool "Use settings for rpm()xenomai!org"endchoicechoice prompt "Inlining mode of user-space services" depends on RTAI_EXTENDEDconfig RTAI_LXRT_EXTERN_INLINE bool "Conditional inlining" help i.e. extern inline. Depends on compiler's optimization switch.config RTAI_LXRT_STATIC_INLINE bool "Eager inlining" help i.e. static inline. Always inline regardless of compiler's optimization switch.config RTAI_LXRT_NO_INLINE bool "No inlining" help Never inline user-space services. This implies linking client programs against the appropriate support library (e.g. liblxrt.a for LXRT services).endchoiceendmenumenu "Machine (x86)"config RTAI_HAL_PREEMPT bool "Preemptible interrupt dispatching" depends on RTAI_EXTENDED default yconfig RTAI_FPU_SUPPORT bool "Enable FPU support" default y help The FPU executes instructions from the processor's normal instruction stream. It can handle the types of high-precision floating-point processing operations commonly found in scientific, engineering, and business applications. Enabling FPU support on a platform providing this hardware component may greatly improve performances. You can obtain more information about Float-Point Unit on i386 platform on internet at the following URL: http://www.intel.com/design/intarch/techinfo/Pentium/fpu.htmconfig RTAI_CPUS string "Number of CPUs (SMP-only)" default 2 help RTAI has native support for Symmetrical Multi-Processing machines. If it is your case, you may want to enter here the number of CPUs of your motherboard. PAY ATTENTION: the default value is 2.endmenumenu "Core system"menu "Native RTAI schedulers"config RTAI_SCHED_UP bool "Scheduler for uniprocessor machine (kernel tasks only)" depends on RTAI_SCHED_SMP=n && RTAI_SCHED_MUP=n default y help This option allows you to select the UP realtime scheduler to be interfaced to the RTAI module. This type of scheduler don't have to be used on a MP machine.config RTAI_SCHED_SMP bool "Scheduler for SMP machine (kernel tasks only)" default n help This options corresponds to the Multi-Processing realtime scheduler. It can use either the 8254 or the local APIC timer. Be warned that the APIC based scheduler cannot be used for UP, unless you have the local APIC enabled, i.e. an SMP machine with just one CPU mounted on the motherboard. It is a fully symmetric scheduler, where at task init all real time tasks default to using any available cpu.config RTAI_SCHED_MUP bool "Multi-UP scheduler for SMP machine (kernel tasks only)" default n help Multi-Uniprocessor is a pseudo-SMP implementation where several virtual processors are going to be served by a single physical CPU. The system is therefore able to support several scheduling queues or pseudo-timers. RTAI offers an implementation of an MultiUniProcessor (MUP) realtime scheduler to be interfaced to the RTAI module. It is based on the local APIC timers. It can be profitably used on MP machines with just one CPU mounted on the motherboard. The advantage of using the MUP scheduler comes mainly from the possibility of using mixed timers simultaneously, i.e. periodic and oneshot, where periodic timers can be based on different periods, and of possibly forcing critical tasks on the CPU cache All the fuctions of UP and SMP schedulers are available in the MUP scheduler, as well as MUP specific functions can be used under UP-SMP.config RTAI_SCHED_LXRT bool "LXRT scheduler (kernel and user-space tasks)" default y help LXRT is a user-space interface providing a symmetric API that may be used by both real-time RTAI tasks and linux processes. The full range of Linux system calls is then available and transitions between "soft" real-time and "hard" real-time can be performed. As far as scheduling is concerned, LXRT requires the use of SCHED_FIFO scheduling policy with statically assigned process priorities to achieve "soft" real-time performance whilst in user-space. Since LXRT provides the faculty to switch an application process to real-time, a real-time agent task is created and executes the real-time services on behalf of the LXRT process. The NEWLXRT scheduler unifies U/MP and kernel/user space by scheduling Linux tasks/kernel threads natively, along with RTAI kernel tasks, all in one. In fact, NEWLXRT brings something new: a linux hard real-time application interface that is totally based on the scheduling of Linux tasks and kernel threads only. The NEWLXRT implementation doesn't need any RTAI proper task to be supported.menu "Scheduler options" depends on RTAI_EXTENDEDconfig RTAI_SCHED_ISR_LOCK bool "Disable rescheduling from ISRs" default nconfig RTAI_SCHED_8254_LATENCY string "8254 tuning latency (ns)" default 4700config RTAI_SCHED_APIC_LATENCY string "APIC tuning latency (ns)" default 3944config RTAI_SCHED_LXRT_NUMSLOTS string "Number of LXRT slots" default 100endmenumenu "IPC support"config RTAI_BITS tristate "Event flags" default m help Event flags are used to synchronize a task with the occurrence of multiple events. This synchronization may be disjunctive when any of the events have occurred or conjunctive when all events have occured. The former corresponds to a logical OR whereas the latter is associated to a logical AND. Their use is similar to semaphores' except that signal/waits are not related to just a simple counter but depends on the combination of set of bits. The module will be called rtai_bits.o.config RTAI_FIFOS tristate "Fifo" default m help Originally fifos were used to allow communication between kernel-space modules and user-space application. Even if fifos are strictly no more required in RTAI, because of the availability of LXRT, fifos are kept for both compatibility reasons and because they are very useful tools to be used to communicate with interrupt handlers, since they do not require any scheduler to be installed. The module will be called rtai_fifos.o.config RTAI_NETRPC tristate "Net RPC" depends on RTAI_MSG default y if RTAI_MSG=y default m if RTAI_MSG=m help RPC means Remote Procedure Call. The NetRPC implementation corresponds to a synchronous intertask message passing which is the old concept and the basis of microkernels, either distributed or not. Using NetRPC makes from RTAI a distributed system, both for kernel and user space applications. NetRPC depends on the messaging support. The NetRPC module will be called rtai_netrpc.o.config RTAI_NETRPC_RTNET bool "Emulate RTNet" depends on RTAI_NETRPC default yconfig RTAI_SHM tristate "Shared memory" default m help This RTAI specific module allows sharing memory inter-intra real-time tasks and Linux processes. In fact it can be an alternative to the SYSTEM V shared memory. It may also be noticed that the services are symmetrical, i.e. the same calls can be used both in real-time tasks (within the kernel) and Linux processes. The module will be called rtai_shm.o.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -