Dlaczego możliwości konsoli utknęły w latach siedemdziesiątych? [Zamknięte]

-2

Jak daleko zaszliśmy w ciągu ostatnich 30 do 40 lat. Koncerty pamięci RAM. Terabajty miejsca na dysku. Procesory gigahercowe. Płaskie wyświetlacze 4K i 5K.

Moja konsola ma niesamowitą, poczekaj na nią, 80x25 znaków i 16 kolorów ANSI. Utknął w latach siedemdziesiątych. Mimo że moja karta graficzna ma 4 GB pamięci RAM, 10-bitowy kolor i tak dalej, konsola z niej nie korzysta.

Tak, mogę uruchomić X11 lub użyć konsoli bufora ramki. Ale dlaczego muszę? Jaki jest nie do pokonania problem zapewnienia lepszej konsoli, powiedzmy, skromnych 256 kolorów? Zostawiliśmy za sobą inne standardy, spaliliśmy mosty (ISA? Real Mode? Przycisk Turbo? Kompatybilny z IBM?), Dlaczego w końcu nie zaimponować konsoli VGA ?

Jens
źródło
3
twoje pytanie jest zbyt ogólne, a jednocześnie opiera się na głównej opinii. Zajrzyj do centrum pomocy i spróbuj ponownie sformułować frazę.
Máté Juhász,
5
możesz ustawić rozmiar konsoli na inne, które ci się podobają, do 255 x 9999. Nie sądzę, żeby były jakieś techniczne problemy z uczynieniem go bardziej wyrafinowanym, ale po co ? Ludzie, którzy używają konsoli zwykle nie dbają o kolory i szminkę, i chcą, aby coś zrobić szybko, bezpośrednio i prosto.
Aganju
2
Specyfikacje emulacji terminali, które istnieją już od dziesięcioleci (emulacja VT-100), w celu zapewnienia zgodności ze starszym sprzętem, takim jak terminale komputerów mainframe (których nie można ponownie skonfigurować), urządzenia korzystające z komunikacji Com / port szeregowy w celu uzyskania dostępu itp. Vt100.net/emu pl .wikipedia.org / wiki / VT100
Frank Thomas
@Jens Dlaczego nie rozejrzałeś się ?! fishshell.com
g2mk
@ MátéJuhász Nie rozumiem, gdzie pojawia się opinia (inna niż moja, że ​​16 kolorów jest żałosna). Musi być jakiś powód techniczny i to jest odpowiedź, której szukam.
Jens

Odpowiedzi:

6

Jeśli chodzi konkretnie o Linuksa, zwykle słyszę, że „nie chcemy tego w jądrze”. Zwłaszcza jeśli chodzi o czcionki i języki - żaden programista jądra nie chce upaść po dodaniu obsługi TTF, antyaliasingu, RTL, animowanych emoji, ostatecznie uruchamiając wszystkie freetype2 i ICU w przestrzeni jądra.

Zamiast tego umieszczają w jądrze to, co ma sens w jądrze - takie jak sterowniki graficzne wraz z KMS. Jeśli używasz sterowników open-source z obsługą KMS, konsola automatycznie przełączy się w swojej natywnej rozdzielczości ekranu - jak bufora ramki, ale bez jakiejkolwiek ręcznej konfiguracji. Praktycznie wszystkie dystrybucje Linuksa domyślnie widziałem bootowanie do bufora ramki KMS o wysokiej rozdzielczości.

Gdy masz już evdev do wprowadzania danych i KMS dla danych wyjściowych, przestrzeń użytkownika może dobrze obsługiwać konsolę - np. Poprzez kmscon lub fbterm . Istnieją nawet niejasne plany, aby ostatecznie wyłączyć obsługę VT jądra, pozostawiając tylko jeden tty1 dla zadań wczesnego rozruchu i ratowania oraz pozwalając przestrzeni użytkownika zająć się resztą.

grawitacji
źródło
2

Konsole zwykle obsługują 256 kolorów, chociaż może być konieczna zmiana niektórych ustawień, aby włączyć je wszędzie, patrz np. Http://www.robmeerman.co.uk/unix/256colours

Limit 80x25 powinien zniknąć, jeśli zmienisz rozmiar okna terminala, co pozwoli wypełnić 30-calowy ekran większą liczbą znaków, niż jest to wygodne.

Wim
źródło
Czytać można ponad 80 znaków?!? baymard.com/blog/line-length-readability
g2mk
@ g2mk, myślę, że poważnie nie doceniasz, jak denerwujące jest czytanie 80-znakowych wierszy kodu. wszystko jest przerywane, więc bardzo trudno jest śledzić poziomy bloków i wcięć, zachęca do dziwnego używania białych znaków o stałej szerokości itp. Dokument może być odpowiedni do wydruku stron internetowych, ale wcale nie koszerny do odczytu kodu, który je tworzy .
Frank Thomas
To łącze wydaje się odnosić do emulatorów terminali, takich jak xterm w trybie 256 kolorów. Pytanie brzmi: czy mogę uzyskać 256 kolorów na konsoli (bez X11, bez bufora ramki), na przykład FreeBSD?
Jens
@FrankThomas To nie jest mój dokument: P Długość linii ma największe znaczenie, gdy trzeba czytać długie bloki tekstu jednokolorowego. Czytelność kodu w wielu kolorach jest nieco inna - chodzi o standard kodowania i spójność. Jednak osobiście nadal wolę wcięcia powyżej długich linii.
g2mk,
2

Ponieważ nie ma takiej potrzeby.

W czasach, gdy pamięć była kosztowna, a procesory działały wolno, sprzętowe tryby tekstowe miały sens, ponieważ były szybsze i wymagały mniej pamięci. W dzisiejszych czasach komputery są wystarczająco mocne i mają wystarczającą pamięć, aby koszty posiadania prostego bufora ramki i implementacji wyświetlania tekstu w oprogramowaniu były znikome.

