<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://andromeda.df.lu.lv/wiki/index.php?action=history&amp;feed=atom&amp;title=LU-LSP-b16</id>
	<title>LU-LSP-b16 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://andromeda.df.lu.lv/wiki/index.php?action=history&amp;feed=atom&amp;title=LU-LSP-b16"/>
	<link rel="alternate" type="text/html" href="http://andromeda.df.lu.lv/wiki/index.php?title=LU-LSP-b16&amp;action=history"/>
	<updated>2026-05-02T01:03:57Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.31.0</generator>
	<entry>
		<id>http://andromeda.df.lu.lv/wiki/index.php?title=LU-LSP-b16&amp;diff=6945&amp;oldid=prev</id>
		<title>Leo: New page: {{LUDFKurss|Linux sistēmas programmēšana|LSP|DatZ3122|2DAT3122}}  * Pasniedzējs: Leo Seļāvo &#039;&#039;(epasts: vards.uzvards @ gmail.com)&#039;&#039; * Asistents: Krišjānis Nesenbergs * {{KursiGGrou...</title>
		<link rel="alternate" type="text/html" href="http://andromeda.df.lu.lv/wiki/index.php?title=LU-LSP-b16&amp;diff=6945&amp;oldid=prev"/>
		<updated>2017-02-14T13:03:15Z</updated>

		<summary type="html">&lt;p&gt;New page: {{LUDFKurss|Linux sistēmas programmēšana|LSP|DatZ3122|2DAT3122}}  * Pasniedzējs: Leo Seļāvo &amp;#039;&amp;#039;(epasts: vards.uzvards @ gmail.com)&amp;#039;&amp;#039; * Asistents: Krišjānis Nesenbergs * {{KursiGGrou...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;{{LUDFKurss|Linux sistēmas programmēšana|LSP|DatZ3122|2DAT3122}}&lt;br /&gt;
&lt;br /&gt;
* Pasniedzējs: Leo Seļāvo &amp;#039;&amp;#039;(epasts: vards.uzvards @ gmail.com)&amp;#039;&amp;#039;&lt;br /&gt;
* Asistents: Krišjānis Nesenbergs&lt;br /&gt;
* {{KursiGGroup|lu-lsp-b}}&lt;br /&gt;
&lt;br /&gt;
* Vērtējums = 15% praktiskie darbi, 25% mājas darbi, 10% dalība klasē, 20% KD1 un 30% KD2(eksāmens).&lt;br /&gt;
&lt;br /&gt;
* [[LSP kursa atsauksmes]] no iepriekšējiem gadiem.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Praktisko un mājas darbu iesniegšana ==== &lt;br /&gt;
* Majas darbus iesniegt e-studijās.&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* Darbi jāiesniedz kā &amp;#039;&amp;#039;&amp;#039;pielikums&amp;#039;&amp;#039;&amp;#039; e-pasta vēstulei, nevis vēstules tekstā&lt;br /&gt;
* E-pasta tēmai jābūt formā &amp;quot;LSP MD1 Vārds Uzvārds&amp;quot;, aizstājot MD1 ar faktisko darba kodu, un ierakstot savu vārdu un uzvārdu&lt;br /&gt;
* Faila nosaukumam jābūt formā LSP_MD1_Vards_Uzvards.c&lt;br /&gt;
* Nevajag arhivēt failus, ja vien tas nav prasīts uzdevuma nosacījumos&lt;br /&gt;
* E-pasts jāsūta pasniedzējam: leo.selavo pie gmail punkts com&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
==== Praktisko darbu vērtēšanas kritēriji ==== &lt;br /&gt;
* Papildus par praktiskajiem darbiem saņem plusiņus, kas ietilpst 10% no kopējā vērtējuma &amp;quot;par darbu klasē&amp;quot;. Tie pienākas ikvienam, kas iesniedz PD &amp;#039;&amp;#039;&amp;#039;patstāvīgu&amp;#039;&amp;#039;&amp;#039; risinājumu lekcijas laikā.&lt;br /&gt;
* Ja lekcijas beigu daļā PD risinājums tiek apskatīts publiski, PD jāiesūta līdz šim laikam. Vēlāk iesniegti darbi netiek vērtēti.&lt;br /&gt;
* Vēlāk iesūtīti darbi var tikt laboti, bet netiek vērtēti.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Mājas darbu vērtēšanas kritēriji ====&lt;br /&gt;
* Mājas darbu iesniegšanas termiņa laiks ir 30 minūtes pirms lekcijas sākuma&lt;br /&gt;
* Ja darbs tiek iesniegts ar novēlošanos (kaut vai 1 min), rezultāts tiek samazināts par:&lt;br /&gt;
** &amp;#039;&amp;#039;&amp;#039;10%&amp;#039;&amp;#039;&amp;#039; par ik dienu pirmo piecu dienu laikā pēc termiņa, un&lt;br /&gt;
** &amp;#039;&amp;#039;&amp;#039;50%&amp;#039;&amp;#039;&amp;#039; piecas vai vairāk dienas pēc termiņa. &lt;br /&gt;
** Divas nedēļas pēc termiņa darbi vairs netiek pieņemti.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Kalendārs ==&lt;br /&gt;
&lt;br /&gt;
{| border=1 cellspacing=0 cellpadding=4&lt;br /&gt;
|-&lt;br /&gt;
! Datums, nedēļa &lt;br /&gt;
! Kursa saturs&lt;br /&gt;
! Uzdevumi&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
==== 06.09.2016.====&lt;br /&gt;
| &lt;br /&gt;
Ievads kursā. Unix un Linux operētājsistēmu pamatkoncepcijas un vēsture. Linux sistēmprogrammētaja rīki (shell, gcc, make, manpages u.c.)&lt;br /&gt;
&lt;br /&gt;
* [http://bit.ly/1a2rHMW Kas tas ir, Linux?] - lasīt Linux.com rakstu&lt;br /&gt;
&lt;br /&gt;
* [[LU-LSP-B11:shell-cheatsheet | UNIX čaulas populārākās komandas un lietojumi]].&lt;br /&gt;
&lt;br /&gt;
|&lt;br /&gt;
Uzdots [[LU-LSP-b:MD0 | MD0]] mājas darbs - programmēšanas stils - izlasīt un ņemt vērā turpmākajos darbos.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&lt;br /&gt;
==== 13.09.2016.====&lt;br /&gt;
| &lt;br /&gt;
Vispārīgs pārskats par valodu C.&lt;br /&gt;
&lt;br /&gt;
Lasīt [http://bit.ly/1a2rsl3 C valodas pamācību] no Drexel universitātes.&lt;br /&gt;
&lt;br /&gt;
|&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Uzdots&amp;#039;&amp;#039;&amp;#039; [[LU-LSP-b:MD1 | MD1]] mājas darbs - dzimtas koks.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&lt;br /&gt;
==== 20.09.2016.====&lt;br /&gt;
| Datu struktūras un algoritmi valodā C.&lt;br /&gt;
&lt;br /&gt;
[http://selavo.lv/~kursi/lsp/1-apvienota-ievadlekcija.pdf Lekcijas piezīmes: apvienota ievadlekcija]&lt;br /&gt;
&lt;br /&gt;
[[LU-LSP-b13:L01 | Praktiskais darbs #1]]&lt;br /&gt;
&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&lt;br /&gt;
==== 27.09.2016.====&lt;br /&gt;
| Darbs ar failiem; sistēmas izsaukumi faila ievadam un izvadam. Linux piedāvātās programmas darbam ar failu izvadu/ievadu (&amp;#039;&amp;#039;cat, tail, head, less, cp&amp;#039;&amp;#039; u.c.). Failu ievada un izvada ātrdarbība, ņemot vērā sistēmas arhitektūru. &lt;br /&gt;
&lt;br /&gt;
[http://selavo.lv/~kursi/lsp/2-faili.pdf Lekcijas piezīmes: faili]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
[http://selavo.lv/~kursi/lsp/2-valoda-c.pdf Lekcijas piezīmes: valoda-c]&lt;br /&gt;
[http://selavo.lv/~kursi/lsp/3-algoritmi.pdf Lekcijas piezīmes: algoritmi]&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[LU-LSP-b13:L02 | Praktiskais darbs #2]]. &lt;br /&gt;
|&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Uzdots&amp;#039;&amp;#039;&amp;#039; [[LU-LSP-b:MD2 | MD2]] mājas darbs - datubāze. &lt;br /&gt;
--&amp;gt;&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&lt;br /&gt;
==== 04.10.2016.====&lt;br /&gt;
| Faila izmēra noteikšana. Failu saites, stingrās un vājās (hard links, soft links). Failu glabāšana un pieeja operētājsistēmā. &amp;#039;&amp;#039;i-node&amp;#039;&amp;#039; jēdziens.  Sistēmas izsaukums stat(). Direktoriju struktūra. Izsaukumi opendir(), readdir() un closedir().&lt;br /&gt;
&lt;br /&gt;
[[LU-LSP-b13:L03 | Praktiskais darbs #3]] - direktoriju koka apstaigāšana.&lt;br /&gt;
&lt;br /&gt;
|&lt;br /&gt;
Mājas darba [[LU-LSP-b:MD1 | MD1]] &amp;#039;&amp;#039;&amp;#039;nodošanas&amp;#039;&amp;#039;&amp;#039; termiņš.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&lt;br /&gt;
==== 11.10.2016.====&lt;br /&gt;
| Programma rakstīšanai log failā. Log faili. Ekskluzīva rakstīšana ar open(...O_SYNC) un fcntl() metodēm. Faila piekļuves tiesību režīmi pie open() un umask. Failu un i-node izsaukumi: chmod(), link(), unlink(), remove(), rename(), symlink(), readlink(), utime(), mkdir(), rmdir(), chdir(), getcwd().&lt;br /&gt;
&lt;br /&gt;
[http://selavo.lv/~kursi/lsp/4-faili.pdf Lekcijas piezīmes]&lt;br /&gt;
&lt;br /&gt;
[[LU-LSP-b13:L04 | Praktiskais darbs #4]].&lt;br /&gt;
&lt;br /&gt;
|&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--Mājas darba [[LU-LSP-b:MD2 | MD2]] &amp;#039;&amp;#039;&amp;#039;nodošanas&amp;#039;&amp;#039;&amp;#039; termiņš. --&amp;gt;&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Uzdots&amp;#039;&amp;#039;&amp;#039; [[LU-LSP-b:MD3 | MD3]] mājas darbs - direktoriju koka apstaigāšana.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&lt;br /&gt;
==== 18.10.2016.====&lt;br /&gt;
| &lt;br /&gt;
Atmiņas arhitektūra. Virtuālā atmiņa. TEXT, DATA, HEAP un STACK segmenti. Koplietošanas atmiņa starp procesiem. Procedūru izsaukumi. Parametru nodošana caur steku. Steka satura analīze un piekļuve stekam.&lt;br /&gt;
&lt;br /&gt;
Praktiskajos darbos apskatīsim MD1.&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&lt;br /&gt;
==== 25.10.2016.====&lt;br /&gt;
| Atkārtojums par virtuālo atmiņu un procesa TEXT,DATA, HEAP un STACK segmentiem. Virtuālās atmiņas lapas. Page fault un segmentation fault. Atmiņas aizsardzība. &amp;#039;&amp;#039;setjmp()&amp;#039;&amp;#039; un &amp;#039;&amp;#039;longjmp()&amp;#039;&amp;#039;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|&lt;br /&gt;
&lt;br /&gt;
Mājas darba [[LU-LSP-b:MD3 | MD3]] &amp;#039;&amp;#039;&amp;#039;nodošanas&amp;#039;&amp;#039;&amp;#039; termiņš.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&lt;br /&gt;
==== 01.11.2016.====&lt;br /&gt;
| Dinamiskā atmiņas izdalīšana. Heap, malloc() un free(). Dienesta informācija pie atmiņas izdalīšanas un atbrīvošanas. Brīvās atmiņas saraksti. Prasības malloc() in free() veiktspējai.&lt;br /&gt;
&lt;br /&gt;
[[LU-LSP-b13:L05 | Praktiskais darbs #5]] - &amp;#039;&amp;#039;setjmp()&amp;#039;&amp;#039;,&amp;#039;&amp;#039;longjmp()&amp;#039;&amp;#039; un taimera signāls.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Uzdots&amp;#039;&amp;#039;&amp;#039; [[LU-LSP-b:MD4 | MD4]] mājas darbs - atmiņas rezervācijas funkciju salīdzinājums.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&lt;br /&gt;
==== 08.11.2016.====&lt;br /&gt;
|&lt;br /&gt;
Atmiņas fragmentācija. Atmiņas rezervēšanas (allocation) algoritmi, kas darbojas uz atmiņas fragmentiem.&lt;br /&gt;
&lt;br /&gt;
[[LU-LSP-b13:L06 | Praktiskais darbs #6]] - atmiņas rezervācija.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Uzdots&amp;#039;&amp;#039;&amp;#039; [[LU-LSP-b:MD5 | MD5]] - atmiņas fragmentācijas algoritmu novērtējums&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&lt;br /&gt;
==== 15.11.2016.====&lt;br /&gt;
|&lt;br /&gt;
Vidus semestra &amp;#039;&amp;#039;&amp;#039;kontroldarbs&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
[[LU-LSP-b13:LA | Atkļūdošana]]: Linux rīki un to lietošana.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|&lt;br /&gt;
Mājas darba [[LU-LSP-b:MD4 | MD4]] &amp;#039;&amp;#039;&amp;#039;nodošanas&amp;#039;&amp;#039;&amp;#039; termiņš.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&lt;br /&gt;
==== 22.11.2016.====&lt;br /&gt;
|&lt;br /&gt;
Daudz-uzdevumu vide. Procesi un procesu kontrole. Pavedieni. Kooperējošies procesi un preemptīvā daudz-uzdevumu metode. Komanda &amp;#039;&amp;#039;&amp;#039;ps&amp;#039;&amp;#039;&amp;#039;. getpid() un getppid(). fork().&lt;br /&gt;
&lt;br /&gt;
Daudz-uzdevumu vide. &amp;#039;&amp;#039;wait()&amp;#039;&amp;#039; un &amp;#039;&amp;#039;exec()&amp;#039;&amp;#039;. &amp;#039;&amp;#039;system()&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- [[LU-LSP-b13:L09 | Praktiskais darbs #9]] - steka satura analīze un piekļuve stekam. --&amp;gt;&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Mājas darba [[LU-LSP-b:MD5 | MD5]] grupu izveidošanas termiņš.&lt;br /&gt;
&lt;br /&gt;
Katra grupa: lūdzu atsūtiet vienu e-pastu ar paredzamajiem dalībniekiem!&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[LU-LSP-b:L08 | Praktiskais darbs #8]] - vienkāršs atmiņas alokators fiksēta izmēra objektiem.&lt;br /&gt;
&lt;br /&gt;
|&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&lt;br /&gt;
==== 29.11.2016.====&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
Procesa ielādēšana, uzsākšanās un pieci veidi kā process var beigties. exit() un _exit().&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Klienta un servera arhitektūra. Sockets. Komunikācija starp nesaistītiem procesiem. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[LU-LSP-b13:L10 | Praktiskais darbs #10]] - starpprocesu komunikācija.&lt;br /&gt;
|&lt;br /&gt;
Kursa projekta aktualizācija.&lt;br /&gt;
Mājas darba [[LU-LSP-b:MD5 | MD5]] &amp;#039;&amp;#039;&amp;#039;nodošanas&amp;#039;&amp;#039;&amp;#039; termiņš.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&lt;br /&gt;
==== 06.12.2016.====&lt;br /&gt;
|&lt;br /&gt;
Serveri, iteratīvie un paralēlie. Klienta programmatūra un tas īpašības. &lt;br /&gt;
&lt;br /&gt;
Daudzlietotāju sistēmas (spēles) arhitektūra).&lt;br /&gt;
&lt;br /&gt;
Praktiskais darbs #9: Programma kas taisa N pavedienus, kur katrs izdrukā M burtus.&lt;br /&gt;
 &lt;br /&gt;
&amp;lt;!-- [[LU-LSP-b13:L11 | Praktiskais darbs #11]] - datortīkla klienta programma. --&amp;gt;&lt;br /&gt;
&amp;lt;!-- [[LU-LSP-b13:L11 | Praktiskais darbs #11]] - servera programma. --&amp;gt;&lt;br /&gt;
|&lt;br /&gt;
Termiņš: Kursa projekts: spēles noteikumi, GoogleDoc dokumentā.&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&lt;br /&gt;
==== 13.12.2016.====&lt;br /&gt;
| &lt;br /&gt;
Signāli. Alarm serviss un signāls. &lt;br /&gt;
Diskusija par komunikācijas protokolu izstrādi.&lt;br /&gt;
&lt;br /&gt;
Pavedieni. POSIX pavedieni. Mutex. Datu skriešanās (data race condition). Strupceļš (deadlock).&lt;br /&gt;
&lt;br /&gt;
Darbs pie [[LU-LSP-b13:projekts | kursa projekta]]. &lt;br /&gt;
&lt;br /&gt;
|&lt;br /&gt;
Termiņš: Protokola Alfa versija&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&lt;br /&gt;
==== 20.12.2016.====&lt;br /&gt;
| &lt;br /&gt;
Kursa kopsavilkums.&lt;br /&gt;
&lt;br /&gt;
|&lt;br /&gt;
Termiņš: Protokola Beta versija&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
&lt;br /&gt;
==== xx.12.2016. - xx.01.2017.====&lt;br /&gt;
| Ziemassvētku un Jaungada brīvdienas&lt;br /&gt;
|&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
|-&lt;br /&gt;
|&lt;br /&gt;
==== 24.01.2017.====&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Eksāmens 14:30&amp;#039;&amp;#039;&amp;#039; 312. telpā.&lt;br /&gt;
&lt;br /&gt;
Eksāmena forma: projektu demonstrācija (darbība, pirmkods, diskusijas).&lt;br /&gt;
|&lt;br /&gt;
&amp;amp;nbsp;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Mājas darbi ==&lt;br /&gt;
&lt;br /&gt;
* [[LU-LSP-b:MD0 | MD0]]: Izlasīt kodēšanas stila dokumentus.&lt;br /&gt;
* [[LU-LSP-b:MD1 | MD1]]: Ģimenes koka ģenerēšanas programma.&lt;br /&gt;
* MD2 - &amp;#039;&amp;#039;nav uzdots&amp;#039;&amp;#039;.&lt;br /&gt;
* [[LU-LSP-b:MD3 | MD3]]: Vienādo failu meklēšana direktorijas kokā.&lt;br /&gt;
* [[LU-LSP-b:MD4 | MD4]]: Atmiņas rezervācijas funkciju salīdzināšana.&lt;br /&gt;
* [[LU-LSP-b:MD5 | MD5]]: Atmiņas fragmentācijas algoritmu novērtējums.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!-- * [[LU-LSP-b:MD5 | MD5]]: Procedūru izsaukumu steka izdruka. --&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Eksāmens izpaužas kā [[LU-LSP-b13:projekts | kursa projekta]] aizstāvēšana.&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
* MD7 - projekta protokola specifikācija. Skatīt arī [[LU-LSP-b13:PD_client_server | PD: Klienta un servera arhitektūra]]&lt;br /&gt;
** [[LU-LSP-b11:PD_client_server | PD: Klienta un servera arhitektūra]] (praktiskā darba piezīmes)&lt;br /&gt;
** [http://selavo.lv/~kursi/LSP/md7 MD7 projekta grupu risinājumi]&lt;br /&gt;
&lt;br /&gt;
Eksāmens izpaužas kā kursa projekta aizstāvēšana.&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Pamācoši vingrinājumi un piemēri ==&lt;br /&gt;
&lt;br /&gt;
* Failu I/O buferi un sekas: divi raksta, redzam trīs...&lt;br /&gt;
* Aprēķins, cik laika vajag pārkopēt 1 TB pa baitam bez bufera.&lt;br /&gt;
* Paging: piemērs 4K x 4K masīva apstaigāšanai, mainot indeksus: 4K vs 16M page faults&lt;br /&gt;
&lt;br /&gt;
== Literatūra ==&lt;br /&gt;
&lt;br /&gt;
* Advanced Programming in the UNIX(R) Environment, Second Edition, by W. Richard Stevens, Stephen A. Rago. Addison Wesley Professional, 2005, ISBN 0-201-43307-9.  (Indiešu eksemplāram ir ISBN 81-317-0005-4)&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;Linux system programming&amp;quot; by Robert Love, O&amp;#039;Reilly Media, 2007, ISBN 0596009585&lt;br /&gt;
&lt;br /&gt;
* [http://www.advancedlinuxprogramming.com/ Advanced Linux Programming] by CodeSourcery LLC,&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;Building Embedded Linux Systems&amp;quot; O&amp;#039;Reilly Media, 2008, ISBN 0596529686&lt;br /&gt;
&lt;br /&gt;
* [[Sublime_Text_cheat_sheet]] - Lieliskā Sublime teksta redaktora taustiņu kombinācijas&lt;br /&gt;
&lt;br /&gt;
* [http://fabiensanglard.net/c/ To become a good programmer...] - C grāmatu saraksts&lt;br /&gt;
&lt;br /&gt;
== Saites ==&lt;br /&gt;
&lt;br /&gt;
* [http://selavo.lv/wiki/index.php/Linux_komandas Noderīgas Linux komandas]&lt;br /&gt;
* [http://bit.ly/bashbyex Bash by Example] @ibm/developerworks&lt;br /&gt;
* [http://tuxradar.com/content/how-linux-kernel-works Intro to Linux kernel]&lt;br /&gt;
&lt;br /&gt;
* [http://www.lysator.liu.se/c/bwk-tutor.html Programming in C: A Tutorial] (by Brian W. Kernighan)&lt;br /&gt;
* [http://www.gnu.org/software/make/manual/make.html Gnu make] dokumentācija&lt;br /&gt;
* [http://en.wikipedia.org/wiki/Filesystem_Hierarchy_Standard Tipiskas unix direktoriju hierarhijas] īss apraksts.&lt;br /&gt;
&lt;br /&gt;
* Sockets:&lt;br /&gt;
** [http://gnosis.cx/publish/programming/sockets.html Programming IP Sockets on Linux] (tutorial @ gnosis.cx)&lt;br /&gt;
** [http://www.linuxhowtos.org/C_C++/socket.htm Sockets Tutorial] @ Linux Howtos&lt;br /&gt;
** [http://en.wikipedia.org/wiki/Berkeley_sockets Berkeley sockets] (Wikipēdija)&lt;br /&gt;
&lt;br /&gt;
* http://www.hiraeth.com/alan/tutorials/courses/unixprog.html&lt;br /&gt;
* http://lkml.org/&lt;br /&gt;
* [http://tldp.org/LDP/lkmpg/2.6/html/index.html The Linux Kernel Module Programming Guide]&lt;br /&gt;
&lt;br /&gt;
=== Programmēšanas analīzes rīki ===&lt;br /&gt;
* [http://pmd.sourceforge.net/pmd-5.2.1/ PMD] - scans source code and looks for bugs, dead code, suboptimal code, overcomplicated expressions, duplicate code.&lt;br /&gt;
&lt;br /&gt;
=== Linux veiktspējas analīze ===&lt;br /&gt;
* [http://www.cyberciti.biz/tips/top-linux-monitoring-tools.html Top 20 Linux monitoring tools] @cyberciti&lt;br /&gt;
* [http://www.tecmint.com/command-line-tools-to-monitor-linux-performance/ 20 rīki Linux veikstpējas monitoringam] (IPTraf u.c.) @tecmint&lt;br /&gt;
* [http://www.cyberciti.biz/tips/how-do-i-find-out-linux-cpu-utilization.html CPU analīze]&lt;br /&gt;
* [http://www.cyberciti.biz/tips/linux-disk-performance-monitoring-howto.html Disku I/O analīze]&lt;br /&gt;
* [http://www.linuxprogrammingblog.com/io-profiling IO profiling] at Linux programming blog&lt;br /&gt;
* [https://www.linux.com/learn/tutorials/470979-who-and-what-is-on-my-network-probing-your-network-with-linux Tīkla analīze]&lt;br /&gt;
&lt;br /&gt;
== Atziņas ==&lt;br /&gt;
* [http://norvig.com/21-days.html Teach yourself programming in 10 years] by Peter Norvig&lt;br /&gt;
* [https://rhodecode.com/blog/code-review-learn-nasa-codes/ Code review: Learn how NASA codes (blog)], and [http://cacm.acm.org/magazines/2014/2/171689-mars-code/fulltext Mars Code (ACM article)]&lt;/div&gt;</summary>
		<author><name>Leo</name></author>
		
	</entry>
</feed>