Logo
Luglio 31, 2010, 10:26:26
 
New PostsTotal Posts: 39790
New PostsTotal Topics: 2631
New PostsTotal Members: 417
New PostsLatest Member: ddmd1959
Benvenuto! Accedi o registrati.
Hai dimenticato l'e-mail di attivazione?

Login with username, password and session length
Pagine: 1 ... 23 24 [25] 26   Go Down
  Print  
Autore Topic: kernel, boot e init  (Read 6303 times)
Ottobre 09, 2009, 09:21:23
djdas
Hero Member
*****
Posts: 2506


Namastè - Om Mani Pedmè Hung


View Profile
« Rispondi #360 on: Ottobre 09, 2009, 09:21:23 »

Ho capito! Smiley
Abbiamo tempi di startup del timer diversi Tongue
Io conto i secondi dal flash bianco, cioè DOPO che il kernel sia caricato, tu li conti prima comprendendo anche il tempo di caricamento. IMHO il tempo corretto è dallo splash bianco perché in ogni caso la distro in sé comincia da lì e solo lì possiamo ottimizzare, tanto più che ormai qualunque cell moderno praticamente ha un kernel da avviare e normalmente l'utente percepisce lo "start" dal flash.
In ogni caso direi che 5 secondi sono un dettaglio, ricordiamoci sempre che i mokousers sono abituati a 1,5-2,5 MINUTI!!! Smiley
Ciau!
Logged

Distro FDTF Download: TAR ,JFFS2,Kernel
Ottobre 09, 2009, 09:32:11
LeOS
Hero Member
*****
Posts: 777



View Profile
« Rispondi #361 on: Ottobre 09, 2009, 09:32:11 »

aaaaa ok
perche' se leggi nelle mie doc, i tempi di boot sono intesi: da quando appiccio l'oggetto, quindi da quando premo il pulsante di power!
che cmq (filosofie di funzionamneto a parte) sono i tempo fisici che si aspettano da quando accendiamo il telefono a quando e' up!
adesso e' chiaro volevo solo capire come mai questa differenza Smiley
certo che se si riuscisse ad ottimizzare quella parte iniziale sarebbe gran cosa ma io non so proprio dove metterci mano!
Logged

Linux Registered User: #135079

Armeniacum Latest:
http://uploads.telefoninux.org/leos/armeniacum-20091125-1133.tar.bz2
Please update!!!
Ottobre 09, 2009, 09:41:03
djdas
Hero Member
*****
Posts: 2506


Namastè - Om Mani Pedmè Hung


View Profile
« Rispondi #362 on: Ottobre 09, 2009, 09:41:03 »

Beh sicuramente un kernel piccolo carica prima e parte più velocemente ma onestamente guardando anche il boot della FDTF con quello vecchio tutto modulare non è che la differenza sia poi così tanta, siamo sempre dell'ordine del secondo (ed è quasi un mega più piccolo), però sicuramente ne risente poi all'atto del bootstrap perché man mano che riconosce i dispositivi deve caricare i moduli....Sarebbe interessante (ma non è il momento, abbiamo troppe cose da fare) provare con lo stesso kernel nelle due versioni monolitico e totalmente modulare, sulla stessa distro per vedere cosa succede.
Diciamo in ogni caso che, come scrivevo prima, dal nostro punto di vista guadagnare 2-3 secondi è davvero irrilevante visto il salto di qualità rispetto a tutti gli altri Wink possiamo pensarci anche dopo.
Una cosa che si potrebbe provare è, nel caso sia supportato, caricare una bzImage cioè il kernel compresso, magari i tempi lunghi sono nell'accesso alla flash e lo scompattamento accelera....boh!
Ciau!
Logged

Distro FDTF Download: TAR ,JFFS2,Kernel
Ottobre 09, 2009, 09:47:50
LeOS
Hero Member
*****
Posts: 777



View Profile
« Rispondi #363 on: Ottobre 09, 2009, 09:47:50 »

sai cosa sarebbe davvero bello?
invece che kernel e tanti spezzettoni di file, avere un unico filone che contiene tutto, e pompare al 100%la cpu durante il boot, metodo simile a quello utilizzato in LPC
ma questi sono fronzoli di cui ci occuperemo alla fine, quando avremo tutto l'ambiente pronto!
Logged