Zasadniczo projektowanie i debugowanie sprzętu jest drogie, więc stanie się tak tylko wtedy, gdy będzie na to zapotrzebowanie genunine. Starsze tryby tekstowe są zachowywane ze względu na zgodność z poprzednimi wersjami, ale nie ma potrzeby wprowadzania nowych, gdy oprogramowanie o wysokiej rozdzielczości rozwiąże problem.

płyn do płukania
źródło
1

W wieku VGA, 80x50 stało się szeroko wspierane i używane przez niektórych. Jednak na żałosnych 14-calowych monitorach tego dnia niektórym trudno było czytać.

W erze Super VGA pracowaliśmy w trybie 132 kolumnowym. Rzędy mogą mieć 25, 50, 60 lub inne wartości. Wystąpiły jednak pewne problemy ze zgodnością.

Teraz wiele urządzeń może to obsługiwać. A jednak używasz formatu 80x25. Dlaczego? Ponieważ używasz ustawień domyślnych. Domyślne ustawienia to bardzo mało osób.

W końcu GRUB zaczął jednak obsługiwać grafikę, więc niektórzy ludzie majstrowali przy niektórych wzrostach. Ogólnie rzecz biorąc, takie rzeczy były nowością. Jeśli naprawdę chcesz mieć więcej wierszy i kolumn, nie ma powodu, aby prosić kartę wideo o użycie trybu wideo, który nazywa „tekstem”, zamiast używania trybu wideo, który nazywa „grafiką”. Z biegiem lat zwiększyliśmy możliwości graficzne. Rzeczy takie jak 256 kolorowych terminali lub wyższe kolory, a nawet takie jak folie, istnieją. Po prostu nazywamy je trybami „graficznymi”.

Myślę, że celem „trybu tekstowego” jest to, że karta graficzna może załadować wcześniej zdefiniowaną czcionkę, a następnie wyświetlić niektóre grafiki (które nazywamy „znakami”) przy użyciu niewielkiej ilości pamięci, zamiast powtarzać to samo kombinacje pikseli przy użyciu większej ilości pamięci. Stało się tak, że mieliśmy po prostu mniej powodów do obaw o takie oszczędności pamięci. Standardy przyspieszania sprzętowego pozwoliły nam zastosować różne techniki w celu optymalizacji prędkości. Karty graficzne mają wystarczającą ilość pamięci, aby nie musiały używać specjalnego trybu wideo zaprojektowanego do próby załadowania wiązki pikseli ułożonych w formatach, które nazywamy czcionkami.

TOOGAM
źródło
1

dlaczego w końcu nie zaimponować konsoli VGA?

Mylisz pojęcie konsoli ze starym trybem tekstowym w stylu MDA.

Ten tryb tekstowy to konfiguracja urządzenia / wyświetlacza, która może wyświetlać tekst konsoli, ale tekst z konsoli może pojawić się na dowolnym urządzeniu lub programie, który rozumie protokół używany przez konsolę. PuTTY to program przeznaczony do tego celu, który ma więcej możliwości, takich jak wspomniana obsługa 256 kolorów i możliwość wyświetlania ekranów innych niż 80x25.

Jeśli chodzi o to, dlaczego tryb tekstowy w stylu MDA nie został zmieniony, no cóż, karty graficzne dodały więcej możliwości, ale zachowały tryb tekstowy w stylu MDA dla kompatybilności. Pamiętaj, że wszystkie współczesne procesory AMD / Intel nadal uruchamiają się w trybie zgodności z 8086 na wypadek, gdybyś nadal chciał uruchomić DOS, a DOS nadal oczekuje trybu tekstowego 80x25 podczas uruchamiania.

Linux obsługuje do wyświetlania elementy inne niż tryb tekstowy w stylu MDA lub X11, może używać buforów ramki jako trybu tekstowego z obsługą 256 kolorów, a nawet obrazu.

Dlaczego możliwości konsoli utknęły w latach siedemdziesiątych?

  • Podstawową zasadą inżynierii jest KISS. Możliwości konsoli są proste, więc oprogramowanie i sprzęt, który je implementuje, jest prosty i łatwy w obsłudze.

  • RS-232 działa dobrze z podstawowymi I / O konsoli. Istnieje wiele starszych i obecnych urządzeń, które używają RS-232 12v i prawdopodobnie tyle samo nowszych, które używają RS-232 3v. Jest to powszechnie akceptowany standard sprzętowy, który sprawia, że ​​wejścia / wyjścia konsoli są oczekiwaną rzeczą na wielu urządzeniach z tym sprzętem.

  • Dlatego też sensowne jest posiadanie we / wy konsoli jako początkowej metody we / wy po włączeniu zasilania i ostatniej metody komunikacji, gdy wszystko inne zawiedzie. W takim przypadku zazwyczaj przekazujesz komunikaty o stanie lub informacje o błędach i nie potrzebujesz wielu dzwonków i gwizdków.

  • Również z powodu tej prostoty przekierowanie we / wy konsoli do pliku lub innego urządzenia jest również stosunkowo łatwe. Na przykład na wielu serwerach tekst początkowy po włączeniu jest wyświetlany nie tylko na ekranie VGA, ale opcjonalnie przekierowany na port szeregowy. Oznacza to, że nie potrzebujesz podłączonego do niego monitora, co pomaga w centrum danych, które potencjalnie może mieć setki lub tysiące serwerów. To samo dotyczy innych urządzeń, które używają konsoli I / O lub RS-232 jak urządzenia przemysłowe itp.

LawrenceC
źródło