Reklama

W monitorze aktywności dostępna jest tajemnicza opcja menu Wyślij sygnał do procesu. Czy zastanawiałeś się kiedyś, co to było? Jeśli go wybierzesz, zobaczysz niejasne terminy, takie jak SIGINT i SIGHUP, co nie rozwiązuje problemu. Czym dokładnie są te sygnały?

Sygnały te są wynikiem Fundacja Unix Mac OS X Yosemite, z perspektywy użytkownika systemu LinuxMac OS X jest używany jako potomek plakatu dla czystego i eleganckiego interfejsu. Jako pisarz Linuksa moim obowiązkiem jest dokonywanie porównań między dystrybucjami Linuksa, ale także z konkurencją. Czytaj więcej w sercu systemu macOS. Terminal ma wbudowane niektóre z tych sygnałów: po uderzeniu Ctrl + C aby zatrzymać uruchomione polecenie, wysyłasz proces SIGINT przerwać i zatrzymać aktualnie uruchomione polecenie. Były jednym z pierwszych sposobów komunikacji między aplikacjami i są częścią starych standardów „Portable Operating System Interface” (POSIX).

Miło jest zrozumieć podstawy działania systemu, ale możesz także użyć tych sygnałów do przechwytywania informacji o niewłaściwie działających aplikacjach.

instagram viewer

Co to jest POSIX?

POSIX jest podstawowym standardem dla systemów operacyjnych Unix i Unix-podobnych. Wśród tych zgodnych systemów znajduje się macOS, który został zaprojektowany tak, aby był kompatybilny z Uniksem. Jego rdzeniem jest Darwin, rdzeń uniksowy, którego korzenie sięgają NeXTSTEP. To samo było rozwidleniem BSD, jednego z oryginalnych wariantów Uniksa.

POSIX zapewnia, że ​​wszystkie te systemy operacyjne obsługują kod w oczekiwany sposób, pozwalając programistom wiedzieć, że ich kod jest naprawdę przenośny. Gdy wysyłają jeden z tych sygnałów na innym komputerze do procesu, odzyskują dane w formacie, który mogą przewidzieć i przetworzyć. Jest to rażące uproszczenie około 40 lat historii komputerów, ale masz ogólny pomysł.

Te sygnały są najlepsze w komunikacji z najbardziej podstawowymi demonami, które tworzą uniksową bazę macOS. Demony to procesy działające w tle, które uruchamiają podstawowe funkcje komputera - lub są wspólne System operacyjny Mac język ojczysty, usługi. Niesławny odkryte jest przykładem. To był zamiennik OS X Yosemite 10.10 mDNSResponder, inna usługa obwiniany za problemy z siecią w tej aktualizacji.

Wiersz poleceń
Źródło zdjęcia: Dominik Rusiecki przez Freeimages

W zależności od sposobu, w jaki aplikacja jest zaprojektowana do odbierania sygnałów, możesz wysłać sygnał, aby zamknąć aplikację i utworzyć tak zwany zrzut podstawowy. Zrzuty podstawowe zawierają wszystkie bieżące dane o działającym programie. Są one niezbędne do rozwiązywania problemów z aplikacjami, które stale się zawieszają. Na komputerach Mac zrzuty te mają format pliku Mach-O, który można odczytać w środowisku programistycznym macOS o nazwie Xcode. Większość użytkowników prawdopodobnie nie zrobi z nimi wiele, ale jeśli odczuwasz frustrację związaną z problemem związanym z aplikacją, pomocne może być wysłanie pomocy do programisty.

Jest jeszcze jedna odrobina klasycznego informatyki pokazująca swoje korzenie. Format pliku Mach-O ma tę samą nazwę, co mikrojądro Mach. Wraz z BSD jest to część korzeni systemu macOS, a oba są częścią podstawowego jądra, XNU. Mach nie jest tak popularny jak BSD, więc nie zyskuje dużo prasy, ale jest częścią tego, co odróżnia system operacyjny Apple od innych wariantów Uniksa.

Jak więc mogę z nich korzystać?

