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í
×
    včera 14:44 | IT novinky

    Apple bez varování odstranil ze svého obchodu sociální síť VKontaktě i další aplikace skupiny VK, jako je VK Music nebo VK Video [Novinky.cz].

    Ladislav Hagara | Komentářů: 4
    včera 14:22 | IT novinky

    V dubnu loňského roku představený poštovní klient Notion Mail bude 22. září ukončen.

    Ladislav Hagara | Komentářů: 2
    včera 04:33 | Komunita

    Konference OpenAlt 2026 hledá přednášející. Proběhne o víkendu 7. a 8. listopadu na půdě Fakulty informačních technologií VUT v Brně. Témata konference jsou: Otevřený a svobodný software, IoT a Hnutí tvůrců, Vzdělávání, Bezpečnost a soukromí, Otevřená společnost, komunity a data, OpenMobility a další.

    Ladislav Hagara | Komentářů: 0
    včera 04:22 | IT novinky

    Společnosti OpenAI a Broadcom oznámily čip optimalizovaný pro AI pojmenovaný Jalapeño.

    Ladislav Hagara | Komentářů: 0
    25.6. 20:22 | Nová verze

    Deno (Wikipedie), běhové prostředí (runtime) pro JavaScript, TypeScript a WebAssembly, bylo vydáno v nové verzi 2.9. Hlavní novinkou je deno desktop pro převod Deno projektu na desktopovou aplikaci. Jedná se o alternativu k frameworkům Electron nebo Tauri.

    Ladislav Hagara | Komentářů: 2
    25.6. 15:44 | IT novinky

    Od zítra jsou Datové schránky oficiálně na nové adrese datovka.gov.cz. Adresa mojedatovaschranka.cz zůstává funkční do 27. srpna 2026, následně budou uživatelé automaticky přesměrováni na datovka.gov.cz.

    Ladislav Hagara | Komentářů: 3
    25.6. 13:44 | Nová verze

    Dolphin (Wikipedie), tj. open source multiplatformní emulátor herních konzolí GameCube a Wii od Nintenda, byl vydán ve verzi 2606. S podporou Game Boy Playeru.

    Ladislav Hagara | Komentářů: 0
    25.6. 11:11 | Zajímavý software

    Vasudeva Kamath představil utilitu debvulns, alternativu k nativní utilitě debsecan, pro výpis zranitelností v Debianu. Navíc má především možnost výstupu ve strukturovaných formátech JSON a CSV. V plánu je exportér pro Prometheus.

    Ladislav Hagara | Komentářů: 0
    24.6. 21:44 | IT novinky

    Oficiální český státní eshop s elektronickými dálničními známkami nově najdete na edalnice.gov.cz. Doména gov.cz jasně potvrzuje, že jste na oficiálním státním webu [𝕏].

    Ladislav Hagara | Komentářů: 27
    24.6. 14:22 | Nová verze

    Byla vydána nová verze 4.8.0 interaktivního shellu fish (friendly interactive shell, Wikipedie). Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 7
    Které desktopové prostředí na Linuxu používáte?
     (11%)
     (8%)
     (2%)
     (17%)
     (31%)
     (3%)
     (6%)
     (2%)
     (15%)
     (26%)
    Celkem 1997 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: 914×
    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.