Linus Torvalds încheie asistența pentru driverul de unitate de dischetă

unitate de dischetă

Când Linus Torvalds a creat Linux în 1991, computerul pe care lucra, la fel ca cele din acea epocă, era echipat cu o unitate de dischetă . Iar acum suportul pentru acesta a luat sfârșit . Într-o postare recentă, creatorul celebrului sistem de operare open-source a anunțat încetarea mentenanței pentru driverul unității de dischetă.

O privire în jur permite, într-o oarecare măsură, să înțeleagă această notă informativă. De fapt, este suficient să rețineți că majoritatea laptopurilor și chiar a computerelor desktop puse pe piață astăzi nu au o unitate dischetă.

„Echipamentele de acest tip de pe piață astăzi sunt din ce în ce mai greu de găsit. Cea care este încă disponibilă în tarabe este bazată pe USB. Dintr-o dată, șoferul original nu mai este căutat ”, spune Torvalds.

Prin urmare, nu va mai exista nimeni responsabil de menținerea suportului pentru driverul de dischetă Linux, cel puțin deocamdată , deoarece Linus profită de ocazie pentru a atrage terțe părți interesate.

Cu toate acestea, driverul rămâne disponibil pentru a asigura suportul mașinilor virtuale care încă depind de acesta.

Pentru generațiile mai noi, nefamiliarizate cu dischetele, vă pot spune că acesta este un mediu magnetic de stocare a datelor , constând dintr-o foaie (disc) circulară subțire dintr-un material magnetizabil și flexibil (de unde și numele său), închisă într-o carcasă de plastic pătrată sau dreptunghiulară, care era folosită în computere, de exemplu: ca disc de boot, pentru transferul de date și informații de la un computer la altul sau pur și simplu pentru stocarea și protejarea fișierelor.

Acestea sunt ca cele din imagine:

Floppy disk

Nevoia de a continua să garanteze această componentă care a câștigat codului sursă al șoferului afecțiunea unui întreținător până în prezent. Faptul este că virtualizarea unității de dischetă pune probleme care nu apar cu versiunea hardware.

„Unitatea de dischetă hardware este prea lentă pentru a declanșa situații de acces simultane. Pe de altă parte, unitatea de dischetă virtualizată aduce mult la suprafață, deoarece este mult mai rapidă ", spune Jiri Kosina într-o postare publicată acum 9 ani.

Codul sursă pentru acest driver este disponibil dezvoltatorilor care doresc suport pentru unitățile de dischetă Linux și poate oferi informații dacă este necesar.

drivere / bloc / floppy.c raw_cmd-> kernel_data = floppy_track_buffer; raw_cmd-> length = 4 * F_SECT_PER_TRACK; dacă (! F_SECT_PER_TRACK) revine; / * permite aproximativ 30 ms pentru transportul de date pe pistă * / head_shift = (F_SECT_PER_TRACK + 5) / 6; @@ -3230,8 +3233,12 @@ static int set_geometry (nesemnat int cmd, struct floppy_struct * g, int cnt; / * verificarea sănătății pentru parametri. * / If (g-> sect <= 0 || g-> head <= 0 || if ((int) g-> sect <= 0 || (int) g-> head <= 0 || / * verificați depășirea în max_sector * / (int) (g-> sect * g-> head) <= 0 || / * verificați zero în F_SECT_PER_TRACK * / (caractere nesemnate) ((g-> sect << 2) >> FD_SIZECODE (g)) == 0 || g-> track <= 0 | | g-> track> UDP-> tracks >> STRETCH (g) || / * verificați dacă sunt setați biții rezervați * / (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 = ARRAY_SIZE = ARRAY_SIZE = ARRAY_SIZE = ARRAY_SIZE = ARTA = 0; for (i = 0; i  = floppy_type_size) return false;} if (native_format  = floppy_type_size) return false; return t strada; } static int fd_locked_ioctl (struct block_device * bdev, fmode_t mode, unsigned int cmd, unsigned long param) {@@ -8 +0 @@ static int fd_locked_ioctl (struct block_device * bdev, fmode_t mode, unsigned int SUPBOUND (mărime, strlen ( (const char *) outparam) + 0); break; case FDSETDRVPRM: if (! valid_floppy_drive_params (inparam.dp.autodetect, inparam.dp.native_format)) return -EINVAL; * UDP = inparam.dp; break; case FDGETDRVPRM: @@ -3501,6 +3526,9 @@ static int compat_setdrvprm (unitatea int, returnează -EPERM; if (copy_from_user (& v, arg, sizeof (struct compat_floppy_drive_params))) returnează -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;

Dischetele sunt o parte esențială a istoriei calculatoarelor, dar trebuie să recunoaștem că fac parte din istorie. Totuși, pentru a sublinia acest lucru, se pune o întrebare: nu este acesta un regres pentru generațiile viitoare?

Lipsa hardware-ului înseamnă, de asemenea, că remedierile de verificare a gamei ioctl sunt probabil mai relevante pentru oricine folosește dischete într-un mediu virtual.

În plus, s-ar putea susține că, datorită deschiderii sale, Linux este în continuare sistemul de operare ales pentru persoanele care doresc să experimenteze pe echipamente considerate învechite.


Adăugați ca sursă preferată în Google