En tant que startup, Qumulo donne beaucoup d’influence à ses ingénieurs pour décider de la manière dont nous faisons les choses. Et depuis que je suis entré en tant que stagiaire il y a cinq ans, je me suis impliqué dans de nombreuses décisions importantes prises par Engineering. Donc, la décision de Qumulo de commencer à utiliser Rust Programming Language dans notre produit principal d'ici la fin de l'année me passionne particulièrement - en tant qu'ingénieur et pour notre produit - un système de fichiers d'entreprise appelé File Fabric ou QF2.

La rouille est un langage de programmation de systèmes qui a beaucoup progressé ces dernières années et bonne raison. La langue fournit beaucoup de fonctionnalités super excitantes. Pour cet article, je me concentre sur peut-être la plus éclatante - la sécurité de la mémoire.

Vous voulez en savoir plus sur Qumulo et Rust? Rejoignez-nous à notre Meetup Rust.

QF2 est actuellement écrit en C. Ce n'était peut-être pas un choix surprenant. Un grand nombre de logiciels système sont écrits en C, qui est le langage de programmation de facto de nombreux utilisateurs souhaitant écrire des logiciels «de bas niveau» ou peu abstraits sur l’architecture d’un jeu d’instructions.

langage de programmation de la rouilleTravaillant dans C, je me suis vu, ainsi que d’autres programmeurs, continuer à écrire les mêmes bogues, à savoir des débordements de tampon, des conditions de concurrence, des périodes de libre utilisation et des fuites de mémoire. Historiquement, nous avons combattu ces sécurité de la mémoire problèmes avec un certain nombre d'outils différents (par exemple Valgrind, Assainisseur d'adresse) et pratiques - qui reposent toutes sur l’exécution d’un programme pour déterminer qu’il ya un problème. C'est pourquoi le plus grand avantage de Qumulo dans cette bataille est notre concentration sur les tests unitaires.

Tout cela représente beaucoup de ressources dépensées sur ce problème. Plus vite nous pouvons détecter ces problèmes, mieux c'est pour tout le monde. Plus le délai d'exécution est faible, plus nous économisons le temps de chacun. Rust nous aide à détecter rapidement ces problèmes, à la compilation, et peut détecter des bogues sans même exécuter le code. Il le fait en construisant le concept de propriété de la mémoire dans la langue elle-même.

L'accent mis par Qumulo Engineering sur les tests est nécessaire car nous livrons une nouvelle version de QF2 toutes les deux semaines. Nous sommes obsédés par l'exactitude des programmes - une nécessité absolue, lorsque l'un ou l'autre de ces problèmes de sécurité de la mémoire pourrait se transformer en une énorme affaire pour l'un de nos clients.

En ce sens, Qumulo et Rust s'accordent parfaitement. J'espère que Rust pourra nous aider à mieux faire notre travail. Ainsi, je me joins à beaucoup de mes collègues ingénieurs de Qumulo pour être heureux d’utiliser Rust.

démarrage-carrière-cta

Partager avec votre réseau

OBTENIR UNE DEMO