IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Programmation système Discussion :

La version 1.0 de Cosmos, le kit de développement de systèmes d’exploitation utilisant Visual Studio comme EDI


Sujet :

Programmation système

  1. #1
    Chroniqueur Actualités

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Mars 2013
    Messages
    8 387
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Mars 2013
    Messages : 8 387
    Points : 196 511
    Points
    196 511
    Par défaut La version 1.0 de Cosmos, le kit de développement de systèmes d’exploitation utilisant Visual Studio comme EDI
    La version 1.0 de Cosmos, le kit de développement de systèmes d’exploitation utilisant Visual Studio comme EDI
    sera bientôt disponible

    Cosmos (C# Open Source Managed Operating System) n’est pas un système d’exploitation au sens traditionnel du terme, mais un kit de développement de systèmes d’exploitation qui utilise Visual Studio comme environnement de développement : le code peut être écrit, compilé, débogué et exécuté entièrement à travers de Visual Studio. Pour l'instant seuls Visual Studio 2013 et Visual Studio 2015 sont supportés, même si le portage vers d'autres versions est en cours.

    Il se sert d’un compilateur connu sous le nom de IL2CPU pour traduire le langage CIL généré d'une application .NET en langage assembleur natif. Cosmos compile des programmes et des bibliothèques à l'aide d'IL2CPU pour créer un fichier exécutable démarrable. Le résultat peut être démarré à partir d'une disquette, une clé USB, un CD-ROM, sur le réseau via PXE, ou dans une machine virtuelle.

    Les versions de Cosmos sont divisées en deux types : les "User kit" et les "Development Kit” (Devkit). Les "Userkit" sont des versions pré-packagées qui sont mises à jour régulièrement. Les "Devkit" sont constitués du code source de Cosmos qui doit être compilé manuellement et des outils de conception.

    Les développeurs peuvent utiliser Cosmos avec Visual Studio pour écrire un programme et le booter directement comme système d'exploitation. À l'avenir, Cosmos permettra aux développeurs de personnaliser leur propre système d'exploitation miniature ou même un système d’exploitation complet.

    Écrit principalement en C# et comportant de petites parties d'un langage de programmation assembleur de haut niveau appelé X#, Cosmos n’est pas un projet interne de Microsoft. Cosmos exécute le code plus rapidement car il n'a pas la surcharge de tâches de commutation au niveau du processeur. « C'est en fait un ensemble de Legos pour la construction de systèmes d’exploitation en se servant de .Net », a simplifié le co-fondateur du projet Chad Hower, un ancien développeur évangéliste de Microsoft.

    Dans une vidéo sur le blog MSDN, Hower a expliqué que les systèmes d'exploitation existants s'appuient sur l'architecture Intel et ont des fonctionnalités héritées pour des fonctions comme exécuter d’anciens fichiers exécutables. Avec Cosmos, les développeurs ont voulu voir quels concepts ils pouvaient changer ; Cosmos utilise des logiciels au lieu du matériel, déplaçant les protections matérielles dans le logiciel via un code managé.

    Avec une application Windows ou Linux traditionnelle, chaque processus est chargé dans un espace protégé par le matériel, nécessitant une surcharge du processeur. Cosmos n'utilise pas la mémoire virtuelle dans un sens traditionnel et ne se sert pas de protections matérielles ou d’un anneau de protection dans les CPU pour contrôler ces capacités. À la place, « tout cela est imposé par le noyau de Cosmos lui-même», comme l’a expliqué Hower. Le compilateur Cosmos et le modèle d'exécution permettent une duplication des fonctions normales de protection de la mémoire dans le système d’exploitation lui-même d'une manière plus efficace, et Cosmos facilite le partage d'objets.

    Bien que le projet soit en développement depuis une décennie déjà, le kit développeur n’est pas encore prêt pour un déploiement en environnement de production, mais la version 1.0 est attendu pour l’année prochaine. .

    télécharger le kit développeur depuis le dépôt GitHub

    Source : blog MSDN
    Contribuez au club : Corrections, suggestions, critiques, ... : Contactez le service news et Rédigez des actualités

  2. #2
    Nouveau membre du Club Avatar de zippedfire
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2010
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Décembre 2010
    Messages : 11
    Points : 28
    Points
    28
    Par défaut
    Effectivement, c'est un projet assez intéressant avec lequel j'ai eu l'occasion de jouer il y a quelques années (sur le DK 106072 ou quelque chose du genre), à l'époque il était assez populaire (très peu d'OS Cosmos sont encore actifs en ce moment) mais beaucoup moins avancé que maintenant : il n'y avait quasiment pas de support pour la vidéo (la plupart des systèmes utilisaient un pilote VMware SVGA porté depuis un vieux code C++, ce qui rendait l'utilisation de Bochs ou QEMU impossible pour avoir des graphismes au-dessus de 320x200), ni pour le stockage de fichiers ; ce qui faisait que beaucoup de gens créaient leur propre système de fichiers, le plus connu et le plus avancé était GLNFS, utilisé dans le système GruntyOS qui était à l'époque objectivement et techniquement le meilleur système Cosmos existant : graphismes, stockage HDD, shell type Bash, etc, et sa version Infinity (la dernière à sortir, en avril 2013) était carrément destinée à être un noyau Unix-like à la manière de Linux, il y avait un support de domaines d'application, d'exécutables ELF32 (dans une vidéo YT malheureusement maintenant supprimée, Grunt avait réussi à compiler un programme C affichant un texte à l'écran depuis Windows et à exécuter ce dernier depuis son système), de gestion avancée de la RAM et même de multitasking, ce qui est tout de même assez impressionnant quand on sait que tout le framework derrière est écrit en C#. Bien sûr, depuis 2013, bien qu'ayant connu une sensible baisse de popularité, Cosmos a connu de nombreuses améliorations, notamment le support de FAT32 de nombreuses corrections de breaking bugs et plus récemment une réécriture complète du pilote de clavier (par moi ) permettant le support d'autres layouts que le QWERTY, ainsi que d'autres joyeusetés telles que le [Num|Caps|Scroll]lock, etc.
    Bref, un projet intéressant, affaire à suivre.

  3. #3
    Membre régulier Avatar de maitredede
    Homme Profil pro
    Pisseur de code
    Inscrit en
    Mai 2006
    Messages
    59
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Nouvelle-Calédonie

    Informations professionnelles :
    Activité : Pisseur de code

    Informations forums :
    Inscription : Mai 2006
    Messages : 59
    Points : 106
    Points
    106
    Par défaut
    J'avais regardé ce projet il y a un moment, ça avait l'air prometteur. A l'époque, il me manquait du mutlithreading et du réseau TCP/IP fonctionnel. Aujourd'hui, je suis curieux de voir où en sont les projets basés sur Cosmos, et si le compilateur peut sortir autre chose que du x86 (par exemple, de l'arm 7).

  4. #4
    Membre éprouvé
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Août 2014
    Messages
    476
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Août 2014
    Messages : 476
    Points : 1 042
    Points
    1 042
    Par défaut
    Pas compris concretement l'interet/utilité. Pourquoi ce serait mieux en managé qu'en natif ? (la perf en moins)
    Encore un sujet qui va trainer 10 ans avant de finir a la poubelle. Ca aura occupé des gens a ne pas s'ennuyer en attendant.
    Le nb de fois ou des gens ont voulu inventer l'OS parfait (certains ayant arrivé a du concret mais qui n'a pas pris dans le grand public) pour finalement tomber dans l'oubli...

  5. #5
    Membre averti
    Homme Profil pro
    Lycéen
    Inscrit en
    Décembre 2014
    Messages
    106
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Lycéen

    Informations forums :
    Inscription : Décembre 2014
    Messages : 106
    Points : 322
    Points
    322
    Par défaut
    Citation Envoyé par kilroyFR Voir le message
    Pas compris concretement l'interet/utilité. Pourquoi ce serait mieux en managé qu'en natif ? (la perf en moins)
    Encore un sujet qui va trainer 10 ans avant de finir a la poubelle. Ca aura occupé des gens a ne pas s'ennuyer en attendant.
    Le nb de fois ou des gens ont voulu inventer l'OS parfait (certains ayant arrivé a du concret mais qui n'a pas pris dans le grand public) pour finalement tomber dans l'oubli...
    Tu veux dire comme Hurd

  6. #6
    Membre averti
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2016
    Messages
    129
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Santé

    Informations forums :
    Inscription : Novembre 2016
    Messages : 129
    Points : 443
    Points
    443
    Par défaut
    Citation Envoyé par kilroyFR Voir le message
    Pas compris concretement l'interet/utilité. Pourquoi ce serait mieux en managé qu'en natif ?
    Capitaliser sur une expertise .Net sans doute.
    Un projet Cosmos ça ressemble à un programme console classique, sauf que le produit de la génération peut être chargé dans un bootloader (pas besoin d’OS hôte en somme).
    Le but n’est pas forcément de recréer un OS aussi complet que Linux ou Windows, mais d’écrire une brique d’exploitation qui correspond à un besoin précis.

    Citation Envoyé par kilroyFR Voir le message
    (la perf en moins)
    IL2CPU permet de compiler le code IL en instruction machine (il n’est plus question à ce stade d’exécution managé... en somme, une fois l’OS compilé, il ne reste plus rien de .Net).

    Citation Envoyé par kilroyFR Voir le message
    Encore un sujet qui va trainer 10 ans avant de finir a la poubelle. Ca aura occupé des gens a ne pas s'ennuyer en attendant.
    Rien que pour la naissance de IL2CPU ce projet n’aura pas été vain.

  7. #7
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2015
    Messages
    97
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : Algérie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Janvier 2015
    Messages : 97
    Points : 91
    Points
    91
    Par défaut
    enfin un os personnalisé qui permet de se prémunir contre l'espionnage

  8. #8
    Membre émérite

    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    3 995
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 995
    Points : 2 528
    Points
    2 528
    Par défaut
    Pourquoi avoir créé une licence ad-hoc pour ce logiciel, vaguement open-source mais plutôt floue ?

    https://github.com/CosmosOS/Cosmos/b...er/LICENSE.txt

Discussions similaires

  1. Version visual basic 6, problème
    Par bugland dans le forum VB 6 et antérieur
    Réponses: 15
    Dernier message: 31/03/2007, 15h39
  2. achat d'un kit de développement
    Par Startux dans le forum C++Builder
    Réponses: 3
    Dernier message: 15/03/2007, 10h34
  3. recherche tutoriel visual basic version 8
    Par shnouf dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 01/02/2006, 16h02
  4. Visual basic version Open Source !!
    Par Ruddy16 dans le forum Langages de programmation
    Réponses: 15
    Dernier message: 31/03/2004, 20h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo