Fedora 40 release party v Praze proběhne v pátek 17. května od 18:30 v prostorách společnosti Etnetera Core na adrese Jankovcova 1037/49, Praha 7. Součástí bude program kratších přednášek o novinkách ve Fedoře.
Stack Overflow se dohodl s OpenAI o zpřístupnění obsahu Stack Overflow pro vylepšení OpenAI AI modelů.
AlmaLinux byl vydán v nové stabilní verzi 9.4 (Mastodon, 𝕏). S kódovým názvem Seafoam Ocelot. Přehled novinek v příspěvku na blogu a v poznámkách k vydání.
Před 50 lety, 5. května 1974 v žurnálu IEEE Transactions on Communications, Vint Cerf a Bob Kahn popsali protokol TCP (pdf).
Bylo vydáno do češtiny přeložené číslo 717 týdeníku WeeklyOSM přinášející zprávy ze světa OpenStreetMap.
Byla vydána (Mastodon, 𝕏) nová stabilní verze 2.10.38 svobodné aplikace pro úpravu a vytváření rastrové grafiky GIMP (GNU Image Manipulation Program). Přehled novinek v oznámení o vydání a v souboru NEWS na GitLabu. Nový GIMP je již k dispozici také na Flathubu.
Google zveřejnil seznam 1220 projektů od 195 organizací (Debian, GNU, openSUSE, Linux Foundation, Haiku, Python, …) přijatých do letošního, již dvacátého, Google Summer of Code.
Na základě DMCA požadavku bylo na konci dubna z GitHubu odstraněno 8535 repozitářů se zdrojovými kódy open source emulátoru přenosné herní konzole Nintendo Switch yuzu.
Webový prohlížeč Dillo (Wikipedie) byl vydán ve verzi 3.1.0. Po devíti letech od vydání předchozí verze 3.0.5. Doména dillo.org již nepatří vývojářům Dilla.
O víkendu probíhá v Bostonu, a také virtuálně, konference LibrePlanet 2024 organizovaná nadací Free Software Foundation (FSF).
int loop()
{
qTimer.start(); // QElapsedTimer
while(shtDwn != 1)
{
GyroModule::gyroUpdate(gVal, aVal);
if(pthread_mutex_trylock(&srvBufMutex) == 0)
{
parseSrvMesg();
pthread_mutex_unlock(&srvBufMutex);
}
printf("Gyro y: %3.2f,", gVal.y);
setMotorsPid();
if(lopCnt % 1 == 0)
{
//for(int i = 0; i < loopTns/1000000; i++)
// cout << "#";
cout << ", loopt: " << loopTns+waitTime*1000+500; // ZDE VYPISUJI CAS SMYCKY
}
cout << endl;
/************* FREQUENCY STABILISATION ****************************/
loopTns = qTimer.nsecsElapsed();
waitTime = ((1/FREQ)*1000000000 - loopTns) / 1000 ;
if(waitTime > 1000)
{
usleep(waitTime-500); //
}
qTimer.restart();
/******************************************************************/
}
return 0;
}
No a problem je tento: pokud nastavím modul gyra, které je pripojeno k Raspberry Pi pres I2C na 66Hz, dám si frekvenci smyčky na 70Hz a všechno je ok. Když si ten modul nastavím na 100Hz a nastavím si frekvenci smyčky na 110Hz (zkoušel jsem klidně i víc), nastane problém, že Gyro hlásí FIFO OVERFLOW! což znamená, že k němu nepřistupuju rychleji než 100Hz (FIFO OVERFLOW je problém a nesmí se objevovat). Přičemž na obrazovku vypisuju různé údaje v každém kole smyčky. Pakliže vypisování na obrazovku zruším, tak FIFO OVERWLOF nenastane.
Tak možná si říkáte, že to je tím, že to vypisování na obrazovku to moc brzdí, jenomže jak mi vysvětlíte, že doba smyčky je přesná na +-0.1ms (viz řádek v kódu s výpisem) ať už s vypisováním, nebo bez něj? :-O
Pokiud nastavím frekvenci gyra na 200Hz, tak už mi nepomůže ani přestat vypisovat cokoliv na obrazovku, klidně si můžu dát frekvenci smyčky na 900Hz (a je jí fakt dosaženo a navíc stabilně) ale hlásí to pořád FIFO OVERFLOW.
Neví někdo co by to mohlo způsobovat?
Používám QT Creator.
Děkuji
Volba HZ nemá žádný vliv na frekvenci plánování. Nemá žádný vliv na odezvu systému. Nemá žádný vliv na nic. Většina pověr, které o ní kolují, pochází asi tak z dávných dob, kdy ještě nějaký vliv měla. Donedávna na ní třeba záviselo, jak moc často RCU spouští své drobné „reclamation“ úlohy na pozadí a další „housekeeping“. Ale ani to už dnes neplatí. Kernely jsou dnes většinou tickless; nicméně i v době, kdy nebyly, se uspávání, probouzení a plánování dělo s granularitou nesrovnatelně menší než 100 Hz, 1000 Hz nebo cokoliv podobného. Dojde-li k migraci vlákna na jiný procesor, kde se má vlákno zase spustit, stane se to okamžitě, ne až za chvíli. Paket ze sítě, požadavek od uživatele a obecně všechno, co vyvolá IRQ, se vyřeší okamžitě, bez ohledu na volbu HZ. Hardwarové časovače, které se používají někde v implementaci API jako je nanosleep()
, taktéž nemají absolutně žádnou souvislost s volbou HZ. IRQ (nebo jiný typ přerušení) od časovače i případné probuzení procesu, který spal, se ošetří okamžitě, tedy přesněji řečeno, hned, jakmile to bude možné. Nikdy se nikde nečeká setinu vteřiny nebo něco takového. Volba HZ je dnes spíš relikt z minulosti než cokoliv užitečného.
Neni problem cekat ve smycce kratsi dobu, ale jakmile pustis cpu musis pocitat ze se nedostanes k lizu driv nez zase za 1/CONFIG_HZ sekund.
Naprostý nesmysl.
A to jen kdyz na dalsi slice nevybere planovac zase jinou ulohu.
Naprostý nesmysl. Tohle už je fakt ve stylu Vesmírní Lidé.
Do techhle veci moc nevidim, ale zni mi to jako ze potrebujes RT kernel.
Tento výrok přichází se zpožděním několika dnů. Hodil by se na 1. dubna. Ale vážně, kdyby platilo cokoliv z toho, co tu tvrdíš, nikdo by dnes nepoužíval počítače a raději by dal přednost telegrafu.
…se ošetří okamžitě, tedy přesněji řečeno, hned, jakmile to bude možné.Jo, ale "okamžitě" a "jakmile to bude možné" není vždy totéž. Ano, me to taky prislo nejdriv streleny, proto jsem se taky ptal na nastaveni a casy. Ale jestli mu to zacina ujizdet kolem 100Hz tak to nebude nahoda.
To nemá absolutně žádný vliv na jakékoliv časování. Zaprvé, plánování, uspávání a probouzení se už minimálně patnáct let neděje s touto granularitou, ale s granularitou mnohem jemnější, kterou hardware umožňuje. Zadruhé, současné kernely jsou buď částečně nebo (stále častěji) úplně tickless, takže plánování i veškeré další úkony probíhající v systému se dějí zcela nezávisle na této volbě. Přísně vzato je volba HZ v konfiguraci kernelu spíš matoucí než užitečná. Nemá žádný smysl. Dokonce ani nemění přírůstek virtuálních tiků do /proc/stat, protože ten je vždycky 100 Hz na procesor, tedy u 16-procesoru přibude 1600 virtuálních tiků za vteřinu, u mého 8-procesur 800 virtuálních tiků za vteřinu, a tak dále a tak podobně, zcela bez ohledu na nastavení HZ.
Tiskni Sdílej: