Difference between revisions of "LU-OS-M:index"
(→Kalendārs) |
(→Kalendārs) |
||
(9 intermediate revisions by the same user not shown) | |||
Line 4: | Line 4: | ||
Kursa apraksts: |
Kursa apraksts: |
||
[[http://jupiter.cs.fmf.lu.lv/~kursi/ |
[[http://jupiter.cs.fmf.lu.lv/~kursi/osi-m/OSI-m_anot.pdf LV]], |
||
[[http://jupiter.cs.fmf.lu.lv/~kursi/ |
[[http://jupiter.cs.fmf.lu.lv/~kursi/osi-m/OSI-m_anot_EN.pdf EN]] |
||
Pasniedzējs: asoc.prof. [[User:Leo | Leo Seļāvo]] |
Pasniedzējs: asoc.prof. [[User:Leo | Leo Seļāvo]] |
||
Line 54: | Line 54: | ||
| |
| |
||
Adrešu apgabali lietojot segmentāciju. |
Adrešu apgabali lietojot segmentāciju. |
||
[http://jupiter.cs.fmf.lu.lv/kursi/osi-m/notes/l4_segmentation.pdf Lekcijas piezīmes] |
[http://jupiter.cs.fmf.lu.lv/kursi/osi-m/notes/l4_segmentation.pdf Lekcijas piezīmes]. |
||
Lasāmviela: bootasm.S, bootother.S, bootmain.c, main.c, un init.c no [[LU-OS-M:index#xv6 | xv6]]. |
Lasāmviela: bootasm.S, bootother.S, bootmain.c, main.c, un init.c no [[LU-OS-M:index#xv6 | xv6]]. |
||
|- |
|- |
||
Line 61: | Line 60: | ||
| |
| |
||
Adrešu apgabali lietojot adrešu tabulas. |
Adrešu apgabali lietojot adrešu tabulas. |
||
[http://jupiter.cs.fmf.lu.lv/kursi/osi-m/notes/l5_page_tables.pdf Lekcijas piezīmes] |
[http://jupiter.cs.fmf.lu.lv/kursi/osi-m/notes/l5_page_tables.pdf Lekcijas piezīmes]. |
||
Lasāmviela: setupsegs no [[LU-OS-M:index#xv6 | xv6]]. |
Lasāmviela: setupsegs no [[LU-OS-M:index#xv6 | xv6]]. |
||
Pārtraukumu un izņēmumu (exception) apstrāde. |
Pārtraukumu un izņēmumu (exception) apstrāde. |
||
[http://jupiter.cs.fmf.lu.lv/kursi/osi-m/notes/l6_interrupt.pdf Lekcijas piezīmes] |
[http://jupiter.cs.fmf.lu.lv/kursi/osi-m/notes/l6_interrupt.pdf Lekcijas piezīmes]. |
||
Lasāmviela: trapasm.S, trap.c, syscall.c, un usys.S no [[LU-OS-M:index#xv6 | xv6]]. |
Lasāmviela: trapasm.S, trap.c, syscall.c, un usys.S no [[LU-OS-M:index#xv6 | xv6]]. |
||
| |
| |
||
Line 81: | Line 78: | ||
| |
| |
||
Daudzprocesoru vides un slēgšanas mehānismi (locking). |
Daudzprocesoru vides un slēgšanas mehānismi (locking). |
||
[http://jupiter.cs.fmf.lu.lv/kursi/osi-m/notes/l7_lock.pdf Lekcijas piezīmes] |
[http://jupiter.cs.fmf.lu.lv/kursi/osi-m/notes/l7_lock.pdf Lekcijas piezīmes]. |
||
Lasāmviela: spinlock.c un pārskatīt mp.c no [[LU-OS-M:index#xv6 | xv6]]. |
|||
Pavedieni, procesi un konteksta pārslēgšanās. |
Pavedieni, procesi un konteksta pārslēgšanās. |
||
[http://jupiter.cs.fmf.lu.lv/kursi/osi-m/notes/l8_threads.pdf Lekcijas piezīmes] |
[http://jupiter.cs.fmf.lu.lv/kursi/osi-m/notes/l8_threads.pdf Lekcijas piezīmes]. |
||
Lasāmviela: proc.c, setjmp.S, un sys_fork (sysproc.c) no [[LU-OS-M:index#xv6 | xv6]]. |
|||
|- |
|- |
||
| 29.10.2009 |
| 29.10.2009 |
||
| |
| |
||
Procesi un koordinācija. |
Procesi un koordinācija. |
||
[http://jupiter.cs.fmf.lu.lv/kursi/osi-m/notes/l9_coordination.pdf Lekcijas piezīmes] |
[http://jupiter.cs.fmf.lu.lv/kursi/osi-m/notes/l9_coordination.pdf Lekcijas piezīmes]. |
||
Lasāmviela: proc.c, sys_exec, sys_sbrk, sys_wait, sys_exit, un sys_kill no [[LU-OS-M:index#xv6 | xv6]]. |
|||
Faili un disku ievads/izvads. |
Faili un disku ievads/izvads. |
||
[http://jupiter.cs.fmf.lu.lv/kursi/osi-m/notes/l10_fs.pdf Lekcijas piezīmes] |
[http://jupiter.cs.fmf.lu.lv/kursi/osi-m/notes/l10_fs.pdf Lekcijas piezīmes]. |
||
Lasāmviela: iread, iwrite, filewrite, fileread, wdir, mknod1 un saistīto kodu no sistēmas izsaukumiem iekšā fs.c, bio.c, ide.c un file.c no [[LU-OS-M:index#xv6 | xv6]]. |
|||
| |
| |
||
Line 102: | Line 105: | ||
| |
| |
||
Vārdu piešķiršana (naming). |
Vārdu piešķiršana (naming). |
||
⚫ | |||
<!-- |
|||
Lasāmviela: namei un pārējo no fs.c, sysfile.c un file.c no [[LU-OS-M:index#xv6 | xv6]]. |
|||
⚫ | |||
--> |
|||
| |
| |
||
[[OSm09:PD#PD3 | PD3]] B daļas nodošanas termiņš. |
[[OSm09:PD#PD3 | PD3]] B daļas nodošanas termiņš. |
||
Line 111: | Line 114: | ||
| |
| |
||
Augstas veiktspējas failu sistēmas. |
Augstas veiktspējas failu sistēmas. |
||
⚫ | |||
<!-- |
|||
⚫ | |||
Lasāmviela: [http://pdos.csail.mit.edu/6.097/readings/journal-softupdate.pdf Ganger, Gregory R., M. Kirk McKusick, Craig A. N. Soules, and Yale N. Patt. "Soft Updates: A Solution to the Metadata Update Problem in File Systems."] ACM Transactions on Computer Systems 18, 2 (May 2000): 127-153. |
|||
--> |
|||
'''Vidus semestra kontroldarbs''' |
'''Vidus semestra kontroldarbs''' |
||
Line 120: | Line 123: | ||
| |
| |
||
Multics un UNIX. |
Multics un UNIX. |
||
⚫ | |||
<!-- |
|||
⚫ | |||
Lasāmviela: [http://www.multicians.org/f7y.html Corbató, F. J., J. H. Saltzer, and C. T. Clingen. Multics - The First Seven Years.] Presented at the Spring Joint Computer Conference, 1972. Montvale, NJ: The American Federation of Information Processing Societies Press, 1972. |
|||
--> |
|||
OS servisu abstrakcijas. |
OS servisu abstrakcijas. |
||
⚫ | |||
<!-- |
|||
⚫ | |||
Lasāmviela: [http://doc.cat-v.org/plan_9/4th_edition/papers/9 Pike, Rob, Dave Presotto, Sean Dorward, Bob Flandrena, Ken Thompson, Howard Trickey, and Phil Winterbottom. Plan 9.] 4th ed. Murray Hill, NJ: Bell Laboratories. |
|||
--> |
|||
| |
| |
||
[[OSm09:PD#PD4 | PD4]] nodošanas termiņš. |
[[OSm09:PD#PD4 | PD4]] nodošanas termiņš. |
||
Line 137: | Line 141: | ||
| |
| |
||
Mikrokodoli. |
Mikrokodoli. |
||
⚫ | |||
<!-- |
|||
⚫ | |||
Lasāmviela: [http://l4ka.org/publications/1993/improving-ipc.pdf Liedtke, Jochen. "Improving IPC by Kernel Design."] 14th ACM Symposium on Operating System Principles (SOSP). Asheville, North Carolina: 5-8 December 1993. |
|||
--> |
|||
Virtuālās mašīnas. |
Virtuālās mašīnas. |
||
⚫ | |||
<!-- |
|||
⚫ | |||
Lasāmviela: [http://www-flash.stanford.edu/~bugnion/Disco/sosp-html/ Bugnion, Edouard, Scott Devine, and Mendel Rosenblum. "Disco: Running Commodity Operating Systems on Scalable Multiprocessors."] In Proceedings of the Sixteenth ACM Symposium on Operating Systems Principles. Saint-Malo, France: October 1997. |
|||
--> |
|||
|- |
|- |
||
| 03.12.2009 |
| 03.12.2009 |
||
| |
| |
||
Plānošana. |
Plānošana (scheduling). |
||
⚫ | |||
<!-- |
|||
⚫ | |||
Lasāmviela: [http://www.cs.brown.edu/courses/cs161/papers/livelock.pdf Mogul, Jeffrey, and K. K. Ramakrishnan. "Eliminating Receive Livelock in an Interrupt-driven Kernel."] Proceedings of the USENIX 1996 Annual Technical Conference. San Diego, CA: January 1996. |
|||
--> |
|||
Mērogojama koordinācija. |
Mērogojama koordinācija. |
||
⚫ | |||
<!-- |
|||
⚫ | |||
Lasāmviela: [http://www.cs.rice.edu/~johnmc/papers/tocs91.pdf Mellor-Crummey, John M., and Michael L. Scott. "Algorithms for Scalable Synchronization on Shared-Memory Multiprocessors."] ACM Transactions on Computer Systems 9, no. 1 (January 1991): 21-65. |
|||
--> |
|||
| |
| |
||
Line 167: | Line 172: | ||
| |
| |
||
Čaula (shell). |
Čaula (shell). |
||
⚫ | |||
<!-- |
|||
⚫ | |||
Lasāmviela: [http://plan9.bell-labs.com/sys/doc/rc.pdf Duff, Tom. "Rc - The Plan 9 Shell."] |
|||
--> |
|||
Lasāmviela: [http://192.220.96.201/es/es-usenix-winter93.html Haahr, Paul, and Byron Rakitzis. "Es: A Shell with Higher-order Functions."] In USENIX Technical Conference Proceedings (Winter 1993): 51-60. |
|||
Drošība: OKWS. |
Drošība: OKWS. |
||
⚫ | |||
<!-- |
|||
⚫ | |||
Lasāmviela: [http://www.usenix.org/event/usenix04/tech/general/full_papers/krohn/krohn.pdf Krohn, Maxwell. "Building Secure High-Performance Web Services with OKWS."] In Proceedings of the USENIX 2004 Technical Conference. Boston, MA: June 27-July 2, 2004, pp. 185-198. |
|||
--> |
|||
|- |
|- |
||
Line 181: | Line 188: | ||
XFI. |
XFI. |
||
⚫ | |||
<!-- |
|||
⚫ | |||
Lasāmviela: [http://research.microsoft.com/pubs/64368/xfi.pdf Erlingsson, Úlfar, Martín Abadi, Michael Vrable, Mihai budiu, and George C. Necula. "XFI: Software Guards for System Address Spaces."] Presented at the Symposium on Operating System Design and Implementation (OSDI), Seattle, WA, November 6-8, 2006. |
|||
--> |
|||
OS kļūdas un testēšana. |
OS kļūdas un testēšana. |
||
⚫ | |||
<!-- |
|||
⚫ | |||
Lasāmviela: [http://stanford.edu/~engler/deviant-sosp-01.pdf Engler, Dawson, David Yu Chen, Seth Hallem, Andy Chou, and Benjamin Chelf. "Bugs as Deviant Behavior: A General Approach to Inferring Errors in Systems Code."] Symposium on Operating Systems Principles. Stanford, CA: Computer Systems Laboratory, Stanford University, 2001, pp. 57-72. |
|||
--> |
|||
Lasāmviela: [http://pdos.csail.mit.edu/6.097/readings/osbugs.pdf Andy Chou, Junfeng Yang, Benjamin Chelf, Seth Hallem, and Dawson Engler. "An Empirical Study of Operating Systems Errors."] |
|||
| |
| |
||
Line 200: | Line 209: | ||
| Projektu beigšana, gatavošanās eksāmenam un demo sesijai. |
| Projektu beigšana, gatavošanās eksāmenam un demo sesijai. |
||
|- |
|- |
||
| |
| 14.01.2010 |
||
| '''Eksāmens''' |
| 12:30 '''Eksāmens''' |
||
|- |
|- |
||
| |
| 14.01.2010 |
||
| '''Projektu demo sesija''' |
| '''Projektu demo sesija''' |
||
|- |
|- |
||
Line 227: | Line 236: | ||
== Saites == |
== Saites == |
||
* [[OSI-M_Tools | Rīki]] |
* [[OSI-M_Tools | Rīki]] |
||
* [http://www.dgp.toronto.edu/~ajr/258/notes/pdp11.html PDP-11 assemblera] piezīmes. Dažos vecākos kursa uzdevumos vai tekstos varētu būt "iezagūšās" PDP asssemblera instrukcijas, piemēram "TST -(SP)". |
|||
---- |
---- |
Latest revision as of 00:32, 14 January 2010
Operētājsistēmu inženierija -M
LU DF kurss, maģistru programma, 2009.g rudens
Pasniedzējs: asoc.prof. Leo Seļāvo
Notiek: ceturtdienās, 12:30 - 16:10
Ziņu kopa: LU-OSI-M at google groups.
Lai pievienotos ziņu kopai, lūdzu sūtīt epastu Kasparam: kaspars.rinkevics pie gmail com
Praktisko un mājas darbu iesniegšana izpildāma noteiktajos datumos. Ja iesniegts tiek ar novēlošanos, rezultāts tiek samazināts par 50% pēc pirmās nokavētās dienas un tālāk par 10% par katru nākamo nokavēto dienu.
Kalendārs
Nedēļas datumi | Kursa saturs | Darbi un lasāmviela |
---|---|---|
31.08.2009. - 06.09.2009. | Reģistrācijas nedēļa | |
10.09.2009 | Ievadlekcija. Operētājsistēmas. | Pasludināts praktiskais darbs PD1, termiņš 24.09.09 12:00. |
17.09.2009 | PC aparatūra un x86 programmēšana.
Lasāmviela: Carter, Paul A. PC Assembly Language. July 23, 2006. (Piezīme: nelasīt 5, 6, and 7.2. nodaļas) Lasāmviela: Ritchie, Dennis M. "The Evolution of the Unix Time-sharing System." AT&T Bell Laboratories Technical Journal 63, no. 6, Part 2 (October 1984): 1577-93. |
Pasludināts praktiskais darbs PD2. |
24.09.2009 | OS organizācija.
Lasāmviela: Engler, D. R., Kaashoek, M. F., and O'Toole, J. 1995. Exokernel: an operating system architecture for application-level resource management. In Proceedings of the Fifteenth ACM Symposium on Operating Systems Principles (Copper Mountain, Colorado, United States, December 03 - 06, 1995). M. B. Jones, Ed. SOSP '95. ACM, New York, NY, 251-266. | |
01.10.2009 |
Adrešu apgabali lietojot segmentāciju. Lekcijas piezīmes. Lasāmviela: bootasm.S, bootother.S, bootmain.c, main.c, un init.c no xv6. | |
08.10.2009 |
Adrešu apgabali lietojot adrešu tabulas. Lekcijas piezīmes. Lasāmviela: setupsegs no xv6. Pārtraukumu un izņēmumu (exception) apstrāde. Lekcijas piezīmes. Lasāmviela: trapasm.S, trap.c, syscall.c, un usys.S no xv6. |
Pasludināts PD3 |
15.10.2009 |
Praktiskie darbi. |
PD2 nodošanas termiņš. |
22.10.2009 |
Daudzprocesoru vides un slēgšanas mehānismi (locking). Lekcijas piezīmes. Lasāmviela: spinlock.c un pārskatīt mp.c no xv6. Pavedieni, procesi un konteksta pārslēgšanās. Lekcijas piezīmes. Lasāmviela: proc.c, setjmp.S, un sys_fork (sysproc.c) no xv6. | |
29.10.2009 |
Procesi un koordinācija. Lekcijas piezīmes. Lasāmviela: proc.c, sys_exec, sys_sbrk, sys_wait, sys_exit, un sys_kill no xv6.
|
PD3 A daļas nodošanas termiņš. Pasludināts PD4. |
05.11.2009 |
Vārdu piešķiršana (naming). Lekcijas piezīmes. Lasāmviela: namei un pārējo no fs.c, sysfile.c un file.c no xv6. |
PD3 B daļas nodošanas termiņš. |
12.11.2009 |
Augstas veiktspējas failu sistēmas. Lekcijas piezīmes. Lasāmviela: Ganger, Gregory R., M. Kirk McKusick, Craig A. N. Soules, and Yale N. Patt. "Soft Updates: A Solution to the Metadata Update Problem in File Systems." ACM Transactions on Computer Systems 18, 2 (May 2000): 127-153. Vidus semestra kontroldarbs | |
19.11.2009 |
Multics un UNIX. Lekcijas piezīmes. Lasāmviela: Corbató, F. J., J. H. Saltzer, and C. T. Clingen. Multics - The First Seven Years. Presented at the Spring Joint Computer Conference, 1972. Montvale, NJ: The American Federation of Information Processing Societies Press, 1972. OS servisu abstrakcijas. Lekcijas piezīmes. Lasāmviela: Pike, Rob, Dave Presotto, Sean Dorward, Bob Flandrena, Ken Thompson, Howard Trickey, and Phil Winterbottom. Plan 9. 4th ed. Murray Hill, NJ: Bell Laboratories. |
PD4 nodošanas termiņš. Pasludināts PD5. |
26.11.2009 |
Mikrokodoli. Lekcijas piezīmes. Lasāmviela: Liedtke, Jochen. "Improving IPC by Kernel Design." 14th ACM Symposium on Operating System Principles (SOSP). Asheville, North Carolina: 5-8 December 1993. Virtuālās mašīnas. Lekcijas piezīmes. Lasāmviela: Bugnion, Edouard, Scott Devine, and Mendel Rosenblum. "Disco: Running Commodity Operating Systems on Scalable Multiprocessors." In Proceedings of the Sixteenth ACM Symposium on Operating Systems Principles. Saint-Malo, France: October 1997. | |
03.12.2009 |
Plānošana (scheduling). Lekcijas piezīmes. Lasāmviela: Mogul, Jeffrey, and K. K. Ramakrishnan. "Eliminating Receive Livelock in an Interrupt-driven Kernel." Proceedings of the USENIX 1996 Annual Technical Conference. San Diego, CA: January 1996. Mērogojama koordinācija. Lekcijas piezīmes. Lasāmviela: Mellor-Crummey, John M., and Michael L. Scott. "Algorithms for Scalable Synchronization on Shared-Memory Multiprocessors." ACM Transactions on Computer Systems 9, no. 1 (January 1991): 21-65. |
PD5 nodošanas termiņš. Pasludināts PD6. |
10.12.2009 |
Čaula (shell). Lekcijas piezīmes. Lasāmviela: Duff, Tom. "Rc - The Plan 9 Shell." Lasāmviela: Haahr, Paul, and Byron Rakitzis. "Es: A Shell with Higher-order Functions." In USENIX Technical Conference Proceedings (Winter 1993): 51-60. Drošība: OKWS. Lekcijas piezīmes. Lasāmviela: Krohn, Maxwell. "Building Secure High-Performance Web Services with OKWS." In Proceedings of the USENIX 2004 Technical Conference. Boston, MA: June 27-July 2, 2004, pp. 185-198. | |
17.12.2009 |
XFI. Lekcijas piezīmes. Lasāmviela: Erlingsson, Úlfar, Martín Abadi, Michael Vrable, Mihai budiu, and George C. Necula. "XFI: Software Guards for System Address Spaces." Presented at the Symposium on Operating System Design and Implementation (OSDI), Seattle, WA, November 6-8, 2006. OS kļūdas un testēšana. Lekcijas piezīmes. Lasāmviela: Engler, Dawson, David Yu Chen, Seth Hallem, Andy Chou, and Benjamin Chelf. "Bugs as Deviant Behavior: A General Approach to Inferring Errors in Systems Code." Symposium on Operating Systems Principles. Stanford, CA: Computer Systems Laboratory, Stanford University, 2001, pp. 57-72. |
PD6 nodošanas termiņš. |
24.12.2009. - 03.01.2010. | Ziemassvētku un Jaungada brīvdienas | |
xx.01.2010 | Projektu beigšana, gatavošanās eksāmenam un demo sesijai. | |
14.01.2010 | 12:30 Eksāmens | |
14.01.2010 | Projektu demo sesija |
Praktiskie darbi (PD)
xv6
Lekciju lasāmviela un praktiskie darbi atsaucas uz xv6 pirmkodu. Tas ir pieejams divos formātus:
- kā PDF fails (627KB)
- kā saarhivēta direktorija ar pirmkoda failiem (189KB)
- kā direktorija ar pirmkoda failiem
Saites
- Rīki
- PDP-11 assemblera piezīmes. Dažos vecākos kursa uzdevumos vai tekstos varētu būt "iezagūšās" PDP asssemblera instrukcijas, piemēram "TST -(SP)".
Citi kursi (ko lasa Leo Seļāvo) LU