Vytisknout

Úvodní pojmy

Algoritmus

Algoritmus je postup (také mohu říci předpis), jak dospět k určenému cíli konečným počtem kroků. Algoritmus můžeme zapsat více způsoby. Nejčastěji diagramy (vývojový diagram, struktogram).

Program

Program je algoritmus zapsaný v programovacím jazyku nebo přeložený do strojového kódu procesoru. Bývá trvale uložen na nějakém paměťovém médiu, např. na pevném disku. Program se při běhu načítá (i po částech) do operační paměti a zpracovává se po jednotlivých krocích - instrukcích procesoru. Tato činnost se nazývá proces.

Proces

Proces je jeden běžící program. Je to konkrétní instance určitého programu. V dnešních běžných operačních systémech může být spuštěno více procesů. Zpravidla tedy mohu spustit jeden program i vícekrát.

Vlákno

Jeden proces může být rozdělen do více vláken. Procesor v jednom okamžiku zpracovává vždy jedno vlákno jednoho procesu. V dalším okamžiku zpravovává vlákno jiné. Operačním systémem je přidělen strojový čas jinému vláknu. Takto se vlákna jednotlivých procesů střídají a vytváří do dojem souběžně běžících procesů. Některá vlákna/procesy mohou mít vyšší prioritu - je jim přidělěn strojový čas častěji.

Překladač (compiler) a interpret (interpreter)

Procesor pracuje jen podle instrukcí jemu vlastních, pracuje v tzv. strojovém kódu. Aby rozuměl programu, musí být program přeložen do strojového kódu daného procesoru. Program se překládá do strojového kódu po jeho vytvoření speciálním programem, který se nazývá překladač neboli kompilátor (compiler). Takto vytvořený soubor obsahuje instrukce procesoru (má např. příponu .exe). Existují ale jazyky, kde se program uloží v daném programovacím jazyku - v podstatě v textovém souboru. Při spuštění programu se nejprve spustí speciální program (angl. interpreter), který čte program v programovacím jazyku a překládá jej do strojovéko kódu procesoru po jednotlivých příkazech. Přeloženou činnost (lépe řečeno činnost, kterou interpret stanovil procesoru jako interpretovaný příkaz) pak procesor provádí. Existují i systémy, které nepoužívají jen kompilovaný ani jen interpetovaný kód, přeloží program do jakéhosi mezikódu (má to výhody - např. použití jiného OS nebo procesoru) a tento mezikód při spuštění interpretují.

Oba způsoby mají své výhody i nevýhody. V běžné praxi se rozdíly vyrovnávají.

Příklady jazyka pro kompilaci: C, Pascal, pro interpetaci: Python, Perl, s mezikódem: technologie .NET (zjednodušeno).

Zobrazení: 233