---
# System prepended metadata

title: Zasady zaliczenia egzaminu z Systemów komputerowych 2024 na podstawie referatu
tags: [pwit, SYK24]

---

# Zasady zaliczenia egzaminu z Systemów komputerowych 2024 na podstawie referatu

###### tags: `SYK24` `pwit`

## Zasady

Zreferowanie wybranej publikacji z dziedziny systemów komputerowych jest alternatywnym sposobem zaliczenia egzaminu, do którego zachęcam (ale nie zmuszam) osoby posiadające ocenę z ćwiczeń **4.5** lub wyższą.

Należy:
* wybrać jeden z poniższych artykułów lub rozdziałów
* slot czasowy 45. minut, w godzinach 10.15--20 najlepiej w dniach 27, 28 czerwca, 1 -- 3 lipca. Można też zaproponować inny termin. 
* zgłosić mi swój wybor mailowo (adres: pwit@cs.uni.wroc.pl). Przyjęcie zgłoszenia zostanie potwierdzone odpowiednim wpisem w tym dokumencie. Decyduje kolejność.


Referaty zostaną przedstawione podczas zdalnego spotkania na teamsowym kanale wykładu. Można, a nawet trzeba, posługiwać się notatkami (np. zredagowanymi w hackmd.io) i własnymi rysunkami (ręcznie, np. w paincie). Należy założyć życzliwość, ale dociekliwość egzaminującego. Spotkania są otwarte, może w nich uczestniczyć każdy.

Każdy punkt (kropka) to osobny temat.



## Tematy do zreferowania


### Sprzętowa implementacja operacji arytmetycznych

Rozdziały z książki pt. 
>   Israel Koren. 2001. Computer Arithmetic Algorithms (2nd. ed.).

* Rozdział 5. Szybkie dodawanie)
* Rozdział 6. Szybkie mnożenie
* Rozdział 7. Szybkie dzielenie
* Rozdział 8. Dzielenie z użyciem mnożenia



### Analiza przepływu danych
Rozdziały z książki pt. 
> Flemming Nielson, Hanne R. Nielson, and Chris Hankin. 2010. Principles of Program Analysis.


* Rozdział 2.5. Analiza międzyproceduralna 
* Rozdział 2.6. Analiza kształtu sterty






### Architektury procesorów i przetwarzanie potokowe

