Entrambe le parti precedenti la revisioneRevisione precedenteProssima revisione | Revisione precedente |
informatica:sol:laboratorio21 [31/01/2021 alle 16:04 (4 anni fa)] – [Lezioni ed esercitazioni] Massimo Torquati | informatica:sol:laboratorio21 [19/01/2025 alle 16:54 (8 settimane fa)] (versione attuale) – [Informazioni pratiche] Massimo Torquati |
---|
| |
Motto: //Talk is cheap. Show me the code// Linus Torvalds (2000-08-25). Message to linux-kernel mailing list. | Motto: //Talk is cheap. Show me the code// Linus Torvalds (2000-08-25). Message to linux-kernel mailing list. |
| |
| ====== **Chi deve sostenere il vecchio esame SOL (Sistemi Operativi e Laboratorio) è pregato di contattare il docente.** ====== |
| |
| Prof. Massimo Torquati <[email protected]> |
| |
===== Informazioni pratiche ===== | ===== Informazioni pratiche ===== |
* Vedi il [[informatica:sol:laboratorio:programma|il programma del corso]] per i prerequisiti ed il programma di massima. | * Vedi il [[informatica:sol:laboratorio:programma|il programma del corso]] per i prerequisiti ed il programma di massima. |
* Docenti: | * Docenti: |
* (**Corso A**) [[ | Alessio Conte]] | * (**Corso A**) [[https://unimap.unipi.it/cercapersone/dettaglio.php?ri=136624| Alessio Conte]] |
* Orario: Martedì 14:00--16:00 Venerdì 9:00--11:00 | * Orario Lezioni: Martedì 14:00--16:00 Venerdì 9:00--11:00 |
* (**Corso B**) [[http://www.di.unipi.it/~torquati/|Massimo Torquati]], stanza 287/DE, Dip. Informatica | * (**Corso B**) [[http://www.di.unipi.it/~torquati/|Massimo Torquati]] [[http://www.di.unipi.it/~mencagli/| Gabriele Mencagli]], stanza 287/DE, Dip. Informatica |
* Orario: Martedì 14:00--16:00 Giovedì 11:00--13:00 | * Orario Lezioni: Martedì 14:00--16:00 Giovedì 11:00--13:00 |
* **Ricevimento elettronico**: contattate il docente per posta elettronica. | * **Ricevimento elettronico**: contattate il docente per posta elettronica. |
* Ricevimento tradizionale : | * Ricevimento tradizionale : |
* (Corso A): | * (Corso A): Conte (Martedì 16:00 - 18:00) |
* (Corso B): | * (Corso B): Torquati (Lunedì 16:00 - 18:00) Mencagli (Venerdì 11:00 - 13:00) |
| |
| |
Link al canale MS Teams di Laboratorio: | Link al canale MS Teams di Laboratorio: |
[[https://teams.microsoft.com/l/team/19%3Ad7dd3f9cff974e9289570eb0688ccded%40thread.tacv2/conversations?groupId=9fea6d64-5345-42ea-bf36-2241674db70a&tenantId=c7456b31-a220-47f5-be52-473828670aa1| Laboratorio di Sistemi Operativi (CorsoA e Corso B)]] | [[https://teams.microsoft.com/l/team/19%3Ad7dd3f9cff974e9289570eb0688ccded%40thread.tacv2/conversations?groupId=9fea6d64-5345-42ea-bf36-2241674db70a&tenantId=c7456b31-a220-47f5-be52-473828670aa1| Laboratorio di Sistemi Operativi (CorsoA e Corso B)]] |
| |
| |
| |
| [[https://discord.gg/T7ZHxYvae6| Canale Discord per esercitazioni]] |
| |
| [[https://docs.google.com/spreadsheets/d/1b2otocpcmt2v-Bpupyqffq6oHNPhjvwURgOZb-AK3ms/edit?usp=sharing| Gruppi per esercitazioni (CorsoA e Corso B)]] |
| |
===== Avvisi urgenti ===== | ===== Avvisi urgenti ===== |
Per gli avvisi urgenti controllare la pagina degli [[informatica:sol:laboratorio21:avvisi|avvisi]]. E' possibile richiedere di essere avvisati automaticamente (via email) ogni volta che un nuovo avviso viene aggiunto alla pagina. Seguire le istruzioni indicate nella pagina stessa. | Per gli avvisi urgenti controllare la pagina degli [[informatica:sol:laboratorio21:avvisi|avvisi]]. E' possibile richiedere di essere avvisati automaticamente (via email) ogni volta che un nuovo avviso viene aggiunto alla pagina. Seguire le istruzioni indicate nella pagina stessa. |
E' disponibile un disco virtuale (formato .vmdk) contenente una installazione completa di [[http://xubuntu.org|XUbuntu]] con tutti gli strumenti di sviluppo richiesti per il corso, che può essere fatta partire utilizzando (ad esempio) il sistema di virtualizzazione [[http://www.virtualbox.org|VirtualBox]]. [[http://calvados.di.unipi.it/storage/teaching/LinuxVM/README.pdf| Qui]] è possibile scaricare alcune semplici note (in formato pdf) che descrivono come creare una macchina virtuale (VM) sotto VirtualBox partendo da un disco esistente. Il disco virtuale compresso (.zip) della VM è scaricabile seguendo il [[http://calvados.di.unipi.it/storage/teaching/LinuxVM/xubuntu.vmdk.zip| link]] (circa 3GB !). | E' disponibile un disco virtuale (formato .vmdk) contenente una installazione completa di [[http://xubuntu.org|XUbuntu]] con tutti gli strumenti di sviluppo richiesti per il corso, che può essere fatta partire utilizzando (ad esempio) il sistema di virtualizzazione [[http://www.virtualbox.org|VirtualBox]]. [[http://calvados.di.unipi.it/storage/teaching/LinuxVM/README.pdf| Qui]] è possibile scaricare alcune semplici note (in formato pdf) che descrivono come creare una macchina virtuale (VM) sotto VirtualBox partendo da un disco esistente. Il disco virtuale compresso (.zip) della VM è scaricabile seguendo il [[http://calvados.di.unipi.it/storage/teaching/LinuxVM/xubuntu.vmdk.zip| link]] (circa 3GB !). |
| |
| == WSL (Utenti Windows 10) == |
| |
| Per Windows 10 è disponibile WSL (Windows Subsystem for Linux) che consente di utilizzare una shell linux direttamente in Windows. |
| E' decisamente più comodo di VirtualBox per piccoli programmi, ma per assicurare la compatibilità è bene testare il progetto finale su VirtualBox prima della consegna. |
| |
| * [[https://docs.microsoft.com/en-us/windows/wsl/install-win10|Istruzioni installazione WSL]] |
| * Il disco C di Windows si torvera' in /mnt/c/ |
| * Si puo modificare la cartella iniziale della shell tramite il file ".bashrc" nella cartella home, tramite il comando: |
| <code bash> |
| echo "cd /mnt/c/" >> ~/.bashrc |
| </code> |
| (o in qualsiasi cartella si preferisce, as es in C:/questa/cartella/qui/ sostituendo '/mnt/c/' con '/mnt/c/questa/cartella/qui/') |
| * E' disponibile "sudo apt install" per installare software, come tutti gli altri comandi normalmente disponibili su Linux (e' una vera distribuzione Linux, non un emulatore) |
| * Va installato il compilatore 'gcc' eseguendo i comandi 'sudo apt update' e poi 'sudo apt install gcc' |
| * L'ambiente grafico può essere [[https://virtualizationreview.com/articles/2017/02/08/graphical-programs-on-windows-subsystem-on-linux.aspx|installato separatamente]], ma ai fini del corso non e' necessario. |
| * [[https://docs.microsoft.com/en-us/windows/wsl/faq|FAQs su WSL]] |
==== Altro materiale ==== | ==== Altro materiale ==== |
* (su Unix con introduzione alla programmazione di shell) G. Glass, K. Ables. **UNIX for Programmers and Users**, Prentice Hall, 1999.\\ In particolare per la introduzione ai comandi Unix si possono consultare i capitoli 2 e 3 e per la programmazione bash servono i capitoli 4 e 5. | * (su Unix con introduzione alla programmazione di shell) G. Glass, K. Ables. **UNIX for Programmers and Users**, Prentice Hall, 1999.\\ In particolare per la introduzione ai comandi Unix si possono consultare i capitoli 2 e 3 e per la programmazione bash servono i capitoli 4 e 5. |
* Altre informazioni in linea (bash, make tec.) //ESC-X info// da emacs. | * Altre informazioni in linea (bash, make tec.) //ESC-X info// da emacs. |
* Il sito di riferimento per le specifiche standard di tutte le funzioni SC e librerie [[http://www.unix.org/version3/online.html|Open Group SUS (Single Unix Specification)]]. E' gratuito (basta registrarsi). | * Il sito di riferimento per le specifiche standard di tutte le funzioni SC e librerie [[http://www.unix.org/version3/online.html|Open Group SUS (Single Unix Specification)]]. E' gratuito (basta registrarsi). |
* [[http://pauillac.inria.fr/~xleroy/linuxthreads/faq.html|LinuxThreads Frequently Asked Questions | * [[https://web.fe.up.pt/~jmcruz/etc/threads/linuxthreads-faq.html|LinuxThreads Frequently Asked Questions (with answers)]] |
(with answers)]] | |
* Alcuni tool utili: [[http://valgrind.org|valgrind]], [[http://www.doxygen.org|doxygen]], [[http://gcc.gnu.org/onlinedocs/gcc/Gcov.html|gcov]], [[http://ltp.sourceforge.net/coverage/lcov.php|lcov]], [[http://www.splint.org/|splint]] [[http://www.cs.utah.edu/dept/old/texinfo/as/gprof.html|gprof]] | * Alcuni tool utili: [[http://valgrind.org|valgrind]], [[http://www.doxygen.org|doxygen]], [[http://gcc.gnu.org/onlinedocs/gcc/Gcov.html|gcov]], [[http://ltp.sourceforge.net/coverage/lcov.php|lcov]], [[http://www.splint.org/|splint]] [[http://www.cs.utah.edu/dept/old/texinfo/as/gprof.html|gprof]] |
* Confronto fra bash e dash: [[http://princessleia.com/plug/2008-JP_bash_vs_dash.pdf| trasparenze con le differenze principali]] | * Confronto fra bash e dash: [[http://princessleia.com/plug/2008-JP_bash_vs_dash.pdf| trasparenze con le differenze principali]] |