Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione Google Pixel 10a, si migliora poco ma è sempre un'ottima scelta
Recensione Google Pixel 10a, si migliora poco ma è sempre un'ottima scelta
Google ha appena rinnovato la sua celebre serie A con il Pixel 10a, lo smartphone della serie più conveniente se consideriamo il rapporto tra costo e prestazioni. Con il chip Tensor G4, un design raffinato soprattutto sul retro e l'integrazione profonda di Gemini, il colosso di Mountain View promette un'esperienza premium a un prezzo accessibile. E il retro non ha nessuno scalino
6G, da rete che trasporta dati a rete intelligente: Qualcomm accelera al MWC 2026
6G, da rete che trasporta dati a rete intelligente: Qualcomm accelera al MWC 2026
Al MWC Qualcomm annuncia una coalizione industriale per lanciare il 6G entro il 2029 e introduce agenti IA per la gestione autonoma della RAN. Ericsson, presente sul palco, conferma la direzione: le reti del futuro saranno IA-native fin dalla progettazione
CHUWI CoreBook Air alla prova: design premium, buona autonomia e qualche compromesso
CHUWI CoreBook Air alla prova: design premium, buona autonomia e qualche compromesso
CHUWI CoreBook Air è un ultraleggero da 1 kg con Ryzen 5 6600H, display 14" 16:10 e 16 GB LPDDR5. Offre buona portabilità, autonomia discreta e costruzione in alluminio, ma storage PCIe 3.0 e RAM saldata limitano l'espandibilità. A 549 euro sfida brand più noti nella stessa fascia di mercato.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 19-05-2008, 08:53   #1
Dawidh
Member
 
L'Avatar di Dawidh
 
Iscritto dal: Oct 2007
Città: Terlago --> Trento
Messaggi: 88
[shell] comando awk, creazione device

allora ho un problema con questo comando:
Codice:
major=$(awk "\\$2==\"$module\" {print \\$1}" /proc/devices)
e anche su questo:
mknod /dev/${device} c $major 0
si metto tutto lo script:
Codice:
#!/bin/sh
module="module"
device="scull"
mode="664"
/sbin/insmod ./$module.ko $* || exit 1
rm -f /dev/${device}
major=$(awk "\\$2==\"$module\" {print \\$1}" /proc/devices)
mknod /dev/${device} c $major 0
Praticamente serve per inserire un modulo, eliminare eventuali device esistenti da prima e crearli nuovi con major number dinamico e minor dato. ma questo la sapete già vero????
Questo è l'errore che mi restituisce:
Codice:
awk: 0: unexpected character '\'
awk: line 1: syntax error at or near ==
mknod: numero di argomenti errato
Usare 'mknod --help' per ulteriori informazioni
Su un altro esempio ho visto che in quella riga al posto delle doppie \\ ce n'è una sola, quindi l'ho modificato ma spariscono solo i primi due errori e rimane quello di mknod.
Dove sbaglio? eppure è esattamente l'esempio del professore.
Se avete tanta gentilezza non è che mi date anche una spiegazione veloce veloce di quel comando per avere il major number?
Help. Grazie.
__________________
Coltivate Linux. Windows si pianta da solo:
Why Linux is better!


-"Se buttassimo in un cestino tutto ciò che in Italia non funziona cosa rimarrebbe...?"
-"Il cestino"
Dawidh è offline   Rispondi citando il messaggio o parte di esso
Old 19-05-2008, 15:30   #2
ilsensine
Senior Member
 
L'Avatar di ilsensine
 
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
Fermo restando che questo è un modo scorretto per creare i device node, fatti una stampa di $major prima del mknod -- conterrà sicuramente un array di un numero diverso da 1 elementi (0 elementi o più di 1).
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al
andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12
ilsensine è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2008, 13:46   #3
Dawidh
Member
 
L'Avatar di Dawidh
 
Iscritto dal: Oct 2007
Città: Terlago --> Trento
Messaggi: 88
scusa se rispondo solo adesso ma per dovevo essere a scuola per provare, non avendo portato ancora il progetto a casa.
1. immaginavo non fosse un metodo scorretto, ma dobbiamo usare questo da direttive del professore e visto che anche nel libro di Rubini c'è spiegato in questo modo
2 ho provato come hai detto ed effettivamente dentro major non trovo nessun valore. come diavolo faccio allora a farmi dare un major number corretto?
Grazie
__________________
Coltivate Linux. Windows si pianta da solo:
Why Linux is better!


-"Se buttassimo in un cestino tutto ciò che in Italia non funziona cosa rimarrebbe...?"
-"Il cestino"
Dawidh è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2008, 13:49   #4
ilsensine
Senior Member
 
L'Avatar di ilsensine
 
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
Guarda in /proc/devices...tu cerchi la stringa "module", controlla che esista effettivamente.
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al
andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12
ilsensine è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2008, 13:55   #5
ilsensine
Senior Member
 
L'Avatar di ilsensine
 
Iscritto dal: Apr 2000
Città: Roma
Messaggi: 15625
Quote:
Originariamente inviato da Dawidh Guarda i messaggi
visto che anche nel libro di Rubini c'è spiegato in questo modo
Il modo corretto è lasciare che udev lo faccia per te. Registrare un chrdevice non è sufficiente, occorre anche un device_create o simili.
Guarda ad es. misc_register in drivers/char/misc.c

Comunque se il tuo professore vuole così...
__________________
0: or %edi, %ecx; adc %eax, (%edx); popf; je 0b-22; pop %ebx; fadds 0x56(%ecx); lds 0x56(%ebx), %esp; mov %al, %al
andeqs pc, r1, #147456; blpl 0xff8dd280; ldrgtb r4, [r6, #-472]; addgt r5, r8, r3, ror #12
ilsensine è offline   Rispondi citando il messaggio o parte di esso
Old 20-05-2008, 15:33   #6
Dawidh
Member
 
L'Avatar di Dawidh
 
Iscritto dal: Oct 2007
Città: Terlago --> Trento
Messaggi: 88
Quote:
Comunque se il tuo professore vuole così...
Bisogna farlo come lo vuole e come lo ha spiegato, meglio non mettersi a discutere con un prof.... non si sa mai che mi dia qualche voto in meno all'esame......

In ogni caso ora è perfetto, mi funziona tutto, creo ed elimino il device senza problemi, grazie mille.
Ci sentiamo più avanti se ho altri problemi ma non credo visto che adesso devo solo fare gestione di memoria condivisa tra lettori e scrittori.
Ciao e grazie ancora.
__________________
Coltivate Linux. Windows si pianta da solo:
Why Linux is better!


-"Se buttassimo in un cestino tutto ciò che in Italia non funziona cosa rimarrebbe...?"
-"Il cestino"
Dawidh è offline   Rispondi citando il messaggio o parte di esso
Old 23-05-2008, 16:56   #7
Caeddu
Member
 
Iscritto dal: Aug 2001
Città: Milano
Messaggi: 70
prova cosi'
major=$(awk "/\/\$2==/\"$module/\" {print /\/\$1}" /proc/devices)
__________________
Ceddu
Caeddu è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione Google Pixel 10a, si migliora poco ma è sempre un'ottima scelta Recensione Google Pixel 10a, si migliora poco ma...
6G, da rete che trasporta dati a rete intelligente: Qualcomm accelera al MWC 2026 6G, da rete che trasporta dati a rete intelligen...
CHUWI CoreBook Air alla prova: design premium, buona autonomia e qualche compromesso CHUWI CoreBook Air alla prova: design premium, b...
Roborock Saros 20: il robot preciso e molto sottile Roborock Saros 20: il robot preciso e molto sott...
ASUS ROG Kithara: quando HIFIMAN incontra il gaming con driver planari da 100mm ASUS ROG Kithara: quando HIFIMAN incontra il gam...
Rocket Lab ha posticipato il lancio del ...
Dalla missione Artemis IV il razzo spazi...
Una delle sonde europee di ESA Proba-3 h...
Un modder fa girare Linux su PS5: GTA V ...
MacBook Neo: nessuna sorpresa nei primi ...
La serie POCO X8 Pro è pronta al ...
Smartphone: 2026 difficile per il mercat...
Star Wars: Knights of the Old Republic R...
Huang, NVIDIA: OpenClaw ha realizzato in...
Annunciano il recupero di 4,8 milioni di...
Oggi degli ottimi auricolari Sony con ca...
Muffa in casa? Questo deumidificatore da...
Sonos Era 100: il punto d'ingresso per u...
"Non stiamo sostituendo nessuno con...
Tutti i robot in offerta ora: prezzi bas...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 21:39.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v