Linux Registered User: #135079

Armeniacum Latest:
http://uploads.telefoninux.org/leos/armeniacum-20091125-1133.tar.bz2
Please update!!!
Ottobre 09, 2009, 11:53:58
Stemby
Hero Member
*****
Posts: 640



View Profile
« Rispondi #364 on: Ottobre 09, 2009, 11:53:58 »

Sì, anch'io credo che per l'ottimizzazione finale dovrete (io non sono in grado) trovare il modo per avere la CPU costantemente il più vicino possibile al 100%, ovviamente a fare cose utili.
Logged
Ottobre 09, 2009, 01:23:03
LeOS
Hero Member
*****
Posts: 777



View Profile
« Rispondi #365 on: Ottobre 09, 2009, 01:23:03 »

anche oggi penso ergo sum Smiley
ipotizziamo di aver terminato la neophys.
accendo il fr e il sistema parte, parte con tutto quello che serve di default, x, ofono, dbus, non penso debba partire altro, inteso come demoni
ogni demone viene avviato con il proprio script che sta dentro /etc/scripts
l'utente potra' cmq avviare altri servizi/demoni attivare funzioni (wireless, bluetooth, gps) autonomamente

per tracciare cosa c'e' UP in quel momento, direi che ogni script di avvio scrivera' anche un file ad esempio /var/run/running.apps
ogni demone avra' la propria entry, ad esempio, al momento in cui appiccio bluetooth, tirando ad esempio su il hcid, avro' la voce bluetooth (piuttosto che hcid) dentro il file running.apps

al momento dello spegnimento faro' un controllo di cosa c'e' dentro il file e spegnero' via via i demoni attivi per procedere correttamente allo shutdown

potrebbe essere interessante il metodo alla gnome dove ti permette di salvare le "running applications" quindi se ho impostato le preferenze con "ricorda lo stato del telefono" semplicemente questo file viene copiato, prima dello shutdown, all'interno del fs non volatile per poi essere ricopiato in /var/run al prossimo boot

cosa ne pensate?
Logged

Linux Registered User: #135079

Armeniacum Latest:
http://uploads.telefoninux.org/leos/armeniacum-20091125-1133.tar.bz2
Please update!!!
Ottobre 09, 2009, 01:39:32
LeOS
Hero Member
*****
Posts: 777



View Profile
« Rispondi #366 on: Ottobre 09, 2009, 01:39:32 »

ho scritto queste due righe:

Code:
root@Apricot-RC2:~# cat /opt/bin/running.sh
#!/bin/sh
RUNFILE=/var/run/running.apps
CMD=$1
APP=$2

if [ ! -e $RUNFILE ] ; then touch $RUNFILE ; fi

case $CMD in
  add)
    mv $RUNFILE $RUNFILE.new
    echo $APP >> $RUNFILE.new
    sort $RUNFILE.new | uniq > $RUNFILE
    rm $RUNFILE.new
  ;;
  remove)
    mv $RUNFILE $RUNFILE.old
    sed /$APP/d $RUNFILE.old > $RUNFILE
    rm $RUNFILE.old
esac

eseguendo questo script con la sintassi:

running.sh add pippo
oppure
running.sh remove pluto

va a togliere e mettere nel file definito nella variabile RUNNING l'applicativo
facendolo eseguire dai vari script di partenza/avvio e' assai semplice togliere e mettere le voci dal file
Logged

Linux Registered User: #135079

Armeniacum Latest:
http://uploads.telefoninux.org/leos/armeniacum-20091125-1133.tar.bz2
Please update!!!
Ottobre 09, 2009, 01:50:22
LeOS
Hero Member
*****
Posts: 777



View Profile
« Rispondi #367 on: Ottobre 09, 2009, 01:50:22 »

questo e' il risultato sulla apricot:

Code:
root@Apricot-RC2:~# cat /var/run/running.apps
dbus
dropbear
ofono

Logged

Linux Registered User: #135079

Armeniacum Latest:
http://uploads.telefoninux.org/leos/armeniacum-20091125-1133.tar.bz2
Please update!!!
Ottobre 09, 2009, 01:55:52
nicola.mfb
Hero Member
*****
Posts: 817


