wachag blogja

Scala - jópofa dolgok a trait-ek

Előjött egy olyan feladat, hogy egy "kibővíthető" metódusra van szükségem egy osztályon belül.
Van egy alapfunkcionalitás: nem csinál semmit. Ezt szeretném kibővíteni különböző dolgokkal: loggoljon, üzenetet küldjön valaki másnak, ábrázoljon grafikonon, whatever. Lényeg: ezek tetszőleges kombinációját kellene tudnia csinálni. És erre gyönyörűen működik a következő kód:

Hüjje Xilinx,

mert hova kell raknia a BSCAN primitíveket? Persze, hogy az FPGA közepére, hogy pont erre az ideális helyre ne tudjam berámolni a logikámat. Ajj.

(avagy hasznosság: http://www.wiki.xilinx.com/XAPP1231+-+Partial+Reconfiguration+of+a+Hard… )

Szerk: pár bővebb részlet:

- parciális rekonfigurálással kísérletezgetek (=FPGA egyik felében kicserélem a hardvert, míg a másik fele rezzenéstelen megy)
- a rendszerben figyel egy ARM mag (Zynq), szerepe csak az, hogy a rekonfigot kényelmesebb onnan csinálni, meg ilyen boardom volt
- a statikus (nem rekonfigurált) részben van egy soft MicroBlaze processzor (ehhez illesztek gyorsítót. A valóság bonyolultabb, de fogjuk rá, hogy ezt csinálom).
- a MicroBlaze processzor kényelmes kezeléséhez jól jön egy mdm debugger, de az pedig az FPGA BSCAN interface-én keresztül érhető el (JTAG)
- ezek a BSCAN interface-ek az FPGA belsejében pont azon a helyen helyezkednek el, ahova a téglalap alakú rekonf. területet raktam volna: középen, a legnagyobb területen (nagy a rekonfigurálható logika és sok külső összeköttetése van; előzetes place and route-ok mindég ide rakták azt a logikát, amit most rekonfifurálhatóvá akarok tenni

Qt Quick - tényleg elég quick

Kell hozzá: kb. fél óra, egy jó mintakód (http://doc.qt.io/qt-5/qml-advtutorial.html)

És íme, egy aknakereső: https://github.com/wachag/TreasureHunt

Ronda (a kód is), félkész, de ha belejön az ember, tényleg gyorsan megy.

Szerk:
futtatáshoz: qmlscene main.qml
A C++-alkalmazást nem néztem még meg, hogy miért, de nem tölti be az alkalmazást.

Kísérletezések L4 microkernelen

Akik szeretik a "low level" dolgokat:

Ha már úgy adódott, hogy tegnap volt egy labor, ahol az L4-gyel lehetett játszadozni (ebbe a családba tartozik a "formálisan bizonyítottan helyesen működő" seL4 is), akkor már próbáljuk ki, mit lehet csinálni:

- több processzt létrehozni, és IPC-zni (RPC-szerűen)
- framebufferezni
- Linuxot futtatni (ezt nem próbáltam ki, látok Linuxot eleget :-))
meg sok minden mást, ami most nem érdekelt.

Úgyhogy a szokásos ujjgyakorlat: többszálú (vagyis itt most többprocesszű) Mandelbrot-halmaz dinamikus feladatkiosztással:

WSOS2016 - Graz

Avagy: http://wsos2016.tugraz.at/index.php?id=16
Amik eddig számomra érdekesek voltak:
Gilles Muller - Coccinelle: A Program Matching and Transformation Tool for Systems Code -- már használgattam néha
Dr. Daniel Lohmann - Static Tailoring of System Software: Pay Only For What You Use! -- embedded vonatkozásai miatt kifejezetten hasznosnak tűnik
Dr. Gernot Heiser - Provable Security/Safety: The seL4 Microkernel and its Use in Critical Systems -- a seL4-ről már a HUP-on is voltak parázs viták, hogy van-e értelme egy "bizonyítottan jó" kernelnek. Fény derült arra, hogy mire használják, mit bizonyít és hogyan a bizonyítás. Itt is parázs viták lettek belőle, már az előadás közben is. De konstruktív volt, az egyszer biztos.

Ismét LKML

"I am working on developing a distributed process scheduling algorithm
for linux as a part of my master's thesis. Unfortunately I am a newbie
to kernel programming and the project which I am working on is
difficult for people who understand kernel scheduler well. Still I am
very passionate about learning new things. My approach for designing a
distributed linux kernel is to assume that there are no network
connections involved in the processes, there are no open files,etc
to
make the job simpler. I am ready to take even more assumptions to get
a simple basic implementation of a disitributed linux process
scheduling algorithm."

Vizsgát iratok

8:00 - ültetés, bevezető információk. Két nyelven, angolosoknak angolul, magyarosoknak magyarul.
8:10 - némi probléma akadt az angol nyelvű képzés hallgatóinak felfogásával, nem nagyon értették, mit jelent az, hogy a sor szélére ülni
8:13 - kezdés
8:20 - sokan kérnek lapot. Kivéve az angolosok, akik nem értették meg, hogy lapot mi adunk, saját lapot nem használhatnak
8:23 - első tíz perc, lehet elmenni. Kezdés annak a két angolosnak, akik nem vették, hogy a vizsga 8-tól kezdődik és most érkeztek
8:30 - eddig drámai dolog nem történt. Névsorellenőrzés, és felmenni egy ötszázas csomag papírért. Az talán elég. A kurzusukat sokan nem tudják, habár jópár alkalommal kérdeztük már.
8:40 - vicces kérdés az egyik angolostól, olyannal kapcsolatban, amit rengetegszer elmondtam előadáson, gyakorlaton, laboron.
9:16 - első beadó. Ajjajj.

Kéretlen levelek

(Amíg az utánajárás folyamatban, ezt a részt kiszedtem, mert a megfogalmazásom elég erős volt)

Emellett köszönöm mrceeka pozitív hozzáállását, utánajárását, nem sokkal a bejegyzés megszületése után magánban megkeresett.

Note to self: gyors Windows-reparálás

ha egy este érkező e-mail miatt - mely nem bootoló Windowsról szól - kora hajnalban bemész, hogy rendbehozd még a laborban tartott órák előtt, legközelebb is az legyen az első, amit megnézel, hogy a monitor melyik bemenetére van kötve a gép.

Lehet, hogy mégis van értelme a Windows Súgónak? :-)

(Mondjuk ez is csak azért fordult elő, mert túlórázás ment. Tegnap is. Szóval kellően fáradt volt már mindenki)

"Jócég", "még jobb cég"

Microsoft, having learned nothing from Apple and the U2 album, have started downloading Windows 10 as part of Patch Tuesday for Windows 7 and 8 users. For people on a 32GB flash drive tablet, that's a big chunk of space taken up with something that they didn't ask for. Microsoft admits to doing this, but users are not happy. Way to look needy, Microsoft.

Forrás

Eggyel kevesebb...

... bölcsességfog. Érdekes volt, ahogy kiszedte, eddig összesen egyszer volt fogproblémám, az is tíz éve... Inkább kellemetlen volt, mint fájdalmas. Majd meglátjuk, milyen lesz az éjszaka :-).