Traduisez

Translate to EnglishÜbersetzen Sie zum Deutsch/GermanΜεταφράστε στα ελληνικά/GreekПереведите к русскому/RussianOversetter til Norsk/NorwegianÖversätta till Svensk/Swedishहिनà¥à¤¦à¥€ अनà¥à¤µà¤¾à¤¦ करने के लिà¤/Hindi
Tradueix al català/CatalanTulkot uz latviešu/LatvianPreložiť do slovenčiny/SlovakVertaal aan het Nederlands/Dutchترجمة الى العربية/ArabicTraduzca al Español/SpanishTraduisez au Français/French
Traduca ad Italiano/ItalianTraduza ao Português/Portuguese日本語に翻訳しなさい /Japanese한국어에게 번역하십시오/Korean中文翻译/Chinese Simplified中文翻译/Chinese TraditionalПереклад на українську/Ukrainian
Image de développement d'applications sans fil androïde
Image de l'inscription anticipée au programme dans l'environnement d'UNIX, deuxième édition (séries de calcul de professionnel d'Addison-Wesley)
Image du développement de grain de Linux (3ème édition)
L'image de RHCE Red Hat a certifié le guide d'étude de Linux d'ingénieur (examen RH302) (la presse de certification)

En installant Oracle 11g libérez 2 sur Fedora 14

Ce poteau décrit comment installer la version 2 de la base de données 11g d'Oracle sur Fedora 14, installer un client de SQLplus sur Microsoft Windows 7 et configurer les deux installations de sorte que le client de SQLplus puisse accéder à la base de données d'Oracle fonctionnant sur Fedora 14.

KSH93 de mise en communication à Windows 7 SUA

Ce poteau te montre comment télécharger, établir et installer la dernière version de la coquille de Korn dans le sous-système de Windows 7 SUA.

Systèmes de fichiers parallèles de Windows

Je récemment ai été impliqué dans un certain travail de développement pour un système de fichiers quasi-parallèle pour Microsoft Windows.  En raison de cette participation mon intérêt piqued et j'ai décidé de faire ainsi la recherche sur ce qu'est l'état de recherche et développement dans le domaine des systèmes de fichiers parallèles conçus spécifiquement pour Microsoft Windows.

D'abord un examen rapide de ce que veux dire je par un système de fichiers parallèle.  Il y a tout nombre de différents types de systèmes de fichiers parallèles disponibles.  Certains permettent aux systèmes multiples et aux applications de partager les piscines communes du stockage comme dans un système de fichiers clusered.  Certains ont dédoublé les données à travers deux noeuds ou plus pour améliorer le temps d'accès et la redondance.  D'autres variantes dédoublées classe dans un bon nombre de petits morceaux, stocke ces morceaux sur différents disques d'une mode circulaire, et les recombine lors de la lecture pour récupérer le dossier original.

L'exemple le plus tôt du fileystem parallèle Windows-spécifique de Microsoft que j'ai trouvé jusqu'ici est le système de fichiers parallèle développé par le groupe d'ARGOS chez Universidad Carlos 111 De Madrid, Madrid, es.  Ce groupe de recherche a développé un prototype d'un système de fichiers parallèle pour un réseau des noeuds de Microsft Windows qu'ils ont appelés WinPFS.  Ils ont présenté leur travail à COSET 2004 et à un certain nombre d'autres ateliers.  WinPFS a été mis en application comme nouveau type de fileyystem entièrement intégré dans le grain de Microsoft Windows.  Ceci a l'avantage qu'aucune modification ou recompilation des applications d'utilisateur n'est nécessaire pour tirer profit du système de fichiers parallèle.

Le but de ce groupe de recherche était d'établir un système de fichiers parallèle pour des réseaux des ordinateurs de Microsoft Windows utilisant les dossiers partagés de Microsoft Windows pour accéder à des données à distance en parallèle. L'exécution est basée sur les redirectors de système de fichiers qui réorientent des demandes aux noeuds à distance utilisant UNC (convention de nomination universelle) et les protocoles de SMB et/ou de CIFS. WinPFS est enregistré pendant qu'un système de fichiers et un accès à distance virtuels aux données à distance est par nouveau \ de dossier partagé \ PFS.  Les primitifs de base d'opération de dossier sont : créez, lu, écrivez, et créez l'annuaire.

Le prototype a été développé sur la plate-forme de Windows Xp, et a été examiné avec un faisceau de sept noeuds de Windows Xp et d'un noeud 2003 de serveur de Windows dans diverses configurations.  La sortie maximum pour écrivent des opérations étaient de 250 Mbits/s et de 1200 Mbits/s pour des opérations "lecture".  L'équipe de recherche a rapporté que le goulot pour écrit était les disques et pour lit était le réseau.  Jusque moi peux le dire

WaitForSingleObject de mise en communication au Linux - partie

Dans mon dernier poteau j'ai discuté l'utilisation de WaitForSingleObject par rapport aux mutexes et aux manières possibles de mettre en application la fonctionnalité équivalente en mettant en communication un tel code à GNU/Linux.  Dans ce poteau je décrirai l'utilisation de cet api avec des objets d'événement dans Microsoft Windows et proposerai des manières possibles de signaler un tel code à GNU/Linux ou à Unix.