View Profile
« Rispondi #368 on: Ottobre 09, 2009, 01:55:52 »

Se il filesystem è readonly ha senso fare lo shut pulito (kill -TERM) solo dei daemons che potrebbero avere delle write pendenti sulla partizione rw (ad esempio npd che riceve un messaggio da ofono e lo deve ancora salvare da qualche parte).
Dovresti gestire poi le dipenzende fra i vari sottosistemi da cui dipende npd (esempio eds, che va trattato dunque allo stesso modo), rimontare la rw partition in ro , se il remount fallisce miseramente avvisa l'utente e riprova n volte, dopo le n volte che il kill -TERM non è andato, vai in kill - KILL ed alla fine in ogni caso spegni definitivamente il device e "bonanotte" Wink

Idea vaga, da elaborare.

ciauZ

    Niko

Logged
Ottobre 09, 2009, 03:39:35
LeOS
Hero Member
*****
Posts: 777



View Profile
« Rispondi #369 on: Ottobre 09, 2009, 03:39:35 »

corretto
al momento pero' non avendo NULLA di piu' ho cominciato a tracciare quel che era UP Smiley
lo script di shutdown terra' conto di quello in /var/run/running.apps
Logged

Linux Registered User: #135079

Armeniacum Latest:
http://uploads.telefoninux.org/leos/armeniacum-20091125-1133.tar.bz2
Please update!!!
Ottobre 09, 2009, 05:14:16
djdas
Hero Member
*****
Posts: 2506


Namastè - Om Mani Pedmè Hung


View Profile
« Rispondi #370 on: Ottobre 09, 2009, 05:14:16 »

Uhm, credo che però non si debba fare il sort del file perché è possibile che qualche app da runnare "in sessione" dipenda dal fatto che altre siano già partite (vedi ofono <- dbus) quindi imho dovresti numerarle (magari usando il PID) o comunque tenere l'ordine di avvio nel file.
Per il resto l'idea mi piace, complimenti Smiley
Ciau!
Logged

Distro FDTF Download: TAR ,JFFS2,Kernel
Ottobre 09, 2009, 05:24:05
LeOS
Hero Member
*****
Posts: 777



View Profile
« Rispondi #371 on: Ottobre 09, 2009, 05:24:05 »

uhm il problema e' che:
appiccio un servizio, faccio >> file
se per errore lo appiccio due volte avrei un duplicato, risolvibile solo con un sort|uniq!
Logged

Linux Registered User: #135079

Armeniacum Latest:
http://uploads.telefoninux.org/leos/armeniacum-20091125-1133.tar.bz2
Please update!!!
Ottobre 09, 2009, 05:28:12
djdas
Hero Member
*****
Posts: 2506


Namastè - Om Mani Pedmè Hung


View Profile
« Rispondi #372 on: Ottobre 09, 2009, 05:28:12 »

Scusa ma se fai un grep del nome del servizio nel file e lo trovi non lo memorizzi ed esci, o mi sono perso qualcosa? Tongue
Ciau!
Logged

Distro FDTF Download: TAR ,JFFS2,Kernel
Ottobre 09, 2009, 05:32:23
LeOS
Hero Member
*****
Posts: 777



View Profile
« Rispondi #373 on: Ottobre 09, 2009, 05:32:23 »

uhm quindi
if greppa allora esci e fai finta di nulla else echo >> file

confermo che ho bisogno di ferie Smiley
Logged

Linux Registered User: #135079

Armeniacum Latest:
http://uploads.telefoninux.org/leos/armeniacum-20091125-1133.tar.bz2
Please update!!!
Ottobre 09, 2009, 05:34:28
djdas
Hero Member
*****
Posts: 2506


Namastè - Om Mani Pedmè Hung


View Profile
« Rispondi #374 on: Ottobre 09, 2009, 05:34:28 »

Confermo Tongue Per un attimo non ti avevo riconosciuto! Cheesy
Ciau!
Logged

Distro FDTF Download: TAR ,JFFS2,Kernel
Pagine: 1 ... 23 24 [25] 26   Go Up
  Print  
 
Jump to:  

Powered by SMF 1.1.11 | SMF © 2006-2008, Simple Machines LLC
Oranj By Burak