2011-04-06 10 views
0

Je gère l'interface de gestion pour un périphérique embarqué exécutant un RTOS propriétaire, qui communique avec le gestionnaire via un simple socket. Nous avons récemment ajouté un client NFS à ce périphérique, qui exécute NFS v2 ou v3, afin qu'il puisse accéder aux fichiers sur le réseau. Je cherche un moyen de servir dynamiquement un dossier sur la machine qui exécute l'application de gestion, à l'appareil, à partir de notre application de gestion, qui est écrit en C# .NET 3.5. J'ai donc besoin d'objets serveurs NFS que je peux instancier, configurer et lancer dans le code, puis passer les informations du partage NFS à mon périphérique, qui va ensuite monter le partage . Une fois l'appareil terminé, il se déconnecte et me dit que c'est fait, à quel point je peux arrêter et jeter l'objet serveur.Mise en œuvre du serveur .NET NFS?

J'ai creusé un peu et trouvé quelques serveurs Java NFS, mais rien pour C#. J'ai trouvé un excellent client NFS ici (http://code.google.com/p/nekodrive/), mais il semble n'offrir aucune fonctionnalité de diffusion. Y at-il quelque chose là-bas qui fait ce que je cherche, ou vais-je devoir écrire mon propre serveur à partir de zéro?

+0

Copie possible de http://stackoverflow.com/questions/1234720/where-can-i-find-ac-net-nfs-implementation/13442223#13442223 Néanmoins, pour les futurs visiteurs, j'ai commencé un L'implémentation du serveur NFS en C# ici - https://github.com/shellscape/Snarf – shellscape

Répondre

2

Installez Services for Unix (SFU, voir les liens externes pour plus de détails sur le téléchargement), assurez-vous d'installer le serveur NFS et configurez-le. Ensuite, dans votre application .net, utilisez des E/S normales.

+0

est votre RTOS vxworks propriétaire par hasard? – paquetp

+0

Ceci est un paquet que nous vendons aux clients, et je ne peux pas leur demander d'installer SFU sur tous les ordinateurs sur lesquels ils veulent tourner. OS est Integrity, je souhaite que ce soit vxworks ... – Stevoman

2

Dans le monde Windows, les meilleures pratiques consistent à installer ce type de ressource facultative pour le client dans le cadre de l'installation. Vous devrez vérifier si SFU est redistribuable en lisant l'accord de licence fourni avec le téléchargement SFU. Si c'est le cas, écrivez la logique dans la routine d'installation pour déterminer quelle SFU s'applique au système d'exploitation utilisé par le client - il existe différents packages pour les serveurs 2003 et 2008.