Emu onderzoek.

En nou kunnen we gaan lezen en vergelijken!

maar wel oppassen wat we wegzetten.

Voorbeeldje uit de evocamd:

case "$1" in
start)
echo "[SCRIPT] $1: $CAMNAME"
remove_tmp
/var/bin/evocamd_2.04 &
;;
stop)
echo "[SCRIPT] $1: $CAMNAME"
killall -9 evocamd_2.04
remove_tmp
;;
*)
$0 stop
exit 1


Dit is dus typisch Linux, dus tijd voor de linuxkenners die eens uit gaan leggen waarvoor in een bepaalde regel "killall -9' staat, wat heeft dit voor betekenis?

Ik weet dat niet maar wil dit wel gaan begrijpen.



Pfoeh dit gaat weer heel wat tijd kosten, om nou te zoeken waar het verschil nou zit tussen evo en mgcamd die er voor zorgt dat de ene wel een autoupdate heeft voor *** en de andere niet?
 
Nou lees ik volgens mij compleet het verkeerde bestand denk ik, want hier staat volgens mij totaal niks bruikbaars in?

wat ik nu wegzet is de "cam.sh" Wat het is weet ik niet maar het is met editpad light ookzo te openen...

Dit bestand staat trouwens in de var script.

maar wat je volgens mij hebben moet staat in de "var/bin"

En dan krijg je met beide programma's zowel light als pro het volgende:

ELF
?
Maar dit kan ik niet lezen/begrijpen.

En ik denk dat we het in die map moeten gaan zoeken in die bestanden. ;)
 
Oh daar heb ik de Lite versie van die is gratis.:)

Maar als het om .exe gaat en je krijgt de hexadecimale niet goed, dan zou het ook nog eens kunnen zijn dat het packed .exe files zijn, althans als het windows executables zijn.
Ik ga er van uit van niet, maar het zou me niet verbazen als er voor Linux ook packers zijn.

Een .bin file? Ik denk dat je dan echt een binairie editor zult moeten hebben of hex editor en dan gaan reverse engineeren.
 
Die light versie heb ik hier ook, van jou denk ik, maar ik draai hier enkel windows...

Ik heb laatst al eens aan iemand gevraagd of hij het betreffende bestandje eens wil bekijken in linux, maar deze heeft nog geen reply gegeven, dus ik kan in deze ook nog niet verder....

Op dat antwoord zit ik nog ff te wachten...
 
cam.sh is et script om de emu te laten draaien , sorry nr 10 dat ik niet gereageerd hebt maar lees et nu pas dat ik een pm moest sturen .

en ffe een vraag freggel welke file gaat et eigenlijk (naam)

saat
 
Ik weet nu even niet precies wat jij in jou vraag bedoelt?

Er zit gewoon een verschil tussen diverse emu's waar bij de ene wel een manier zit die naar de keyupdate kijkt van bijvoorbeeld TPS, want je leest overal dat jezelf dagelijks de AES moet vernieuwen bij TPS, maar met evocamd 2.04 is dit niet nodig, bij mgcamd wel ( hoewel deze de laatste dagen ook niet nodig is)

Nou wilde ik dus zoeken naar hoe die emu's in elkaar zitten, maar dan moet ik wel weten waarmee zoiets geschreven wordt, of is dit echt iets voor computerprogrammeurs?
 
freggel1 zei:
of is dit echt iets voor computerprogrammeurs?


Ja is echt een verhaal van programmeurs de echte emu file vind je meestal in de var/bin (usr/bin voor de 7020) directory van je dreambox.

Alle andere files zijn ofwel opstart scripts of config files, daarmee kun je aangeven wanneer een emu moet opstarten of afsluiten (killal -9).
Of in welke directoryt de emu de keys kan vinden of waar de emu je kaart kan vinden (zie mijn voorbeeld van de newcamd file).


Zonder de sources en een meer dan behoorlijke programmeer kennis kom je dus nergens.
 
Waar blijven de mensen met kennis.....

Ik kom niet verder dan lezen en wat ik lees snap ik niet.


;)
Nr.10
 
Het bestand waar je naar staart is, zoals eerder aangegeven een gecompileerd bestand. Een binary dus. Op preciezer te zijn: een ELF binary.