* [McFarling, S., and J. Hennessy [1986]. “Reducing the cost of branches,” Proc.
13th Annual Int’l. Symposium on Computer Architecture (ISCA), June 2–5,
1986, Tokyo, 396–403.](http://www.cs.binghamton.edu/~ghose/CS522/papers/mcfarlinghennesseyISCA86.pdf)
* [T. Juan, S. Sanjeevan and J. Navarro,  "Dynamic History-Length Fitting: A Third Level of Adaptivity for Branch Prediction," in Computer Architecture, International Symposium on, Barcelona, Spain, 1998 pp. 0155.](https://www.cs.binghamton.edu/~ghose/CS522/papers/DynamicHistoryLengthFittingPredictor.pdf)
* [M. Moudgill and S. Vassiiadis, "Precise interrupts," in IEEE Micro, vol. 16, no. 1, pp. 58-67, Feb. 1996.](https://www.cs.binghamton.edu/~ghose/CS522/papers/MoudgillVassiliadisPreciseInterrupts.pdf)
* [J. E. Smith and A. R. Pleszkun, "Implementing precise interrupts in pipelined processors," in IEEE Transactions on Computers, vol. 37, no. 5, pp. 562-573, May 1988.](https://www.cs.binghamton.edu/~ghose/CS522/papers/SmithPleszkun.pdf)
* [Shlomo Weiss and James E. Smith. 1984. Instruction issue logic for pipelined supercomputers. In Proceedings of the 11th annual international symposium on Computer architecture (ISCA '84). Association for Computing Machinery, New York, NY, USA, 110–118.](https://www.cs.binghamton.edu/~ghose/CS522/papers/WeissSmithPaper.pdf)
* [Shien-Tai Pan, Kimming So, and Joseph T. Rahmeh. 1992. Improving the accuracy of dynamic branch prediction using branch correlation. SIGPLAN Not. 27, 9 (Sept. 1992), 76–84.](https://www.cs.binghamton.edu/~ghose/CS522/papers/pansorahmeh.pdf)
* [James E. Smith. 1981. A study of branch prediction strategies. In Proceedings of the 8th annual symposium on Computer Architecture (ISCA '81). IEEE Computer Society Press, Washington, DC, USA, 135–148.](https://www.cs.binghamton.edu/~ghose/CS522/papers/smith81isca.pdf)
* [Tse-Yu Yeh and Yale N. Patt. 1992. Alternative implementations of two-level adaptive branch prediction. SIGARCH Comput. Archit. News 20, 2 (May 1992), 124–134.](https://www.cs.binghamton.edu/~ghose/CS522/papers/yehpattISCA92.pdf)
* [Marius Evers, Sanjay J. Patel, Robert S. Chappell, and Yale N. Patt. 1998. An analysis of correlation and predictability: what makes two-level branch predictors work. SIGARCH Comput. Archit. News 26, 3 (June 1998), 52–61.](https://www.cs.binghamton.edu/~ghose/CS522/papers/everspatelchappellpatt.pdf)
* [Tendler, J. M., J. S. Dodson, J. S. Fields, Jr., H. Le, and B. Sinharoy [2002].
“Power4 system microarchitecture,” IBM J. of Research and Development,
46:1, 5–26.](https://www.researchgate.net/publication/234816490_POWER4_system_microarchitecture)


### Hierarchia pamięci i pamięci podręczne

Rozdziały z książki pt. 
> Bruce Jacob, Spencer Ng, and David Wang. 2007. Memory Systems: Cache, DRAM, Disk (2nd . ed.) 

* Rozdział 2. Różne organizacje pamięci podręcznych
* Rozdział 3. Zarządzanie zawartością pamięci podręcznych. Uwaga: ten rozdział jest długi i złożony! Można wybrać sobie fragment! 
* Rozdział 4. Zarządzanie spójnością w pamięciach podręcznych

### Pamięć wirtualna

Rozdział z książki pt. 
> Abraham Silberschatz, Peter Baer Galvin, Greg Gagne. Operating System Concepts (10th ed.)

* Rozdział 10. Pamięć wirtualna

Rozdział z książki pt. 
> Bruce Jacob, Spencer Ng, and David Wang. 2007. Memory Systems: Cache, DRAM, Disk (2nd . ed.) 

* Rozdział 31. Pamięć wirtualna



### Planowanie przydziału procesora

* [Carl A. Waldspurger, William E. Weihl. Lottery Scheduling: Flexible Proportional-Share Resource Management](https://www.usenix.org/legacy/publications/library/proceedings/osdi/full_papers/waldspurger.pdf)
* [Dan Tsafrir, Yoav Etsion, Dror G. Feitelson. Secretly Monopolizing the CPU Without Superuser Privileges](https://www.usenix.org/conference/16th-usenix-security-symposium/secretly-monopolizing-cpu-without-superuser-privileges)
* [Jason Nieh, Chris Vaill, Hua Zhong. Virtual-Time Round-Robin:
An O(1) Proportional Share Scheduler](https://www.usenix.org/legacy/publications/library/proceedings/usenix01/full_papers/nieh/nieh.pdf)
* [Stephen Molloy, Peter Honeyman. Scalable Linux Scheduling](https://www.usenix.org/legacy/publications/library/proceedings/usenix01/freenix01/full_papers/molloy/molloy.pdf)
* [Bryan Ford, Sai R. Susarla, CPU Inheritance scheduling](https://bford.info/pub/os/inherit-sched.pdf)
* [David C. Steere, Ashvin Goel, Joshua Gruenberg, Dylan McNamee, Calton Pu, Jonathan Walpole. A Feedback-driven Proportion Allocator for Real-Rate Scheduling](https://www.usenix.org/legacy/publications/library/proceedings/osdi99/full_papers/steere/steere.pdf)
* [Mark Weiser, Brent Welch, Alan Demers, Scott Shenker. Scheduling for Reduced CPU Energy](http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.1064.5234&rep=rep1&type=pdf)
* [Jason Nieh, Monica S. Lam. The Design, Implementation and Evaluation of SMART:
A Scheduler for Multimedia Applications](https://lass.cs.umass.edu/~shenoy/courses/spring01/papers/smart-sosp.pdf)

### Synchronizacja procesów


Rozdział z książki pt. 
> Abraham Silberschatz, Peter Baer Galvin, Greg Gagne. Operating System Concepts (10th ed.)

* Rozdział 8. Zakleszczenia


Rozdział z książki pt. 
> 
>Maurice Herlihy, Nir Shavit. The Art of Multiprocessor Programming,  (2nd. ed.). 

* Rozdział 6. Uniwersalność problemu konensusu



### Varia

#### Algorytm buforowania bloków dyskowych w klasycznym Uniksie
* Rozdział 3 z ksiązki pt. 
> Maurice J. Bach. 1986. The design of the UNIX operating system.


### Temat własny
Można zaproponować własny temat.




## Przydział referatów


| Imię i nazwisko     | Temat | Data | 
|-----------------    |-------| -----|
| Viktoriia Kashpruk  | Rozdział 10. Pamięć wirtualna| 05.07, g. 8.00   |
| Wiktor Małek | rozdział 2.  - Hierarchia Pamięci i Pamięci podręczne       | 02.07. g 10      |
| Szymon Fluder | Architektury procesorów i przetwarzania potokowego "James E. Smith. 1981. A study of branch prediction strategies.|  01.07, g. 11.00     |
|Bartosz Kruszewski  |Bryan Ford, Sai R. Susarla, CPU Inheritance scheduling  |4.07 g. 19.15 |
|Hanna Laszkiewicz |  Bruce Jacob, Spencer Ng, and David Wang. 2007. Memory Systems: Cache, DRAM, Disk (2nd ed.) - rozdział 31. - Pamięć wirtualna | 3.07, g. 18.15 | 