/ / Máte nejaký návrh na napísanie programu C v miestnosti Linux pomocou Pipes a Daemon Process? [zatvorené] - c ++, c, linux, pipe

Akýkoľvek návrh o napísaní programu rozhovorov C v systéme Linux pomocou procesov Pipes a Daemon? [uzavretý] - c ++, c, linux, potrubie

Požiadavka je vytvoriť program C / C ++, ktorý je chatovou miestnosťou.

1, Klientský aj serverový program nepotrebujú GUI, použite iba príkazový riadok. Potrebujú iba bežať na rovnakom stroji, ktorý je spojený s potrubím.

2, použite frontu FIFO v procese Daemon a používatelia môžu chatovať pomocou procesu Daemon súčasne.

3, proces Daemon obnovuje počet online používateľov a tlačí prihlasovacie / odhlasovacie správy klientom.

4, Klient vyžaduje pri spustení prezývku a server odmietne, keď prezývka zostane v konflikte.

.

Je potrebné prispôsobiť procesy, démonove procesy, rúry, signály, I / O, nite, aby tento program vytvoril čo najviac.

Teraz nie som oboznámený s procesmi v systéme Linux. Môžete mi ukázať príklad operačných procesov v diskusnej miestnosti alebo jednoduchý rámec, ktorý dokážem napísať funkcie bez obáv z procesov.

A akékoľvek ďalšie návrhy týkajúce sa napísania tohto programu sú vítané!

odpovede:

1 pre odpoveď č. 1

Znie to, akoby ste boli požiadaní o obidva návrhy a napíš tento program.

Vaša otázka znie skôr, ako by ste ju mali maťarchitektúra klient-server (ktorá má zmysel) a hovorí cez potrubie (rovnako môžete urobiť to isté s päticou, takže by ste mohli chcieť túto vrstvu ľahko vymeniť neskôr)

Potrebujete teda jeden program, ktorý sa spustí po spustení na pozadí (démon), ktorý spustí službu počúvania v potrubí pre chatové správy a tiež monitoruje /var/run/utmp aby ste videli, kto je prihlásený do zariadenia.

Démona je možné napísať ako proces s jedným vláknom a pomocou select hovory na monitorovanie klienta a internetu; utmp súbor, ale pretože máte požiadavku na vlákna, mohli by ste, aby každá z týchto dvoch funkcií bola vláknami, robí váš program zložitejším a zložitejším na ladenie, ale na koho sa hádam.

Potrebujete ďalší program, do ktorého môže používateľ spustiťpripojte sa k démonovi pomocou rúry a aby ste do démona mohli písať správy alebo tlačiť správy. Znova by to bolo možné urobiť jednovláknovým, ale môžete radšej rozdeliť vysielanie a prijať namiesto toho vlákna.


0 pre odpoveď č. 2

A čo jednoducho používať rozprávanie?