2016-12-10 2 views
0

Ich suchte herum und alles, was ich finden konnte war, dass ich Cygwin brauchte. Ich habe es installiert, aber ich kann nirgendwo in C:\cygwin64\usr\include nicht unistd.h finden. Natürlich habe ich diesen Pfad zu den "Include Directories" in meinem Projekt in VS2015 hinzugefügt.Wie verwende ich fork() in Visual Studio 2015? (Windows 7 Professional)

Was ich tun möchte, ist in der Lage sein fork() und execv() zu verwenden (oder vielleicht execl(), execlp(), execvp() etc ...) in C. ich die einfache Lösung wissen, ist nur „Gehen Sie es tun in Linux“ aber VS2015 macht es ist einfacher, richtig zu codieren.

Was ich denke, ich sollte tun, sollte ich etwas anderes von Cygwin installieren, die die Header, die ich brauche, ich weiß nur nicht, wie und wo sie finden würde, also ich bitte um Ihre Hilfe.

+0

Warum möchten Sie 'fork()' verwenden? Warum nicht einfach win32 api benutzen? –

+0

Es ist dieses Projekt, das ich für eine meiner Klassen (Betriebssysteme) machen muss, und wir müssen fork und exec lernen. –

+0

Ich benutze ['_beginthread'] (https://msdn.microsoft.com/en-us/library/kdzttdcb.aspx). AFAIK MSVC hat keine Gabel. –

Antwort

0

fork(), execv(), ... etc sind alle Linux-OS-Befehle, die in Windows nicht funktionieren .. also sollten Sie entweder in einem Linux-System versuchen oder ein virtuelles Fenster verwenden, um Linux-System zu verwenden.

+0

Wie ich bereits sagte 'Ich weiß, die einfache Lösung ist nur" Go do it in Linux "aber VS2015 macht es einfacher, richtig zu codieren. Ich hoffe nur, es gibt einen Weg, dass in Windows 7. Eigentlich möchte ich Visual Studio verstehen, was ich tippe, wenn ich '#include ' oder 'pid_t pid;' usw. einfüge. Ich möchte nur dann einen Fehler sehen, wenn ich etwas falsch eingegeben habe. Gerade jetzt, wenn ich '#include ' eingeben, wird include mit roter Farbe unterstrichen und sagen "kann Quelldatei nicht öffnen" unistd.h "". –

1

unistd.h ist eine Unix-Datei. Sie können es nicht auf Windows verwenden

+0

Dies liefert keine Antwort auf die Frage. Sobald Sie genug [Reputation] (https://stackoverflow.com/help/whats-reputation) haben, können Sie [jeden Post kommentieren;] (https://stackoverflow.com/help/privileges/comment) stattdessen , [stellen Sie Antworten bereit, die keine Klärung durch den Fragesteller erfordern] (https://meta.stackexchange.com/questions/214173/why-do-i-need-50-reputation-to-comment-what-can-i -do-stattdessen). – mrun

Verwandte Themen