• Napisz program rozwiązujący problem 5
Transkrypt
• Napisz program rozwiązujący problem 5
• Napisz program rozwiązujący problem 5-filozofów, stosując jednoczesne operacje semaforowe i rozwiązanie asymetryczne. • Napisz program rozwiązujący problem 5-filozofów, stosując kolejki komunikatów i rozwiązanie z jadalnią. • Zsynchronizuj procesy za pomocą kolejek komunikatów. Procesy: A(a1, a2, a3) B(b1, b2, b3) wykonują MAX cykli. Relacja pierwszeństwa: { (a1, b1), (b1, a2), (a3, b3) } • Napisz program w c, który tworzy kolejkę FIFO i tworzy nowy proces (fork). Za pomocą kolejki FIFO proces potomny przekazuje do procesu macierzystego tekst: „to jest tekst”, a proces macierzysty odczytuje ten tekst z FIFO po znaku i zlicza ile razy występuje w nim litera ‘t’, wynik wyświetla na ekranie. • Napisz program c, który tworzy potok nienazwany (pipe) i nowy proces (fork). Proces potomny wyświetla plik ( execvp, cat), którego nazwa jest parametrem programu (argv), a proces macierzysty odczytuje te dane z potoku i przetwarza w ten sposób, Ŝe zamienia wszystkie znaki ‘a’ na ‘A’. • Napisz program, który: a. Odczytuje wartość zmiennej LAS b. Jeśli nie jest ustawiona nadaje jej wartość „brzezina” i ponownie odczytuje i wypisuje na monitorze wartość tej zmiennej c. Jeśli jest ustawiona wczytuje datę z klawiatury wg formatu yyy/mm/dd gg:mm:ss (przykład: 2006/06/03 10:30:00) i wypisuje ją jako liczbę sekund, jaka upłynęła od początku 1970 r. • Napisz program w języku c, który analizuje argumenty wiersza poleceń pod kątem poprawności uŜytych opcji oraz ich wartości. Dopuszczalne opcje: a, b, c, d; opcja c wymaga podania wartości. • Napisz program w c, w którym: a. Odczytaj bieŜącą datę, b. zamień ją na strukturę tm, wyświetl pola tej struktury opisujące rok, miesiąc oraz dzień. c. Wprowadź dowolna datę w formacie: YYYY/MM/DD z klawiatury do bufora, d. zamień ją na strukturę tm, wyświetl pola tej struktury opisujące rok, miesiąc oraz dzień. • Napisz program, który: a. Definiuje zmienną środowiskową X1, nadając jej wartość TEKST b. Odczytuje wartość zmiennej X2 c. Jeśli X2 jest ustawiona wczytuje datę z klawiatury podaną w formacie: „YYYY – MM – DD” i wyświetla skróconą nazwę dnia tygodnia.