Connexion
Abonnez-vous

Microsoft ouvre les sources de… MS-DOS 4.0

Microsoft ouvre les sources de… MS-DOS 4.0

Le 29 avril à 10h02

Vous vous souvenez peut-être, Microsoft avait ouvert les sources de MS-DOS 1.25 et 2.0, il y a dix ans, pour les confier au Computer History Museum. Le code avait été publié dans un dépôt GitHub quatre ans plus tard. Ce dernier contient désormais le code de MS-DOS 4.0, toujours sous licence MIT.

L’histoire de cette version du système est intéressante. En effet, la mouture commercialisée n’est pas celle initialement développée. La version d’origine disposait d’un multitâche préemptif. Ce dernier permettait à un programme, avec un développement idoine, de fonctionner en tâche de fond.

Lorsque le projet a été présenté en 1986, il n’a cependant pas créé l’enthousiasme. À sa sortie commerciale en 1988, le système sera nettement plus classique dans son approche.

Le code publié sur le dépôt GitHub contient bien ce multitâche préemptif qui avait été abandonné. Le travail de récupération et de publication a été réalisé conjointement avec IBM. Microsoft donne des détails intéressants dans son annonce.

Le 29 avril à 10h02

Commentaires (30)

Vous devez être abonné pour pouvoir commenter.

Abonnez-vous
votre avatar
Ouch, c'est à 95% de l'assembleur ! À part quelques commandes en C (fdisk, join, ...), tout le reste est en assembleur, même edlin.
votre avatar
En effet, c'était le cas de la plupart des OS de l'époque.
votre avatar
Ouais ça pique !
votre avatar
Oui, et la partie en C a été écrite par des fans de Pascal. :phiphi:
Ils ont osé ça :

#define BEGIN {
#define END }

Quelle horreur tous ces BEGIN et END. :censored:
votre avatar
Ils tapaient peut-être avec un clavier 85 touches. { Et } n'existaient pas sur le mien.
votre avatar
je n'avais pas pensé à cette option. Cependant, après vérification, le clavier IBM modèle F, dans ses premières versions US avait bien les accolades...
votre avatar
Il y a eu une mode comme ça à un moment où ceux qui ont appris le Pascal ont été mis au C.

Mais c'est passé. :D
votre avatar
oui, et il n'y avait visiblement pas que l'accolade qui ne leur convenait pas, le switch case aussi visiblement :
#define SELECT if(FALSE){
#define CASE(x) }else if((x)){
#define OTHERWISE }else{
#define ENDSELECT }
votre avatar
Et encore, ça pourrait être pire. Tu pourrais avoir un

#define if while

Et là, tu ne comprends pas pourquoi ton programme s'arrête boucle sur le premier if à true :francais:
votre avatar
HS total: c'est normal que le brief n'apparaisse plus dans la liste des news ?
J'ai juste la colonne de droite, qui ce matin avait 2 news, et la 3 maintenant, c'est un bug ?
votre avatar
Je plussoie ! C'est tout de même bien pratique d'avoir un article regroupant le brief du jour
votre avatar
Ce n'est pas un bug, le brief est sur le point de changer, vous en aurez des nouvelles très (très) bientôt :chinois:
votre avatar
Merci, mais ça aurait été bien de communiquer avant ces premiers changements.
Personnellement, je n'aime pas la disparition de l'article récapitulatif où l'on pouvait tout lire d'un coup juste en appuyant sur la barre espace.

Ce n'est plus "Le Brief" mais des brèves à lire séparément.
votre avatar
Nous travaillons sur une mise à jour qui va sortir de façon imminente, elle sera assortie d'un message d'explication 😊
votre avatar
Suite à la migration surprise de nextinpact.com vers next.ink, n'avait-il pas été promis de prévenir désormais les lecteurs _avant_ les changements ?
votre avatar
Je veux bien ta source, je n’ai pas le souvenir d’avoir particulièrement dit ça mais je peux me tromper.
Des changements il y en a eu énormément et sur une base quotidienne depuis la reprise du coup il va falloir m’expliquer la différence entre le bon et le mauvais changement.
Et du reste, j’ai aussi du mal à comprendre le principe du délai de prévenance.
votre avatar
il va falloir m’expliquer la différence entre le bon et le mauvais changement.
C'est comme le bon et le mauvais chasseur.

