Blokowanie ilości procesów aplikacji

Problemy dotyczące programowania.

Moderatorzy: Moderatorzy, Administratorzy

nixau
Użytkownik
Posty: 28
Rejestracja: 2006-08-21, 17:33

Blokowanie ilości procesów aplikacji

Post autor: nixau »

Witam,
mam pytanie może ktoś z forumowiczów mnie nakieruje na jakąś dokumentację, kawałek kodu w C/C++ . Otóż mam swój program napisany w języku C, którą uruchamiam z jakimiś swoimi opcjami. Chciałbym zrobić tak, aby aplikacja tuż przed uruchomieniem sprawdziła sobie ile jest już uruchomionych procesów tej samej aplikacji.

Widzę to tak, że jak się uruchomi aplikacja to dodaje informację, że się uruchomiła (np. informacja dodawana gdzieś do komórki pamięci z możliwością odczytania zawartości przez kolejne procesy tej samej aplikacji, albo do jakiegoś wirtualnego urządzenia, tak aby nikt z administratorów/użytkowników nie mógł tego w łatwy sposób zmodyfikować; czyli doda liczbę 1). Jak uruchomię drugi raz tę samą aplikację, odczytuje sobie ona ten kawałek pamięci lub wpis z jakiegoś stworzonego urządzenia i patrzy czy może się jeszcze raz uruchomić - jeżeli może to dodaje +1 to tej pamięci /urządzenia itd. Oczywiście w aplikacji będzie zdefiniowane globalnie ile procesów można jeszcze uruchomić tej samej aplikacji.

Być może źle do tego się zabieram, dlatego byłbym wdzięczny za jakąś pomoc / pomysł w tym temacie. Myślałem coś o semaforach...
Pajaczek
Użytkownik
Posty: 1439
Rejestracja: 2006-08-03, 13:16
Lokalizacja: Winny Gród

Re: Blokowanie ilości procesów aplikacji

Post autor: Pajaczek »

nixau pisze:Myślałem coś o semaforach...
Dobrze myślałeś, to jeden ze sposobów.
Innym może być odpalanie potomków tylko przez jeden z procesów (rodzica - potomkowie nie mogą uruchamiać kolejnych potomków), a tutaj nie ma problemu w trzymaniu licznika uruchomionych procesów.
Jeszcze innym... wątki zamiast procesów.
Awatar użytkownika
dienet
Moderator
Posty: 2105
Rejestracja: 2007-07-24, 18:58
Lokalizacja: Racibórz/Rybnik

Re: Blokowanie ilości procesów aplikacji

Post autor: dienet »

A możesz nixau podać dlaczego taki sposób zaprojektowania?
Pozdr0
dienet
[img]http://i164.photobucket.com/albums/u19/slawek15/kotekeo0lq3.jpg[/img]
nixau
Użytkownik
Posty: 28
Rejestracja: 2006-08-21, 17:33

Re: Blokowanie ilości procesów aplikacji

Post autor: nixau »

Aplikacja wysyła zadania do wykonania na urządzeniu - urządzenie niestety w pewnym momencie wariuje jak otrzyma większą ilość zadań.

Dokopałem się do dodatkowych informacji i w sumie na socketach też można to zrobić w ciekawy sposób :)
Pajaczek
Użytkownik
Posty: 1439
Rejestracja: 2006-08-03, 13:16
Lokalizacja: Winny Gród

Re: Blokowanie ilości procesów aplikacji

Post autor: Pajaczek »

Czyli u Ciebie każde wysłane zadanie to oddzielny wątek w aplikacji?? :shock:
A co jest po stronie urządzenia, też każde zadanie jest obsługiwane przez oddzielny wątek/proces? Jest może limit zadań obsługiwanych? Jakieś limity pamięci, zasobów?
ODPOWIEDZ