Nu de andere vraag. Wat dit betekent:
freggel1 zei:
Code:
case "$1" in
	start)
	echo "[SCRIPT] $1: $CAMNAME"
	remove_tmp
	/var/bin/evocamd_2.04 &
	;;
	stop)
	echo "[SCRIPT] $1: $CAMNAME"
	killall -9 evocamd_2.04
	remove_tmp
	;;
	*)
	$0 stop
	exit 1
Dat $1 is de 1e parameter die meegegeven wordt. En case betekent 'In het geval dat'. Dus als je zegt: [scriptnaam] start, dan voert ie vervolgens uit wat bij start staat, tot aan de ;;. Dan schrijft ie op het scherm (echo): [SCRIPT] start: (en vervolgens de waarde in de variabele $CAMNAME)
Daarna 'remove_tmp'. Een ander script of binary.
Vervolgens voert ie '/var/bin/evocamd_2.04' uit. En dat doet ie in de achtergrond. Dat wordt bepaald door de & er achter. Dat betekent dat ie niet wacht tot dit commando klaar is, maar gewoon verder gaat met het script. In de achtergrond draait dan /var/bin/evocamd_2.04. Dat wil je ook, want het is een deamon die in de achtergrond moet blijven draaien.

En als je zegt: [scriptnaam] stop, dan voert ie vervolgens uit wat bij start staat, tot aan de ;;. Dan schrijft ie op het scherm (echo): [SCRIPT] stop: (en vervolgens de waarde in de variabele $CAMNAME)
Daarna voert ie 'killall -9 evocamd_2.04' uit. Dat betekent dat ie alle processen van evocamd_2.04 hartstikke dood maakt. Dat doet ie met de -9 parameter. Er zijn veel meer niveaus van om zeep helpen. Die nummers kan je met man killall vinden.
En vervolgens 'remove_tmp'.

Tenslotte doet ie bij elke andere parameter: zichzelf uitvoeren onder de naam waarmee ie gestart is met als parameter stop. En dan nog een exit. Dat spreekt voorzich, lijkt mij. De 1 achter exit is de exitcode waarmee ie stopt. Als je daarna meteen echo $? doet, kan je zien of ie met die errorcode is gestopt.

Dit script is dus te vereenvoudigen: ipv 'stop)' had daar dus ook *) kunnen staan. Die *) daaronder had dan kunnen komen te vervallen. Alleen bij die echo moet je dan nog wel even $1 in stop veranderen. Ander kan je van die vreemde teksten op je scherm krijgen. Wanneer je bijvoorbeeld './[scriptnaam] en-nu-gaat-ie-lekker-starten' zou doen, geeft ie op het scherm als het niet is aangepast: [scriptnaam] en-nu-gaat-ie-lekker-starten (Met de waarde van $CAMNAME). En daar wil je gewoon ipv dat geleuter het woordje 'stop' krijgen. Omdat ie dat daar gaat doen.
 
Stilte voor de storm misschien????

Ik denk dat men geschrokken is omdat het moeilijker is dan men dacht.


;)
Nr.10
 
Het is heus niet stilgevallen hoor, maar vreemd genoeg draaien de multi's nu al dagen bij mij, en heb ik dus ook geen update moeten doen.

En deze middag ben ik met een andere decoder bezig geweest die nog niet helemaal perfect draait ( Xtreme) dus daar ben ik ook nog niet mee klaar , en ook lopen er hier nog een paar vrouwtjes rond die om de nodige aandacht vragen. ;)

Ik ga er na het weekend weer mee door, jij hopelijk ook.
 
Kerstkonijn zei:
In de achtergrond draait dan /var/bin/evocamd_2.04. Dat wil je ook, want het is een deamon die in de achtergrond moet blijven draaien.
Tot zover kan ik het nog volgen,
maareuh, wat is een Deamon:confused:
 
Een deamon is een proces wat zelfstandig op de achtergrond loop.
 
Is "cronjob" ook niet zoiets?
 
Ik zou eerder een cronjob een proces willen noemen en een daemon een applicatie (of server).
Maarja, dat is dan weer hoe ik er persoonlijk naar kijk, maakt het echter wel gemakkelijker een goed onderscheid te maken.
 
Een cronjob is niet meer dan een proces wat op een vooraf omgesteld moment wordt gestart. Daemons worden over het algemeen gestart met het bijbehorende runlevel. Zoals een http daemon (de d achteraan van daemon) die als zelfstandig proces op de achtergrond rustig zit te wachten tot er een http aanvraag gedaan wordt.
 