Wszyscy byliśmy tam wcześniej: dostajesz zaktualizuj aplikację lub pobierz nową Jak zainstalować i usunąć oprogramowanie Mac: 5 łatwych metodZmieniłeś komputer na Maca i opanowałeś podstawy? Zastanawiasz się, jak zainstalować oprogramowanie z wiersza poleceń? Masz stare aplikacje systemu Windows, które po prostu musisz uruchomić na komputerze Apple? Czytaj więcej i zawiesza się przy każdym otwarciu. Otwierasz Force Quitz Apple Menu i zobacz, jak Aplikacja wyświetla się jako Nie odpowiada. Co gorsza, to proces w tle przeciąga twój system w dół.

Monitor aktywności

otwarty Monitor aktywności i kliknij proces, który nie odpowiada. Następnie przejdź do Widok menu i wybierz Wyślij sygnał do przetworzenia. Zostanie wyświetlone menu, w którym można wybrać sygnał, który ma zostać wysłany do procesu, wybrać sygnał i nacisnąć Wysłać.

Jeśli wolisz terminal 4 fajne rzeczy, które możesz zrobić z terminalem MacTerminal jest analogiem Mac OS X z wiersza polecenia systemu Windows lub CMD. Jest to narzędzie, jak zapewne już wiesz, które pozwala kontrolować komputer za pomocą poleceń tekstowych, w przeciwieństwie do ... Czytaj więcej , użyjesz polecenia, które już znasz. The zabić polecenie służy do zatrzymania procesu. Jeśli dodasz -s możesz dodać numer, aby wysłać sygnał do procesu, który zabijasz. Oto lista wielu wspólnych poleceń z listy zabić strona podręcznika:

  • 1 - HUP (rozłącz się)
  • 2 - INT (przerwanie)
  • 3 - ZAKOŃCZ (zakończ)
  • 6 - ABRT (przerwanie)
  • 9 - KILL (nie do złapania, nie do zapomnienia)
  • 15 - TERM (sygnał zakończenia oprogramowania)

Możesz również wysłać kilka innych sygnałów, są one najczęściej spotykane. Istnieje pełna lista kody dostępne tutaj.

Kiedy ich używam?

Teraz, gdy wiesz, co zrobić z sygnałami POSIX, możesz użyć ich do czystego zatrzymania zawieszonych procesów. Szczerze mówiąc, nie będziesz używać tych kodów codziennie. Podczas pracy z deweloperem przy dziwnej awarii aplikacji lub pomocy sysadmin w testowaniu aplikacji wewnętrznych Twojej firmy kody te mogą pomóc w uzyskaniu potrzebnych informacji.

Jeśli aplikacja jest zakodowana do tworzenia zrzutów, znajdziesz je w katalogu /cores co czyni ten katalog łatwym do przejrzenia podczas pobierania danych dla aplikacji powodującej awarię lub zawieszenia. Możesz sprawdzić tutaj i zobaczyć, jakie zrzuty znajdują się w katalogu, używając ls -a Komenda. Spowoduje to wyświetlenie wszystkich plików w tym katalogu, a następnie skopiowanie ich do łatwiej dostępnego katalogu muzycznego polecenia nazwa pliku docelowego mv.

W Terminal Użyj polecenie cd / rdzenie aby przejść do katalogu ls -a aby wyświetlić zawartość. Aby przenieść plik do folderu Dokumenty, wystarczy użyć mv nazwa pliku / Użytkownicy / nazwa użytkownika / Dokumenty (zastępując Nazwa pliku i Nazwa Użytkownika).

makak
Źródło zdjęcia: Erika Varga przez Freeimages

Jeśli jesteś wieloletnim użytkownikiem systemu Unix, który przeniósł się na komputer Mac, jakie są inne mało znane funkcje? Jeśli chcesz sprawdzić projekt, który korzysta tylko z Podstawa open source systemu macOS sprawdź PureDarwin. Daj nam znać, jak to wyszło w komentarzach. Chcielibyśmy również usłyszeć, kiedy sygnały POSIX rozwiązały uporczywy problem z komputerem Mac.

Czy korzystałeś już z sygnałów POSIX do rozwiązywania problemów?

Kredyty graficzne: Dean Drobot / Shutterstock

Michael nie używał komputera Mac, kiedy byli skazani na zagładę, ale potrafi pisać w Applescript. Ukończył informatykę i angielski; od jakiegoś czasu pisze o Macu, iOS i grach wideo; i od ponad dekady jest małpą IT dnia, specjalizującą się w skryptach i wirtualizacji.