D'abord, un certain fond sur des objets d'événement.  Un objet d'événement est juste un autre type d'objet d'expéditeur de grain de Windows.  D'un codage prespective, un objet d'événement est un objet de synchronisation qui encapsule un ou plusieurs objets d'expéditeur de grain et dont la sémantique de synchronisation sont accessible par l'intermédiaire de WaitForSingleObject et de ses cousins.  À un moment donné un objet de synchronisation nonsignaled ou est signalé, c.-à-d. l'objet peut seulement être dans un de deux états possibles.

Toute les famille de WaitFor des api comprenant l'attente de WaitForSingleobject sur une poignée d'objet ou les poignées jusqu'à quelques critères spécifiques est rencontrée.  Les deux critères de base pour tous ces api sont l'état signalé de l'objet sur lequel la poignée il attend et un valeur du dépassement de durée.  Ainsi un fil qui appelle des attentes de cet api jusqu'à ce que l'objet spécifique entre dans l'état signalé ou la temporisation spécifique a expiré.  Peu ou pas de temps- CPU est employé quand un tel fil est dans l'état d'attente.

Dans le cas des événements, un CreateEvent ou un OpenEvent renvoie une poignée à un objet d'événement.  Quand un événement est dans l'état signalé il signifie que cela l'événement a la capacité de libérer un ou plusieurs fils attendant cet événement particulier à signaler.  Quand un événement est dans l'état nonsignaled il ne libérera aucun fil de attente.  Au commencement l'état d'un événement nonsignaled.  Un état d'objet d'événement est placé explicitement à signaler par SetEvent ou PulseEvent.  Des objets d'événement sont également employés dans des opérations recouvertes telles que la lecture d'une douille, dans ce cas l'état d'objet d'événement est placé à signaler par le grain plutôt que par une application.

Les événements viennent également dans deux types remis à zéro.  Si un événement est un événement de manuel-remise, alors tout le retour de WaitForSingleObjects qui attendent cet événement si ainsi configuré.  En d'autres termes un événement de manuel-remise peut déclencher l'action par un ou plusieurs WaitForSingleObject ou ses cousins.  Un état d'objet d'événement de manuel-remise doit être remis à zéro explicitement à nonsignaled par ResetEvent.

Pour un objet d'événement de réinitialisation automatique, WaitForSingleObject et c'est des relations remis à zéro

WaitForSingleObject de mise en communication au Linux - partie

Récemment j'ai été impliqué en mettant en communication une application à 32 bits qui a été au commencement écrite pour le NT de Microsoft Windows à GNU/Linux.  Cette application a contenu un grand nombre d'appels à NtWaitForSingleObject et un plus petit nombre d'appels à NtWaitForMultipleObject. 

Maintenant quiconque qui a dû mettre en communication le code contenant plus que quelques exemples de ces api Win32 particuliers, ou leurs cousins étroits WaitForSingleObjectEx, MsgWaitForMultipleObjects, MsgWaitForMultipleObjectsEx, etc. à Unix ou GNU/Linux probablement frissonne déjà avec le souvenir de longs jours et nuits laborieux du codage d'essai et des erreurs pour essayer et imiter correctement la sémantique et la fonctionnalité de ces api spécifiques particuliers de Microsoft Windows, mais pour le lecteur qui n'a pas encore dû essayer de mettre en communication une telle application, ce poteau et mon prochain poteau peut vous aider sauf votre santé d'esprit (et probablement vos cheveux !) autrefois à l'avenir.

D'ailleurs, tous les deux api sont marqués ont désapprouvé dans MSDN par Microsoft mais travaillent toujours comme prévus dans Windows NT et Windows Xp.  Je ne suis pas sûr au sujet de Windows Vista ou de Windows 7 car je ne les ai pas examinés sur ces logiciels d'exploitation.  Les deux api désapprouvés ont été remplacés par les api équivalents WaitForSingleObject et WaitForMultipleObject respectivement.  Pour le reste de ce poteau je discuterai juste les api de remplacement mais plus de ce que je dis soyez valide pour désapprouvée ou le remplacement api.

Au premier examen WaitForSingleObject semble assez bénin.  La description dans MSDN déclare que « cette fonction retourne quand l'objet spécifique est dans l'état signalé ou quand l'intervalle de temporisation s'écoule ».  Ressemble à d'un api assez simple et innofensif, droite ?  Peut-être quelque chose semblable au pthread_cond_timedwait de POSIX.1 api.  Bien, vous avez complètement tort et ce poteau et ce qui suit expliqueront pourquoi.

WaitForSingleObject et ses cousins peuvent attendre un signal du quelques un ou tout des « objets » suivants : changez l'avis, l'entrée de console, l'événement, le travail, l'avis de ressource de mémoire, le mutex, le processus, la sémaphore, le fil et le temporisateur waitable et dans des circonstances limitées sur les dossiers et l'entrée-sortie de dossier.  Une fois convenablement signalé, un fil est dégagé et continue.  Aucun api normalisé édité dans le monde de GNU/Linux ou d'Unix ne vient venu à manipuler cette gamme des objets dans un api simple.

C'est probablement l'un seul secteur où un Win32 api mieux est conçu que l'ensemble de GNU/Linux ou d'Unix api.  À GNU/Linux et à Unix il y a des api spécifiques pour attendre différentes sortes de