the registerBlackBerry World hits 10K apps
Thursday, September 9. 2010 YouGov's voluntary stalkware unpicked Thursday, September 9. 2010 EMC hints at mid-range storage system Thursday, September 9. 2010 MP urges Parliament to reform FOI laws Thursday, September 9. 2010 Jonathan LewisCBO Surprise
Tuesday, September 7. 2010 Open World Tuesday, September 7. 2010 Not NULL Sunday, September 5. 2010 Last Modified Friday, September 3. 2010 Oracle Versions Wednesday, September 1. 2010 Tanel PoderWhich number takes more space in an Oracle row?
Thursday, September 2. 2010 Public appearances 2010 Wednesday, September 1. 2010 Exadata v2 Smart Scan Performance Troubleshooting article Saturday, July 31. 2010 Dropping and creating tables in read only tablespaces?! Sunday, July 11. 2010 Kevin ClossonOpenWorld 2010 Unconference Venue Is Now Open For OpenWorld Attendees Too!
Saturday, September 4. 2010 |
Sunday, June 13. 2010Tek 49x - Home Made Extenders
Nella ricalibrazione di alcuni 49x avevo necessità di sollevare le schede all'interno degli strumenti, gli extender ufficiali TEK sono introvabili e le schede sono su dei connettori praticamente introvabili. Con l'ausilio di un cavo FLAT, un tool dremel, dell'attack e i connettori sotto sono riuscito ad creare degli extender. Connettore (electronic.it) Prese (RS) Sunday, June 6. 2010Riparazione di un HP 5342AHo acquistato un HP 5342A per cannibalizzare le opzioni 001 e 011 (Riferimento ad alta stabilità e HPIB). Era venduto come non funzionante e "per parti", il malfunzionamento era dovuto alle forti ammaccature dello chassis che nella parte inferiore andava a toccare la motherboard, una volta liberato dallo chassis lo strumento ha cominciato a funzionare correttamente. A questo punto ho cominciato a pensare a recuperare lo strumento sistemando alla meglio lo chassis e riparando il guasto più grave: la tastiera. Per la prima parte mi sono affidato al fido martello e con 15-20 minuti ho ottenuto una riparazione accettabile. Per la tastiera ho cominciato a rovistare i rivenditori di componenti per cercare di sostituire i pulsanti originali ed ho optato per i seguenti prodotti di RS: Switch Cap 682-1099 (da adattare agli switch sopra)
Gli switch sono stati immediatamente disponibili mentre per i coperchi da adattare dovrò attendere qualche settimana quando entreranno in stock..
Ho adattato i terminali degli switch per andare sui contatti previsti dai pulsanti originali e ho posizionando lo switch prendendo come riferimento i fori e le traccie laterali, per l'illuminazione ho scelto di portare fuori i contatti dei led e connetterli a dei LED a montaggio superficiale.
Ecco il risultato, attendo i pulsanti per ultimare anche la parte estetica ..
Friday, March 5. 2010Esperienze con i Tek 49x
Esperienze con i Tek 49x.
Ho ricalibrato entrambi questi strumenti e dall'esperienza che ho fatto ho un consiglio: controllate tutte le tensioni e cominciate dal verificare l'amplificatore logaritmico. Ciò che viene chiamato nel manuale connettore "SEALECTRO" non è nient'altro che un connettore SMB: un adattatore BNCf/SMBm è più che sufficiente per fare gran parte delle calibrazioni.
Il Tek 496P aveva problemi con lo YIG (1st LO): con la strumentazione a mia disposizione non ero in grado di verificare il funzionamento con precisione, ma degli errori di PLL lock "ERROR 60", con il supporto di un frequenzimetro chinese e forte della legge di Murphy ero ragionevolemente convinto che il colpevole fosse lui.
Lo Yig in questione (119-1360-01) a differenza di quelli per il fratello maggiore 492 (119-0752-01) è praticamente impossibile da trovare (Murphy docet) navigando su internet ho scoperto che in Portogallo c'era Luis Cupido che è un esperto di circuiti ibridi effettua riparazioni e lavori in wire bonding.
Luis mi ha confermato che era KO e mi ha anche detto una particolarità del mio YIG:
Il regolatore interno che porta la tensione d'ingresso da +15V a gli +8V (7808) era stato lasciato con il GND "scollegato" quindi il FET del finale invece di avere una Vds di 5 volt aveva una Vds di 8.3V, Luis era meravigliato quanto me che sia sopravvissuto tutto questo tempo Ripristinato il collegamento con la GND e sostituito il FET d'uscita con un HMF03300, lo YIG ha ricominciato a fare il suo lavoro a meraviglia. Rimesso al suo posto sono scomparsi i vecchi ERROR 60 ed è stato possibile ricalibrare lo strumento senza grossi problemi.
Per il Tek492 niente di così travagliato, ho notato anche che non si accendeva l'illuminazione della griglia è bastato sostiuire un fusibile ed effettuare un po' di regolazioni perse (Geometria, Amplificatore Logaritmico) per avere lo strumento ricalibrato Tuesday, March 2. 2010Mac OSX: Il browser di tanto in tanto si blocca ?
Tentare non nuoce, provate a riordinare i file sqlite find $HOME/Library -name "*.sqlite*" -exec sqlite3 {} "vacuum;" \; -print
Sunday, December 27. 2009Kicad SVN R2161 x86/x86_64/PPCDurante le vacanze di natale e grazie agli sviluppatori di wxWindows sono riuscito a fare una build a 3 piattaforme di Kicad. Questa versione ha qualche problemino secondario ma sembra funzionare abbastanza adeguatamente, provvederò nei prossimi giorni ad effettuare patch al codice per stabilizzare i problemi che sto' incontrando. wxWindows è linkato staticamente e risolve un bug già segnalato #11550 Saturday, December 19. 2009Riparazione di un HP 54502ACosa grandiosa di questa fascia di oscilloscopi è la auto-calibrazione, con l'aiuto soltanto di cavi BNC e di un buon multimetro è possibile fare una calibrazione completa. Ritornando ai problemi, scambiando i due attenuatori l'errore si muoveva sull'altro canale quindi era evidente che il problema era su un attenuatore trovato rapidamente su ebay per un centinaio di dollari oltreoceano. Riguardo al CRC error sui dati di calibrazione l'imputato principe è stato il chip della Dallas DS1235YW-120, che ho dissaldato, sostituito e rimontato su uno zoccolo.
Finita in poche ore la ripazione sono riuscito ad ottenere una calibrazione ed uno strumento pienamente funzionante.
I prossimi passi saranno fare una copia di backup del firmware che risiedono su EEPROM P27010-200 e 1818-4083.
Dallas DS1235YW-120 (datasheet)
HP 54503-63401 Attenuator
(Failed)
Girando su internet ho notato che i guasti tipici di questi attenuatori sono i seguenti:
1. L'input a 50 Ohm può bruciarsi rimanendo aperto (L'input a 1Meg ohm continua a funzionare correttamente)
2. Il FET che gestisce il ramo DC può bruciarsi. (Passa soltanto la parte AC dei segnali. Nessun problema in HF)
3. Ci sono gli switch meccanici che possono avere contatti intermittenti.
Le informazioni sopra sono prelevate da ebay un asta di watronics che ha pezzi di ricambio per questi oscilloscopi ed è indubbiamente competente in materia.
Risultato
Continue reading "Riparazione di un HP 54502A"Sunday, April 19. 2009
Kicad for OSX Universal (2009-04-19) Posted by Mdx4
in Kicad, Programming at
13:27
Comment (1) Trackbacks (0) Kicad for OSX Universal (2009-04-19)Ho realizzato una build di debug dell'SVN 1733. La build ha implementazione parziale dell'associazione dei documenti. Kicad Kicad-2009-04-19.mpkg.zip Wednesday, March 25. 2009
Kicad for OSX Universal (2009-02-16) ... Posted by Mdx4
in Kicad, Programming at
23:02
Comments (0) Trackbacks (0) Kicad for OSX Universal (2009-02-16) - Patch #1Ho verificato alcune difficoltà nell'ultima release nel posizionare i componenti e i moduli ed ho verificato che è stato a causa della presenza di un operatore logico non supportato sotto OSX con COREGRAPHICS. Ho sviluppato una patch eliminando l'uso della logica wxEQUIV.
Index: gr_basic.cpp Sunday, March 22. 2009Kicad for OSX Universal (2009-02-16)Ho appena ultimato di creare una build di 2009-02-16 per OSX Universal Binary. Kicad-20090216.zip contenente l'installer Controllate nuova versione
Tuesday, November 25. 2008Oracle Libraries for PHPRovistando nell'HD ho trovato due librerie che avevo realizzato per un progettino in PHP, tnsnames.lib e tnsping.lib. tnsnames.lib è una libreria che consente di parsare un tnsnames di Oracle e di inserire il tutto in una struttura dati. tnsping.lib è una libreria che senza l'utilizzo dell'oracle client è in grado di verificare il buon funzionamento della connettività ed in alcuni casi anche di tirare fuori informazioni rilevanti sul listener e l'ambiente. Entrambe sono liberamente utilizzabili con una licenza BSD e mostrando nei credit dell'applicazione il nome dell'autore. Tuesday, August 12. 2008
Plugin Nokia 3110 Classic for iSync Posted by Mdx4
in Apple, Computing, Programming at
16:14
Comments (3) Trackbacks (0) Plugin Nokia 3110 Classic for iSyncIl Nokia 3110 Classic non è di default supportato da iSync, per questo ho modificato un plugin esistente in modo da far riconoscere al programma della Apple anche il mio cellulare. Lo zip del plugin: Nokia-3110c.phoneplugin.zip Da installare sotto /Applications/iSync.app/Contents/PlugIns/ApplePhoneConduit.syncdevice/Contents/PlugIns Attenzione! il plugin l'ho creato per me, se volete farlo anche voi fatelo a vostro rischio e pericolo. Continue reading "Plugin Nokia 3110 Classic for iSync" Friday, August 1. 2008Kicad for OSX Universal (2008-07-15)Ho appena ultimato di creare una build di Kicad 2008-07-15 per OSX Universal Binary.
Thursday, March 20. 2008RipristinoA seguito di una gestione maldestra, sto ripristinando il blog. E' di nuovo online il modulo per il lookup degli aeroporti a partire dal codice IATA o ICAO. Per il resto sto provvedendo.. Continue reading "Ripristino"Tuesday, August 28. 2007L'istinto omicida del pinguino
Che la mia stima per linux sia notevolmente scemata nel tempo è cosa risaputa a chi mi conosce, a contribure a questa perdita di fiducia c'è indubbiamente la gestione della Memoria...
Come ai tempi del kernel 2.0 l'ultima versione di linux ha una pessima abitudine di tirare fuori il suo instinto omicida..L'allocazione di memoria di linux per questione di performance viene "sovrastimata", non sto qui a spiegare il perchè, ma sembra che di default Linux faccia OVERBOOKING della memoria, un po come le compagnie aeree fanno con i posti a bordo di un aeroplano e finchè la statistica è a favore ne raccoglie i vantaggi. Viceversa quando la statistica fallisce,il dolce pinguino una volta ultimato lo spazio a disposizione si comporta un po più bruscamente di una compagnia aerea: UCCIDE.
Incaricato di questo delicato compito è l'OOM-Kill, la gestione della memoria messa alle strette dai processi si comporta come un sicario: sceglie a caso tra i processi più scomodi e gli fa un offerta che non può rifiutare: SIGKILL.
La strategia potrebbe essere sostenibile fino a quando quando oggetto di un KILL e' un child apache, in altre situazioni con altri tipi di applicazioni potrebbe generare un vero problema.
L'episodio che mi ha sinceramente urtato è stato causato dall'azione dell'OOM-Kill, scatenato probabilmente da un browser che aveva fagocitato tutta la memoria disponibile, che ha deciso di fare omaggio di un KILL allo screensaver, lasciando la mia workstation a disposizione di chiunque avesse voluto prenderne possesso: trovare la propria workstation con dei terminali in SSH su altre macchine in bella vista e a disposizione di tutti sinceramente non è un esperienza che ripeterei.Questa strategia di gestione della memoria non è nata di certo con linux ed ha già avuto implementazioni su unix commerciali: IBM con AIX 2.3.xx ed una volta sperimentato questi tipo di problemi, big blue è tornata sui suoi passi.
In sintesi i Linux Kernel developer non solo hanno reinventato la ruota, ma hanno reinventato la ruota quadrata.Sui newsgroup si trovano le informazioni più varie, parecchi suggeriscono a ragione che è possibile disabilitare l' OOM-kill con l'apposito comando: sysctl -w vm.oom-kill=0 Peccato, che da quel momento è effettivamente vero che il killer sarà a riposo, ma in questo modo nel migliore dei casi si arriverà al kill del primo processo che utilizzerà/richiederà memoria invece di ritornare NULL al malloc o di fargli usare la memoria che aveva richiesto (Riferimento). Cosa non documentata o comunque poco risaputa sono invece i valori di vm.overcommit_memory (Riferimento) che è la variabile di sistema destinata a selezionare le strategie di allocazione della memoria.
#define OVERCOMMIT_GUESS 0
#define OVERCOMMIT_ALWAYS 1
#define OVERCOMMIT_NEVER 2
Il primo, il default è un algoritmo euristico, cioè Linux ci proverà secondo le più recenti statistiche a fare del suo meglio nel overbooking di memoria se poi siamo sfortunati...
Il secondo farà del vostro kernel un perfetto piazzista: assegnerà memoria a tutti anche quando non ne ha più disponibile: un milione di MB per tutti !
Il terzo è quello che dei kernel developer seri avrebbero messo come default: il kernel vi dirà che ha memoria fino a che ne ha, dopo di che da bravo padre di famiglia ve la negherà .
Morale della favola sysctl -w vm.overcommit_memory=2 è; l'opzione più conservativa tra queste e secondo me la giusta candidata al default.
Nella speranza che i developer di applicazioni imparino a gestire gli errori di allocazione, spero nel contempo che almeno i Linux Kernel developer si ravvedano.
Chi vive di speranze, disperato muore
La opzione 2 deve essere accompagnata da un sysctl -w vm.overcommit_ratio=0 per far diventare veramente civile il pinguino.
Continue reading "L'istinto omicida del pinguino" |
QuicksearchLookup IATA/ICAOLookup MAC AddressCategorieChoose LanguageDiffondi Questo BlogBlog Administration |