Linus Torvalds kończy obsługę sterownika stacji dyskietek

stacja dyskietek

Kiedy Linus Torvalds stworzył Linuksa w 1991 roku, komputer, z którym pracował jak te z tamtych era została wyposażona w napęd dyskietek. I teraz wsparcie dla tego dobiegło końca. Ponieważ w niedawnej publikacji twórca słynnego systemu operacyjnego typu open source zapowiada zaprzestanie konserwacji sterowników dla stacji dyskietek.

Rozejrzenie się dookoła pozwala w pewnym stopniu zrozumieć tę notatkę informacyjną. W rzeczywistości wystarczy zauważyć, że większość laptopów, a nawet komputerów stacjonarnych wprowadzanych obecnie na rynek nie ma stacji dyskietek.

„Tego typu sprzęt na rynku jest obecnie coraz trudniejszy do znalezienia. Ten, który jest nadal dostępny na straganach, jest oparty na USB. Nagle oryginalny sterownik nie jest już przeszukiwany ”- mówi Torvalds.

Z tym nie będzie już osoby odpowiedzialnej za utrzymanie wsparcia dla sterownika dyskietki dla systemu Linux, Przynajmniej na razieponieważ Linus korzysta z okazji, aby przyciągnąć zainteresowane strony trzecie.

Jednak sterownik pozostaje dostępny, aby zapewnić obsługę maszyn wirtualnych, które nadal są od niego zależne.

Dla nowych pokoleń, które nie wiedzą o dyskietkach lub dyskietka Mogę powiedzieć, że jest to nośnik danych typu magnetycznego, utworzony z cienkiego okrągłego arkusza (dysku) magnesowalnego i elastycznego materiału (stąd jego nazwa), zamkniętego w plastikowej obudowie, kwadratowej lub prostokątnej, która była używana w komputerze np. na dysk rozruchowy, do przenoszenia dane i informacje z jednego komputera do drugiego lub po prostu do przechowywania i zabezpieczania plików.

Oto te na obrazku:

Dyskietka

Potrzeba dalszego gwarantowania tego komponentu, który zyskał przychylność konserwatora kodu źródłowego sterownika do dnia dzisiejszego. Faktem jest, że wirtualizacja stacji dyskietek stwarza problemy, które nie pojawiają się w przypadku wersji sprzętowej.

„Stacja dyskietek sprzętowych jest zbyt wolna, aby wywołać sytuacje równoczesnego dostępu. Z drugiej strony zwirtualizowany napęd dyskietek wiele wnosi na powierzchnię, ponieważ jest znacznie szybszy ”- mówi Jiri Kosina w poście opublikowanym 9 lat temu.

Dostępny jest kod źródłowy tego sterownika dla programistów, którzy chcą obsługiwać dyskietki w systemie Linux i dostarczają informacje w razie potrzeby.

drivers / block / floppy.c raw_cmd-> kernel_data = floppy_track_buffer; raw_cmd-> length = 4 * F_SECT_PER_TRACK; if (! F_SECT_PER_TRACK) powrót; / * pozwalają na około 30 ms na transport danych na ścieżkę * / head_shift = (F_SECT_PER_TRACK + 5) / 6; @@ -3230,8 +3233,12 @@ static int set_geometry (unsigned int cmd, struct floppy_struct * g, int cnt; / * sprawdzenie poprawności parametrów. * / If (g-> sect <= 0 || g- > head <= 0 || if ((int) g-> sect <= 0 || (int) g-> head <= 0 || / * sprawdź przepełnienie w max_sector * / (int) (g-> sect) * g-> head) <= 0 || / * sprawdź zero w F_SECT_PER_TRACK * / (unsigned char) ((g-> sect << 2) >> FD_SIZECODE (g)) == 0 || g-> track <= 0 || g-> track> UDP-> ścieżki >> STRETCH (g) || / * sprawdź, czy ustawione są zarezerwowane bity * / (g-> stretch & ~ (FD_STRETCH | FD_SWAPSIDES | FD_SECTBASEMASK))! = 0 ) @@ -3375,6 +3382,24 @@ static int fd_getgeo (struct block_device * bdev, struct hd_geometry * geo) return 0;} static bool valid_floppy_drive_params (const short autodetect [8], int native_format) {size_t floppy_type_size = ARYYRA (floppy_type); size_t i = 0; for (i = 0; i <8; ++ i) {if (autodetect [i] <0 || autodetect [i]> = floppy_type_size) return false;} if (native_format < 0 || native_format> = floppy_type_size) return false; return t żałować; } static int fd_locked_ioctl (struct block_device * bdev, fmode_t mode, unsigned int cmd, unsigned long param) {@@ -3501,6 +3526,9 @@ static int fd_locked_ioctl (struct block_device * bdev, tryb fmode_t, unsigned int SUPBOUND ( size, strlen ((const char *) outparam) + 1); break; case FDSETDRVPRM: if (! valid_floppy_drive_params (inparam.dp.autodetect, inparam.dp.native_format)) return -EINVAL; * UDP = inparam.dp; break ; sprawa FDGETDRVPRM: @@ -3698,6 +3726,8 @@ static int Compatible_setdrvprm (int dysk, return -EPERM; if (copy_from_user (& v, arg, sizeof (struct compliance_floppy_drive_params))) return -EFAULT; if (! valid_floppy_drive_params (v.autodetect, v.native_format)) return -EINVAL; mutex_lock (& ​​floppy_mutex); UDP-> cmos = v.cmos; UDP-> max_dtr = v.max_dtr;

Dyskietki to nieodłączna część historii komputerów, ale musimy przyznać, że są częścią historii. Ale dla podkreślenia pojawia się pytanie: czy to nie jest skręcenie dla przyszłych pokoleń?

Brak sprzętu oznacza również, że poprawki sprawdzania zasięgu ioctl są prawdopodobnie bardziej odpowiednie dla każdego, kto używa dyskietek w środowisku wirtualnym.

Ponadto można by argumentować, że ze względu na swoją otwartość Linux nadal jest systemem operacyjnym wybieranym przez ludzi, którzy chcą eksperymentować na sprzęcie uważanym za przestarzały.


Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: Miguel Ángel Gatón
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.