FMM (Finite Message Machines) sú programové moduly poskytujúce
flexibilný a dobre štrukturovaný návrh programového vybavenia. Každý stroj
(programový modul) je definovaný ako špecifická funkčná jednotka. Rozhranie
medzi FMM a ostatným software je definované súborom prijímaných a vysielaných
správ.
Chovanie každého stroja spracovania správ je úplne definované
postupnosťou správ, ktoré stroj prijíma a správ, ktoré stroj vysiela ako odpoveď.
Koncepcia FMM dovoľuje distribuovať softvérové riadiace funkcie medzi veľký počet
CE (riadiacich jednotiek). Táto distribúcia je definovaná počas výstavby
programového súboru pre konkrétnu ústredňu - znamená to vytvorenie súboru
distribučných tabuliek, ktoré mapujú usporiadanie softvérových častí v ústredni
Koncepcia FMM je vhodná na implementovanie konečného stavového
stroja (konečného stavového automatu). To znamená, že FMM môže byť v určitom počte
vopred definovaných stavov. Existujú dva typy FMM, monoprocesné a multiprocesné.
Monoprocesné FMM pozostávajú z jediného procesu, ktorý je zložený z
definície procesu (process definition) a procesných dát (process data). Pri
multiprocesných FMM je možná existencia viacerých procesov v aplikačnej časti. Pamäť
pre procesné dáta je prideľovaná dynamicky a podľa množstva aplikačných procesov.
Keď uvažujeme o monoprocesnom FMM, tento ak bude v počiatočnom
stave, môže prijímať určitý počet správ. V závislosti od prijatej správy bude
FMM vykonávať určité úlohy, vysielať výstupné správy a vráti sa do svojho počiatočného
stavu. Takže tento monoprocesný FMM má len jeden čakací stav. Je zrejmé, že keď je
nejaký FMM v čakacom stave, procesor môže spracovávať nový (druhý) proces uložený
v tom istom alebo inom FMM. FMM teda môže byť vo viacerých stavoch. V každom
stave môže FMM prijímať určitý počet správ. Prijatie platnej správy spôsobí
akciu, ktorej výsledok, môže byť vyslanie ďalšej správy. Stav sa môže meniť.
Jednou z mnohých funkcií, ktoré FMM vykonáva môže byť preklad prefixu - predčíslia
odvoleného účastníkom na parameter, ktorý identifikuje, či pôjde o volanie miestne
alebo o odchodzie - vonkajšie.
Prenos správ medzi FMM je riadený programom obsluhy správ, ktorý
je časťou operačného systému. Programy obsluhy správ obsahujú všetky riadiace
jednotky distribuovaného riadiaceho systému.
Program obsluhy správ vyhľadáva miesto určenia správy v jeho
smerovacej tabuľke. Ak tabuľka ukazuje na inú riadiacu jednotku, správa je odoslaná
do programu zostavovania ciest, ktorý smeruje správu k cieľovej riadiacej jednotke, kde
jej vlastný program obsluhy správ dokončí doručenie správy do správneho FMM.