Mon problème est de comprendre la programmation sur le système en temps réel. Je suis confus à propos de ce sujet. Que puis-je faire et ce que je ne peux pas faire dans mon code source? Je sais qu'il y a des choses à faire pendant la programmation du code source, mais je ne sais pas exactement quoi. Quelques exemples. Est possibile en utilisant l'allocation de mémoire dynamique (nouveau)? Est-il possible d'accéder au disque en temps réel? Quel type d'IPC (communication interprocessus) puis-je utiliser? Puis-je utiliser le verrouillage interprocessus standard? Et ce qui est avec le verrouillage de fichier? J'ai cherché sur internet mais je n'ai pas trouvé ce que je voulais. Où puis-je mieux comprendre ces problèmes? J'espère que quelqu'un peut m'aider. Désolé pour mon anglais!Programmation sur un système en temps réel
Répondre
pouvez pouvez faire ce que votre langue/compilateur de choix prend en charge.
Ce que vous devrait faire maintenant, cela dépend vraiment de ce qui est le système cible, quel est votre programme (vous pourriez écrire un OS pour tout ce que je sais), etc ...
système en temps réel est tout à propos de la détermination - un calendrier fixe pour chacun. Check this out pour quelques lignes directrices:
http://cs.brown.edu/~ugur/8rulesSigRec.pdf
What defines a real-time/near-real time system?
Du côté logiciel (votre focus):
a. Évitez la mise en mémoire tampon ou la mise en cache dans votre code. La mise en cache vise à accélérer le traitement ultérieur après le premier, mais il en résulte une indétermination du temps.
b. Minimiser les branchements conditionnels, car cela générera un chemin différent entraînant un timing différent, ceci est particulièrement important pour le composant sensible au temps.
c. Évitez la conception asynchrone ou basée sur l'interruption. Utilisez l'interrogation chaque fois que possible - cela augmentera la prévisibilité du timing.
d. Utilisez un OS en temps réel (comme LynxOS RTOS) autant que possible. Il a une grande réactivité et prévisibilité dans son traitement. Mais si vous regardez ses internes, vous verrez qu'il saute beaucoup de traitement d'erreur, il a un seuil bas pour le nombre maximum de processus qu'il peut engendrer etc. Autrement dit, il y a toujours beaucoup de puissance de calcul de processeur de rechange restante, pour assurer que la réactivité est là. Bien sûr, au moment où vous avez poussé les chiffres à leurs limites (par exemple, engendrant beaucoup de processus), le comportement en temps réel de LynxOS ne se manifeste plus.
Juste beaucoup de bon sens appliqué lorsque vous faites du codage .....
- 1. Architecture pour système en temps réel?
- 2. Comment créer un AJAX en temps réel?
- 3. Diffusion en temps réel
- 4. Utilisation de la base de données système en temps réel
- 5. enregistrement en temps réel
- 6. Services Web en temps réel
- 7. Visage en temps réel sur Iphone
- 8. Solr Sauvegarde incrémentale sur un système en temps réel avec index lourd
- 9. QT ou GTK pour un système d'affichage en temps réel embarqué basé sur Linux
- 10. Graphes en temps réel
- 11. Jeu basé sur un navigateur en temps réel
- 12. CorePlot graphique en temps réel
- 13. Recommandé .Net soft temps-réel
- 14. Implémentation de la collaboration en temps réel sur une page?
- 15. Cloner MovieClip en temps réel
- 16. Serveur récepteur diffusé sur mobile en temps réel
- 17. Comment puis-je écrire un système de statistiques en temps réel? en ajax et php
- 18. Lucene indexation en temps réel?
- 19. HTML5: son en temps réel
- 20. Quelle est la meilleure solution côté serveur pour un système de suivi GPS en temps réel
- 21. Gestion des exceptions dans un système piloté par SQL-Server en temps réel
- 22. C# Temps réel Try Catch
- 23. Comment afficher des données en temps réel dans un navigateur?
- 24. Graphiques en temps réel en Java
- 25. Temps réel avec Rails
- 26. Puis-je utiliser LAMP + AJAX pour un système (presque) en temps réel?
- 27. En utilisant T4MVC en temps réel projet
- 28. Serveur Socket TCP/IP en temps réel sur Amazon EC2
- 29. Remplacer la couleur sur une image en temps réel
- 30. Communication en temps réel avec WCF