Pages: 1 2 3 [4] 5 6 ... 31   Go Down
Author Topic: leOS - un semplice OS per schedulare piccoli task  (Read 37720 times)
0 Members and 1 Guest are viewing this topic.
Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 332
Posts: 22811
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Legacy, fammi capire (ma non ho letto con attenzione il tuo post), la frase
Quote
Una delle cose che mi ha fatto venir voglia di scrivere quel libro
significa che tu sei "Andrew S. Tanenbaum"?  smiley-sweat

Sicuramente è un lapis  smiley-lol
Logged


Offline Offline
God Member
*****
Karma: 9
Posts: 550
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Penso di avere capito cosa vuole dire m_ri e sono in grado di spiegarlo un po meglio.
in effetti ieri sera, quando ho scritto,mi stavo già x addormentare  smiley-roll-sweat ..stavo asp che finisse un download..

d'accordissimo con tutti..però vorrei farvi notare che abbiamo solo un povero arduino..x carità,c'è anche chi ha implementaro un s.o. sull'atmel,però forse esageriamo..  smiley
La mia idea era implementare semafori x alcune risorse(seriale..) e quando hai il problema di attese ricorsive(a aspetta che b liberi,e viceversa),lasci due scelte: o l'utente implementa una funzione x gestire la situazione e la passa alla libreria,oppure il micro si riavvia..
Altra utilità: una funzione può accedere a un buffer solo quando l'altro ci ha finito di scrivere..
« Last Edit: June 27, 2012, 05:07:23 am by m_ri » Logged

Lamezia Terme
Offline Offline
Shannon Member
****
Karma: 569
Posts: 12573
Le domande di chi vuol imparare rappresentano la sua sete di sapere
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Chissa' che dietro a quel lapsus di prima si nasconda un espediente maliziosamente confezionato per creare gli estremi per essere scambiato, almeno limitatamente all'equivoco, per il Sommo Maestro =D
peccato smiley-sad
Logged

Guida alla programmazione ISP e seriale dei micro ATMEL (Caricare bootloader e sketch):
http://www.michelemenniti.it/Arduino_burn_bootloader.php
Guida alla Programmazione ATmega328 noP:
http://www.michelemenniti.it/atmega328nop.html
Articoli su Elettronica In:
http://www.michelemenniti.it/elettronica_in.html

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 332
Posts: 22811
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

@m_ri:
difatti SO "veri" già ci sono, se riesco a fare un qualcosa di semplice per condividere "tra amici" le risorse bene, altrimenti il leOS resta un bello schedulatore funzionante per eseguire piccoli compitini.
Logged


Offline Offline
Edison Member
*
Karma: 28
Posts: 2031
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

@m_ri:
difatti SO "veri" già ci sono, se riesco a fare un qualcosa di semplice per condividere "tra amici" le risorse bene, altrimenti il leOS resta un bello schedulatore funzionante per eseguire piccoli compitini.
Sarebe utile anche un manualino per utilizzare al meglio i vari RTOS per arduino  smiley-lol
Logged

"Due cose sono infinite: l'universo e la stupidità umana, ma riguardo l'universo ho ancora dei dubbi..." Albert Einstein

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 332
Posts: 22811
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Beh, gli RTOS che ho citato non sono prettamente per "Arduino" nel senso che non possono essere usati nativamente dentro all'IDE.
Sono progetti in C/C++ da usarsi all'interno di un compilatore generico. Ci sono alcuni progetti scritti solo per Arduino ma sono molto più rozzi rispetto a quelli citati. Oppure delle librerie per poter integrare l'uso di un RTOS dentro all'Arduno (mi pare ad esempio che ci sia una libreria per usare ChibiOS).
Però i manuali li dovrebbero scrivere i rispettivi sviluppatori, non certo io  smiley-lol
Logged


Catania
Offline Offline
Sr. Member
****
Karma: 0
Posts: 346
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

...(che ha descrizione golosamente matriciale, ottima per rappresentare come sono conenssi i nodi di una rete, ma anche come sono relazionati task e risorse in un kernel)...[/i]

E dillo che avresti avuto voglia di scrivere che era un algoritmo di "programmazione dinamica Greedy"   smiley-grin smiley-grin
Logged

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 332
Posts: 22811
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Versione 0.0.5.
Rispetto alla precedente, ho corretto alcuni bug, ho ottimizzato il codice ed ho ridotto l'uso della memoria del programma compilato.
Nuovo esempio BlinkWithoutMillis per far vedere le potenzialità della gestione dei task senza caricare di codice il loop().

* leOS-0.0.5.zip (20.57 KB - downloaded 12 times.)
Logged


Offline Offline
God Member
*****
Karma: 9
Posts: 550
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

@leo72: c'è qlk posto in cui raccogli le librerie da te pubblicate?
Logged

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 332
Posts: 22811
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

@leo72: c'è qlk posto in cui raccogli le librerie da te pubblicate?
Il mio sito (linkato nella mia firma) contiene tutto quello che ho fatto (forse manca un progetto) nel recente passato.
Logged


Offline Offline
God Member
*****
Karma: 9
Posts: 550
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Non ci avevo proprio fatto caso  smiley x di più avevi pure messo leoS..
Logged

Italy
Offline Offline
Full Member
***
Karma: 6
Posts: 102
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ciao Leo, ottimo lavoro!
Riguardo alla "diatriba" è un RTOS o meno, io dico che non so davvero a cosa possa servire un RTOS su, per esempio, un Arduino UNO, e che il tuo LeOS, per quanto schedulatore, è ciò che si avvicia di più all'astrazione di un OS, ma sopratutto è il componente di un OS che è più utile alla maggior parte degli utenti.
Quindi nome azzeccato o meno, un grazie per il codice che hai condiviso con tutti noi.
Detto questo, ho da poco ricevuto la Leonardo, che come vedo non è supportata... Ho letto il codice, ma mi perdo sulla setTimer() dove immagino giochi con timer, registri porte ecc. (Porc@^§*é?!"£ è una parte di sapere che devo ancora non approfondire, ma approcciare!!!) Pensi sia difficile includere il mega32u4?
N.
Logged

"The question is not whether intelligent machines can have emotions, but whether machines can be intelligent without any emotions"

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 332
Posts: 22811
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Se hai pazienza, vedo di studiare il datasheet del 32U4 e di infilarcelo dentro, ci stavo pensando oggi quando nell'IDE 1.0.1 ho visto la voce della Leonardo... ed ho pensato al leOS  smiley-yell
Logged


Italy
Offline Offline
Full Member
***
Karma: 6
Posts: 102
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

claro que si! no ti presso mica  smiley-lol
Logged

"The question is not whether intelligent machines can have emotions, but whether machines can be intelligent without any emotions"

Global Moderator
Italy
Offline Offline
Brattain Member
*****
Karma: 332
Posts: 22811
Logic is my way
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Prova un po' la versione allegata. La compilazione termina correttamente, mi manca la "prova sul campo".... Carica lo sketch BlinkWithoutMillis e dimmi che succede...  smiley-sweat smiley-roll-sweat

* leOS-0.0.6.zip (20.77 KB - downloaded 9 times.)
Logged


Pages: 1 2 3 [4] 5 6 ... 31   Go Up
Jump to: