Merci!
Il supportera autant de langages que Clang (ou autre) pourra compiler en LL/Bitcode/IR compatible LLVM. A voir sur le fil de l'évolution! Donc je peux pas trop en dire plus pour le moment
Cordialement
Merci!
Il supportera autant de langages que Clang (ou autre) pourra compiler en LL/Bitcode/IR compatible LLVM. A voir sur le fil de l'évolution! Donc je peux pas trop en dire plus pour le moment
Cordialement
Bonjours, effectivement ça ouvre la porte à une infinité de possibilités
Je viens tout juste de réussir un début de portage de GZE en Jit, ainsi que LLVM sur CpcDos, le tout avec de bonnes performances :
La 4.0 sera pour la fin de l'année ?
La 4.0 sera oui entre fin 2016 / début 2017
Un véritable succès de l'implémentation de la compilation à la volée JIT en C/C++ Clang qu'on exécute sous une LLVM depuis le kernel Cpcdos OSx!
En vidéo :
Je m'excuse pour la qualité de la vidéo et la sensibilité du micro et éventuellement ma clarté d'expression!
Bonne soirée!
Salut!
Félicitation pour votre travail! Il est très performant en effet, continuez comme ça!
Bon courage
MINEOSX, Le créateur de MineOSX.
Wow c'est vraiment cool tous ça '^'
Bonsoir, voici la toute première version de la GUI réécrite entièrement depuis zéro sur Cpcdos OS2.0.5 Alpha 4.0 également réécrit depuis zéro à partir du Février 2015, le gestionnaire de fenêtre de base est opérationnel, ces fonctions serons accessible depuis le CpcdosC+ / C++
Cordialement
Bonjour à tous les Cpcdosien(e)s !
Depuis quelques mois, vous avez remarqué sur les fils d'actualités que Cpcdos est partiellement compatible avec les exécutable Windows 32 bits au format PE. Dans le concret, il fallait générer l'exécutable Win32 manière assez spécial, avec les bons arguments etc..
Tout ça c'est terminé
Désormais, le concepteur du moteur 3D GZE, Michael a conçu un nouveau compilateur sous le nom de CWave Compiler (CWC) basé sur GCC, très performant, les détections d'erreurs sont très poussées beaucoup d'ajouts et d'ajustement on été fait, notamment pour la partie en dessous.
Le point fort qui nous intéresse
CWC est capable de générer un exécutable Win32 PE ".exe" bien évidement 100% compatible Windows XP à 10, mais aussi 99% compatible Cpcdos OSx !! Le compilateur embarque une configuration sur-mesure pour que l'exécutable supporte les 2 systèmes t-elle que Windows et Cpcdos.. et pourquoi pas ReactOS
Le test
Voici un petit exemple en photo ci-dessous, il s'agit du même fichier "OpenFile.exe" généré sous Windows 10 via ce fameux compilateur CWC
Nous pouvons constater qu'il effectue exactement le même travail que sous Cpcdos !
Ce qui en résume que vous pouvez coder votre OS en C++ via un executable Win32 (Et aussi bien en LLVM)
Le compilateur.
Un nouveau petit bijou prochainement inclut dans le Cpcdos SDK
JE RÉPOND A VOS QUESTION !
C++ seulement ou le C est aussi supporté ?
On à accès à la totalité de la libc (si le c est supporté) et libc++ standard ? '^'
Si oui c'est cool tous ça '^'
Les exécutable PE sont donc totalement gérez par le noyau ? '^'
En tous cas bravo o/
Et avec XML ont pourra générer des applis graphique ?
Bise a cpcdos de ma part .
C/C++ 98, 11, 14C++ seulement ou le C est aussi supporté ?
Bien évidement! Et heureusement, mais cela va beaucoup dépendre du compilateur CWaveC. Il faut donc bien être a jour, Mickael et moi allons coopérer sur les nouveautés et les fonctions en place vis à vis de Cpcdos OSx.On à accès à la totalité de la libc (si le c est supporté) et libc++ standard ? '^
Oui entièrement via son chargeur PE nativement écrit en C++ dans CPinti Core, Mais aussi grâce à ce compilateur, c'est beaucoup mieux supporté oui, je dis qu'il est compatible 99%, c'est qu'il y a aussi des probabilité qu'il ai des problèmes de portabilité pour certaines API Microsoft qui ont besoin de t-elle et t-elle dépendant et qui peut ne pas fonctionner correctement, voire crasherLes exécutable PE sont donc totalement gérez par le noyau ? '^'
Comme ça été annoncé, c'est prévu au projet mais pas pour aujourd'hui !Et avec XML ont pourra générer des applis graphique ?
Après les APIs Microsoft je pense pas que ce soit important , surtout que je les trouves assez mal foutu.
Mais sinon j'ai qu'une chose a dire, bravo o/
ça peut être un avantage du fait que vous puissiez créer vos propres API!les APIs Microsoft je pense pas que ce soit important , surtout que je les trouves assez mal foutu.
Après tout les API NT de base doivent au moins être incluses dans Cpcdos pour que ça étende la portabilité NT <=> Cpcdos OSx pour vos OS si vous utilisez des fonctions NT.
Mais vous pourrez très bien générer des exécutable .exe Win32 indépendant de toutes fonction NT (Sauf obligatoirement comme tout executable Win32 : EnterCriticalSection , DeleteCriticalSection, InitializeCriticalSection et blabla...) , et qu'il fonctionne UNIQUEMENT pour Cpcdos, c'est là où vous pourrez afficher un messagebox disant que ce programme doit être exécuté sous Cpcdos uniquement comme ce fameux message "This program cannot be run in DOS mode" (ref. entête MZ).. Bref, des larges possibilités!
Cordialement
Bonjour à tous les Cpcdosiens!
Je m'excuse pour le manque d'activités, cela ne veut pas dire que le développement de Cpcdos s'est arrêté, bien au contraire!
Cpcdos est en refonte complète depuis le 1er février 2015, donc depuis 2 ans quasiment, le code entier à été réécrit depuis ZERO en C avec comme objectif principal :
- Revue de la mémoire HEAP. [OK]
- L'accès aux sockets réseau TCP/UDP. [OK]
- Revue complète du langage CpcdosC+ en POO. [OK]
- Implémentation d'un gestionnaire processus/multi-thread. [OK]
- Implémentation d'un gestionnaire de mémoire. [OK]
- Implémentation d'une machine virtuel LLVM. [OK]
- Implémentation d'un chargeur PE Win32. [OK]
- Réecriture de l'interface graphique [OK]
- ..
- Revue des crashs des versions précédentes [Hrum hrum...]
Cpcdos est actuellement en refonte partielle depuis août 2016 par rapport à sa refonte complète. Cet à dire que durant la refonte complète du 1er février, j'ai du faire face à de multiples possibilités d'améliorations qui m'a mené à de multiples modification redondante du code source (aussi passer au C++98, puis C++11, puis C++14) ce qui était très pénible !!! J'ai finis ENCORE UNE FOIS par tout reprendre de zéro, en gardant l'essentiel (serveur, client, ping, chargeur PE, LLVM, interface graphique, CpcdosC+), et réécrire les modules suivants avec les nouvelles idées d'améliorations depuis août 2016 en C et C++17 :
- Modularisation des fonctions du noyau. [EN COURS]
- Sockets "modulaire" réseau TCP/UDP. [OK]
- Gestionnaire processus/multi-thread. [OK]
- Gestionnaire de mémoire. [OK]
- Revue des crashs des version précédentes [Ah... ]
Qui entre temps m'a pas empêché non plus de réecrire en C++17 le serveur et client TCP/UDP et le chargeur PE
Cerise sur le gâteau, cette refonte partielle fait ses preuves en matière de stabilité. Les composants système étant d'une extrême modularisation, code source découpé au propre, allocations mémoires en bloc proprement instancié & désinstancié le tout en C++17 ne produit plus (voir quasiment plus) de fuites de mémoires. Elle fait également ses preuves de manière plutôt rigolote que je n'avais jamais prévu au départ, du fait qu'il est possible d'exécuter une nouvelle instance du noyau Cpcdos DANS Cpcdos et ceci on peut le répéter jusqu’à saturation de la mémoire RAM.
Actuellement, je termine la modularisation des fonctions du noyau, puis je devrais pouvoir ré-implémenter l'interface graphique, le moteur CpcdosC+... d'ici début Février 2017 afin de sortir une mise à jour pour les 2 ans de développement de Cpcdos OS2.0.5 Alpha 4.0 qui passe en T6 pour les Ultima testers uniquement. Ce qui prend du temps c'est aussi le boulo, je travaille en alternance pour une boite de développement informatique à Lyon (Hardis-Group) et je dois être présent aux cours 1 semaine/3, et ... j'ai aussi une vie sociale
Voilà ce qui s'est passé pendant ces 2 années de développement. Je remercie les personnes qui vont se reconnaître pour leur participations dont les Ultima testers!
Si vous avez des questions, n'hésitez, je mord.
Cordialement
Beau boulot Seb! Bravo!
Je suis impatient de voir la nouvelle MAJ!
Bonjour à tous les Cpcdosiens!
Je viens simplement vous informer que pour la version de Cpcdos 2017, le support du protocole TELNET est au point!
La différence avec celui du SSH, ce dernier c'est pas sécurisé, on peut sniffer le contenu des paquets réseaux TCP pour lire son contenu puisse que le texte est en clair.
Désormais, Cpcdos inclut 2 modes de contrôle à distance :
- Mode CCP CpcdosC+ Celui dont vous les Cpcdosiens vous connaissez, qui permet d'interagir avec le SHELL du moteur CpcdosC+ via un client TCP, ligne par ligne.
- Mode TELNET Interagir DIRECTEMENT SUR la console/terminal de Cpcdos via un logiciel client TELNET. (Ex: Putty).
En bref, la différence fondamentale, c'est qu'en mode CCP il faut écrire la ligne de commande complète ET PUIS l'envoyer
Alors qu'en mode TELNET, votre clavier interagit directement avec la console.
Ce qui est amusant, c'est que si vous êtes loggué sur la même session que celui du TELNET, vous pourrez également voir les lettres du clavier distant s'écrire sur votre écran ON LIVE
Même si CCP reste aussi un bon moyen de contrôle à distance... l'avantage d'utiliser TELNET, c'est qu'il existe des centaines de petits logiciels de type TELNET sur Android, iOS, MacOSx, Windows Phone et Windows! Ce qui vous permet de contrôler votre OS depuis n’importe où !
Quelques petit screenshots :
Connexion au serveur TELNET depuis un client sur Windows 10.
PS:Un message d'accueil sera programmable en CpcdosC+
Pendant que Cpcdos est en mode GUI (écran noir désolé mais y'a le curseur c'est déjà ça!), vous pouvez toujours interagir avec le noyau, et il vous répond !!
Sur la photo, je configure la résolution d'écran, je lance l'interface graphique et j'affiche la mémoire en cours en Méga octets... hm.. la vraie vie d'un THUG..
ICI
1) Je crée un serveur sur le port 80.
2) Je me connecte tant que client sur moi même en localhost:80, PUIS j'envoie une requête HTTP quelconque.
3) Depuis le serveur TCP je peux récupérer la requête HTTP que le client (moi même) a envoyé.
Ensuite ensuite.....
Après c'est votre programme CpcdosC+ (ou C++) qui s'occupera de la suite s'il faut répondre.. etc...
Dans le cadre du rôle d'un serveur WEB vous pouvez créer votre propre serveur WEB facilement comme ceci !
Bonjour à tous les Cpcdosiens !
Je vous fait part d'une agréable nouvelle! En effet, après 2 ans et 4 mois de refonte totale du projet Cpcdos OSx, l'interface graphique ainsi que les interactions utilisateurs programmables du noyau commencent concrêtement à reprendre forme beaucoup plus vite que prévu !
La différence fondamentale entre la version graphique du noyau Alpha 3.9 de février 2015, et celle de 2017, c'est qu'elle gère nativement le triple-buffering et la mise en cache managé des pointeurs volumineux t-elles que les bitmaps ARGB en mémoire RAM. Afin avoir une meilleure gestion de l'interface graphique, rafraichissement des zones graphiques en arrière plan, ombres, transparences, et une meilleure fluidité lors des déplacement des fenêtres si du contenu "dynamique/multi-threaded" est présente. L'implémentation des sections critiques lors du buffer-drawing pour éviter l'effet "de bavages graphiques" si plusieurs threads opèrent sur des objets ou fenêtres graphiques.
La syntaxe CpcdosC+ pour la création de l'interface graphique à énormément été retravaillé afin d'avoir de plus larges possibilités et surtout, "ENV_GUI.CPC", un fichier de personnalisation libre de l'interface graphique par défaut est désormais à disposition dans le dossier KRNL. Ce qui permet de modifier au pixel près les emplacement, la taille, couleurs, transparences, ombres, l'effet graphiques, bords et contours de tous les objets (icônes, de la barre de titre, controlbox, picturebox, boutons, etc...). Et bien évidement vous pourrez syntaxiquement écrire en anglais ou français.
Vous avez un exemple sur la 3eme photo ci-dessous, a gauche le code qui permet de créer la barre en haut et bas, et à droite, le fameux fichier "ENV_GUI.CPC".
A propos de CraftyOS, la nouvelle version en 2.0 de ce système d'exploitation EXEMPLE reprendra son développement avec notre équipe d'ici quelques mois (Une fois que la GUI de Cpcdos est avancée) afin que vous ayez un support d'exemple d'un OS totalement libre pour vos projets, et hébergé sur GitHub que vous puissiez contribuer au code source.
Résolution de 1600x900 en 32bits sur un Sony VAIO VPCEJ
Détails au pixel près
Exemple de code (Ecrit en syntaxe FR). Je vous laisse apprécier cette nouvelle syntaxe!
Si vous avez des questions, hésitez pas à la poster dans la section Vos idées [Cpcdos dans le futur]
Cordialement,
Bonjour à tous, je vous dévoile enfin le schéma simplifié du projet du noyau Cpcdos avec la partie publique qui vous concerne.
Le voici en format PDF : Cpcdos OSx kernel DIAGRAM.pdf (pensez à zoomer!)
Fait sous Visual pradigm
Bonne journée!
Depuis le 1er février 2015, voici la nouvelle gueule du système pour 2018! Encore des défauts, la perfection n'existe pas hein..
Ce qui est mis en valeur dans cette vidéo est le support Multi-OS, et les objets graphiques (CheckBox, ProgressBar, Bouton, picturebox, fenetres...)
La sortie officielle silencieuse sortira cette semaine. Et la version officielle sortira le 1er février 2018
A très vite !
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager