abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 18:11 | Zajímavý projekt

    Krabix.cz je online 3D konfigurátor krabiček pro 3D tisk s exportem do STL. Běží přímo v prohlížeči. Nic se neposílá na server.

    Ladislav Hagara | Komentářů: 0
    dnes 17:00 | Komunita

    Nadace Open Home Foundation spustila veřejnou preview verzi komunitní databáze zařízení pro Home Assistant. Má fungovat jako „Wikipedie pro chytrá zařízení".

    Ladislav Hagara | Komentářů: 0
    dnes 15:22 | Komunita

    Na stránce nového panelu Firefoxu přibudou nové widgety. Například denně aktualizována interaktivní křížovka.

    Ladislav Hagara | Komentářů: 0
    dnes 14:11 | Zajímavý projekt

    PGSimCity (GitHub) je webová 3D vizualizace vnitřního fungování databázového systému PostgreSQL v podobě města. Vytvořena pomocí umělé inteligence.

    Ladislav Hagara | Komentářů: 1
    dnes 03:33 | Nová verze

    UBports, nadace a komunita kolem Ubuntu pro telefony a tablety Ubuntu Touch, vydala Ubuntu Touch 24.04-2.0 a 24.04-1.4. Nová verze 24.04-2.0 již počítá s výřezy pro fotoaparát (notch) a zaoblenými rohy displeje. Webový prohlížeče Morph přešel z Chromia 87 na Chromium 134. Do shellu Lomiri byl přidán editor snímků obrazovky.

    Ladislav Hagara | Komentářů: 0
    25.7. 14:22 | Bezpečnostní upozornění

    Byly zveřejněny informace o kritické zranitelnosti CVE-2026-64600 pojmenované RefluXFS (technické detaily) v XFS. Je tam již od verze Linuxu 4.11, tj. rok 2017. Jedná se o lokální eskalaci práv. Neprivilegovaný uživatel může editovat libovolný soubor, například klidně zrušit rootovské heslo v /etc/passwd. Videoukázka na Vimeo. V upstreamu je zranitelnost opravena.

    Ladislav Hagara | Komentářů: 5
    25.7. 13:46 | IT novinky

    OpenAI / ChatGPT má dnes výpadky (OpenAI Status, DownDetector).

    Ladislav Hagara | Komentářů: 0
    25.7. 13:00 | Komunita

    Poskytovatel hostingu svobodných/open-source projektů Codeberg po hlasování na valné hromadě vydal stanovisko k využívání LLM. Kvůli vytěžování infrastruktury a rostoucím cenám hardwaru, ale také hrozbám pro spolupráci v komunitě se k LLM staví kriticky. Nebude poskytovat hosting projektů vytvářených LLM agenty.

    |🇵🇸 | Komentářů: 2
    24.7. 14:22 | Zajímavý projekt

    Jack Dorsey představil (𝕏) open source týmovou komunikační platformu Buzz (GitHub) s cílem snížit závislost na Slacku a GitHubu.

    Ladislav Hagara | Komentářů: 21
    23.7. 23:00 | Nová verze

    Poštovní klient Thunderbird byl vydán v nové verzi 153 s kódovým názvem Meadow. Jedná se o ESR (Extended Support Release) vydání. Přehled novinek v poznámkách k vydání. Vylepšuje OAuth. Thundermail lze používat bez instalace doplňku.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (7%)
     (2%)
     (17%)
     (30%)
     (5%)
     (6%)
     (2%)
     (15%)
     (24%)
    Celkem 2236 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Dotaz: Programování hardware

    8.11.2003 11:21 Petr
    Programování hardware
    Přečteno: 939×
    Zdravím
    Chtěl bych se zeptat, jestli někdo nenarazil na nějaký článek, nebo publikaci (pokuď možno česky psanou), která by vysvětlovala, jak programovat hardware (jazykem C ) - upřestním: To že se s různým hardware komunikuje pomocí tzv. speciálních souborů je vcelku jasné (např: /dev/dsp - zvukovka) - mě by zajímalo, jak tato komunikace probíhá.
    Jak zjistím, u určitého spec. souboru (/dev/*)(např.: ttyS0 - port 0x3F8), který modul ho má nastarost a naopak (jaký soubor "ukazuje" na port 0x70 - kde by měl bý CMOS) (pokud není obsluha v jádřě).
    Jak se nastavují ruzné registry portu(např v dosu-pascal: port[0x3f8+4]=1; {nahozeni RTS} - jak to udelat v C v Linuxu (UNIX)).
    Jak funguje přerušení a jeho obsluha.
    Jak probíhá komunikace mezi programem - modulem a modulem - hardwarem. a podobně.
    Předem díky za každou odpověď.

    Odpovědi

    8.11.2003 15:39 Lubos
    Rozbalit Rozbalit vše Prog. hardware
    Kniha:: Linux programuje profesionalne. www.vltava.cz a INTERNET
    9.11.2003 09:13 Petr
    Rozbalit Rozbalit vše Prog. hardware
    To ze je na internetu skoro vsechno, to je celkem jasny. Horsi je to najit, a kdyz to najdes, tak abys tomu vubec rozumel. Rosipanou rejsi pouze jim. Co se tyce teto publikace, uz jsem se na ni dival, ale asi ctvrtina knihy se blizi tomu, co bych chtel vedet, takze vuci cene knihy bych vyhodil pres pet stovek jen tak do vzduchu a na to opravdu nemam.
    9.11.2003 17:16 David Jež | skóre: 42 | blog: -djz | Brno
    Rozbalit Rozbalit vše Prog. hardware
    Ahoj,
    Mno, v C se hardware programuje uplne stejne jako v jakemkoliv jinem jazyce, posilanim/prijimanim dat ze zarizeni. Nejlepsi bude vzit si nejaky manual k Ccku, prip. Advance Linux Programing.

    Co se linuxu tyce, rozdil mezi linuxem a dosem je v kompletni zmene chapani celeho systemu, asi tak, jako rozdil mezi programovanim procesoru z celniho panelu procesoru versus psanim programu v pascalu. Pokud umis treba pascal, muzes psat program pro komunikaci s nejakym zarizenim primo ctenim/psanim na porty. Tento program ale pobezi pouze rootovi. Proto jsou zde specialni soubory, jejich komunikace s okolim je snad jasna. Ktery soubor prisulsi kteremu modulu je psano treba v dokumentaci k jadru.

    Tve priklady jsou z pohledu UN*Xu naprosto irelevantni: nejake 0x378 zna tak akorat pouze PCcko. Na jakekoliv jine architekture to bude jinak, proto se z userspace s porty nesetkas :-). Tedy v konkretnim pripade, jestli dato pujde na 0x378 nebo treba nekam do PCI serioveho radice (nebo na jine architekture treba poplavou data po DMA kanalech...) vi akorat ovladac seroveho portu.

    Nahazovani ruznych registru lze udelat z ovladace nejakeho zarizeni v jadre. At uz porty, nebo PCI. Priklad z RTS nechapu: na co je to dobre? Pokud chces posilat data na standardni port, pouzijes jaderny ovladac. Pokud potrebujes jinou praci s portem, budes si muset napsat neco podobneho (tedy ovladac do jadra).

    Komunikace mezi /dev souborem a HW pomoci ovladace, do neho se dostanou tak, ze data ze souboru zachyti jadro systemu a to pozna podle tabulky cisel komu ho ma dat.

    Preruseni funguje tak, jak by clovek ocekaval ze ma fungovat. Tabulku preruseni obsluhuje jadro, preruseni oblsuhuje jadro a jeho ovladace. Z toho plyne, neocekavej nejake int 33h apodobne vylomeniny :-) Userspace toto prakticky nikdy nepouzije. Napr. mys se tedy resi pomoci knihoven a opet zarizeni, ne pomoci preruseni.

    Programovani hardwaru z userpsace sice trosicku mozne je, nicmene treba sahani na tabulku preruseni je v UN*Xech barbarstvi. Zapisy na port nejak mozne jsou (pod rootem) nicmene pokud bude port ovladat i jaderny ovladac neni jiste jak se to bude chovat. Tot asi vse, ve skratce se da rict ze na hardcore asm z dob dosu muzes bud rychle zapomenout, nebo nastudovat zdrojaky jadra a uplatnit zkusenosti tam. Je to proste trosicku jiny svet kteremu se musis nejak prizpusobit :-). Hodne stesti.
    -djz

    "Yield to temptation; it may not pass your way again." -- R. A. Heinlein
    9.11.2003 18:01 Petr
    Rozbalit Rozbalit vše Prog. hardware
    Diky za odpoved, ale tohle vsechno jsem vicemene tusil, jenom jsem to mozna blbe napsal. Nerikam ze tvuj prispevek neni pekny, ale z meho pohledu uplne na nic - jsem tam kde jsem byl pred tim a porad nevim, jak presne to funguje, abych mohl implementovat programy (a moduly) pro (i svuj) hardware. (
    9.11.2003 18:58 David Jež | skóre: 42 | blog: -djz | Brno
    Rozbalit Rozbalit vše Prog. hardware
    Aha, tak v tom pripade je to tezke, alespon z meho uhlu, kdyz vlastne nevim, co poradne vlastne chces. Abys vedel, jak naimplementovat (programy asi ne, viz. vyse...) moduly, tak zdrojaky jadra, pripadne dokumentace k nemu. Nic vice nepotrebujes. Vzhledem k tomu, ze byva dobrym zvykem cas od casu s novym jadrem hodne veci menit, asi nejakou tistenou knihu a navic v cestine nenajdes. Nicmene zdrojaky k jadru mas i v distribuci, tam najdes vse co potrebujes.
    Nekde jsem cetl vetu: "Nachystej si hodne hrnku kafe, obrn se hrosi kuzi, nenech se odradit a vzhuru do toho :-)"
    -djz
    "Yield to temptation; it may not pass your way again." -- R. A. Heinlein
    Josef Kufner avatar 9.11.2003 19:42 Josef Kufner | skóre: 70
    Rozbalit Rozbalit vše Prog. hardware
    v knizce Linux – zaciname programovat, je docela pouzitelne popsano psani ovladacu. Doporucuju si tu knizku spis nekde pucit, nez ji kupovat. Je to rozepsany asi na 80 strankach (celkem jich je cca 800). A naucit se to z toho a udelat si vypisky :) (moc jich nebude).
    Hello world ! Segmentation fault (core dumped)
    11.11.2003 13:36 Petr
    Rozbalit Rozbalit vše Prog. hardware
    Diky za typ, zkusim se na to mrknout.
    16.11.2003 20:58 Beda
    Rozbalit Rozbalit vše Programování hardware
    jeste jednoduseji: man termios teda pro to seriove rozhranni. (a mozna i paralelni) to je ta naprosto idealni vrstva nad hardwarem, pod kterou uz vazne softwarak nema strkat nos.
    16.11.2003 21:03 Beda
    Rozbalit Rozbalit vše Programování hardware
    a jestli mas svuj hardware a mermomoci mu chces udelat vlastni zarizeni, prestoze jde o periferii na seriovem nebo paralelnim portu, tak napis modul do jadra. ps: necekej, ze se dostane do mainstreamu, pokud nedela neco opravdu dulezityho, co by tu cinnost pasovalo na jadernou stranu cary.
    16.11.2003 21:07 Beda
    Rozbalit Rozbalit vše Programování hardware
    koukni na to. verim, ze dost z toho plati i pro /dev/lp* zarizeni

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.