Wanneer we onze allesweter raadplegen:
google zei:
Daemon: de term die binnen Unix en Unix-achtige besturingssystemen (zoals Linux en FreeBSD) gebruikt wordt om een proces aan te duiden dat niets doet dan reageren op inkomende verzoeken om diensten (of wachten op het binnenkomen van een dergelijk verzoek).
nl.wikipedia.org/wiki/Daemon

Een proces dat in de achtergrond latent aanwezig is, gewoonlijk onopgemerkt, totdat er iets gebeurt waardoor het in actie komt. De daemon update bijvoorbeeld ontwaakt elke dertig seconden of zo om de buffercache te legen, en de daemon sendmail ontwaakt wanneer iemand mail verstuurt.
doc.nl.linux.org/GUIDE/sag-nl/g3110.html

Afkorting van Disk And Execution MONitor. Programma dat de informatieaanvraag (bv. e-mails) behandelt. Wordt gebruikt door internetproviders.
www.pirana.be/advies/d.htm

Je zou ook kunnen concluderen dat een Daemon een process is wat 'machinaal' is opgestart, dus specifiek als doel heeft om andere processen te ondersteunen.
Een cronjob is daarmee niets meer dan een jobje, een handmatig gestart programma wat daarmee dus GEEN process is.

Op deze wijze maken we nu dus onderschijt :)D) tussen processen en jobs (alleen maar om het ingewikkelder te maken dan dat het is).

Dus:
  • Een daemon is geen process
  • Een process is geen programma
  • Een programma is geen van bovenstaande
  • WEL ondersteunen ze elkaar om zaken gedaan te krijgen
 
Je zou ook kunnen concluderen dat een Daemon een process is wat 'machinaal' is opgestart, dus specifiek als doel heeft om andere processen te ondersteunen.
En dan:
Een daemon is geen process
:? Wat is het nu? Eerst is het wel een procesof niet? Dit spreekt elkaar tegen.

Ik denk dat de conclusie niet correct is. Een daemon is wel een proces, zoals ook aangegeven in die google quote.
Verder hoeft die niet altijd machinaal opgestart te worden (bijv. httpd en ftpd kun je ook handmatig doen, ik heb zelf een ftpd waarbij het beter is deze handmatig te doen of anders hooguit in xinetd te zetten).

En om het geheel dan nog maar wat verwarrender te maken, heeft het ook niet altijd als specifiek doel een ander proces te ondersteunen.

Httpd is een bijv. webserver, die hoeft niet perse iets anders te ondersteunen, idem met ftp. Xinetd ondersteunt weer wel, net als crond, die voor ondersteuning van de cronjobs zorgt.:)

Hmmz... eens zien of we het nog moeilijker kunnen maken.:biggrin:
 
BiG_G zei:
Je zou ook kunnen concluderen dat een Daemon een process is wat 'machinaal' is opgestart, dus specifiek als doel heeft om andere processen te ondersteunen.
Een cronjob is daarmee niets meer dan een jobje, een handmatig gestart programma wat daarmee dus GEEN process is.

Op deze wijze maken we nu dus onderschijt :)D) tussen processen en jobs (alleen maar om het ingewikkelder te maken dan dat het is).

Dus:
  • Een daemon is geen process (zoals bv cronjob werd genoemd!)
  • Een process is geen programma (voordat je dat als cronjob gaat noemen)
  • Een programma is geen van bovenstaande
  • WEL ondersteunen ze elkaar om zaken gedaan te krijgen (En dit is de enige regel die van belang is!!!)
Daemon: de term die binnen Unix en Unix-achtige besturingssystemen (zoals Linux en FreeBSD) gebruikt wordt om een proces aan te duiden

Ik zou de term 'zombie' willen gebruiken, ware het niet dat dat ook niet zo is.
Een Daemon = een daemon. (een process wat slaapt, en enkel en alleen ontwaakt wanneer hij nodig is)
Een process is een process (is normaal gesproken altijd actief)

Ik weet niet hoeveel eenvoudiger en makkelijker moet uitleggen.
 



Kerstboom 1 Hosting Fun Feestdag

Advertenties

Terug
Bovenaan Onderaan