:humour::pastaper:
votre avatar
C’était un peu la référence implicite oui 😁
votre avatar
J'ai peut-être un peu sur-interprété tout le lyrisme autour de l'importance de "la communauté", avec par exemple (parmi d'autres) :

"*On parle de la refonte du site comme d’un gros truc, mais à mon avis, ce qui sera le plus difficile, c’est de repenser cette relation, de commencer à avoir une vision d’architecte de communauté, presque.
Que l’aridité de l’information soit compensée par des interactions luxuriantes.*"
votre avatar
Nan mais si en plus vous tombez dans le piège de ma rhétorique de vendeur de cravates on n'est pas rendus 😉

Plus sérieusement, nous n'en sommes pas encore à cette étape-là du programme.
Quand je parle de cultiver la communauté, et développer les interactions, je parle évidemment des interactions entre vous (enfin entre nous, lectrices et lecteurs) !
Je pense à un vrai petit réseau social interne, bien fait, qui permette d'avoir des dialogues sur tout avec tout le monde, qui commencent sous les articles, et qui peuvent donner lieu à des échanges qui se déplacent dans une section dédiée.
Qu'on puisse invoquer les gens depuis un message.
Qu'il y ait des MPs, un feed, qu'on puisse suivre des profils qui nous intéressent.
Et qu'il y ait des liens bien intégrés avec le Fediverse, idéalement.
Rien de bien révolutionnaire en somme, juste de quoi vous mettre à l'aise.
Et complètement optionnel au demeurant.

Je ne pensais pas à un site autogéré à base de démocratie totale.
Non pas que je sois anti-démocratie dans l'absolu, c'est même plutôt l'inverse.
Mais ce modèle appliqué à un site qui déchaine les passions les plus contradictoires est la garantie d'une apocalypse rapide et douloureuse.
votre avatar
Qu'on puisse invoquer les gens depuis un message.
Beetlejuice Beetlejuice Beetlejuice !!!!
votre avatar
je pense que c'est plus la notion de changement qui perturbe nos p'tites habitudes ou pas 😅
Là j'avoues, suis un poil perdu/dérouté ce matin pour comprendre ce qui est article et news et où j'en suis de ma lecture... j'ai perdu le "grisé" des articles déjà lus/ouverts (et comme certains sont intéressants mais longs, je peux avoir des onglets sous le coude un moment au milieu de beaucoup d'onglets... donc c'était sympa de savoir ceux déjà lus/ouverts... mais j'imagine que ca reviendra sans doute après la mutation 🙂)
votre avatar
Si ce n'est pas un bug, c'est donc une feature ? :D
votre avatar
J'ai l'impression de lire un intégrateur au taff...
A chaque bug, il me clôture l'incident avec réponse "c'est pas un bug c'est développé comme çà"
votre avatar
Il semblerait que, au contraire de ce qui a été annoncé, il n'y ait pas le source pour la partie multitâche préemptif ; cet article apporte des éclairages assez intéressants sur tout ça : https://lunduke.locals.com/post/5565411/ms-dos-4-0-source-code-fails-to-compile
votre avatar
oui, c'est "MS-DOS Version 4.00" et pas "MS-DOS 4.0".

Subtile différence.
votre avatar
Bah en plus MS-DOS 4.0 semble ne pas avoir été très répandu... Je viens de fouiller un peu car j'avais des souvenirs de la version 4.01 mais aucun de la 4.0 (alors qu'à l'époque j'étais joueur et me débrouillais pour récupérer/tester toutes les différentes versions que je pouvais dans l'espoir de transformer ma 2cv en Ferrari 🤣) et il semble que la version correctrice a très rapidement pris la place de la version initiale...
votre avatar
Ah, de tête j'ai eu cette version là en fac pour simuler/reproduire les mouvements d'un palet autoporteur attaché à un élastique.

L'écran était avec texte en orange, 2 disquettes 5"1/4 (DOS 4.0 +Turbo Pascal 4, et fichier de données, de tête).

La fac avait encore plus périmé que mon 386 sous DOS 5.0 :roll:

nostaligie:phibee:
votre avatar
Dos 4 utilisait trop de mémoire conventionnelle. Trop difficile de lancer un soft,notamment les jeux.

Microsoft ouvre les sources de… MS-DOS 4.0

Fermer