Programación General > Visual C++
Rutinas En Visual C++
bcasadorodriguez:
Hola, necesito saber si las siguientes funciones que pongo a continuación y que son de c++ para linux, equivalen a alguna otra en c++ para windows.
Las funciones son:
fork() --> creo que equivale a spawnl()
ioctl()
fstat()
kill() ---> para matar un proceso. no se si es igual que TerminateProcess()
wait() --> creo que equivale a cwait.
fcntl() ---> es para controlar algo de los descriptores de una pipe.
Gracias y espero que puedan ayudarme.
Eternal Idol:
--- Cita de: "bcasadorodriguez" --- Hola, necesito saber si las siguientes funciones que pongo a continuación y que son de c++ para linux, equivalen a alguna otra en c++ para windows.
Las funciones son:
fork() --> creo que equivale a spawnl()
ioctl()
fstat()
kill() ---> para matar un proceso. no se si es igual que TerminateProcess()
wait() --> creo que equivale a cwait.
fcntl() ---> es para controlar algo de los descriptores de una pipe.
Gracias y espero que puedan ayudarme.
--- Fin de la cita ---
Creo que no existe ninguna funcion que trabaje EXACTAMENTE de la misma forma que fork en Windows, la funcion para crear procesos es CreateProcess.
ioctl sino me equivoco seria equivalente a DeviceIoControl.
fstat la podes usar en VC++, sino podes usar GetFileInformationByHandle por ejemplo.
TerminateProcess mata un proceso efectivamente, necesitas un handle al mismo que podes conseguir con OpenProcess.
Si wait solo espera podes usar Sleep.
Para pipes no hay demasiadas funciones especificas:
http://msdn.microsoft.com/library/default....e_functions.asp
Ya nos contaras que queres hacer exactamente con pipes.
Diodo:
Hola
Como bien dice Eternal Idol los servicios de posix relacionados con procesos padre-hijo , no tienen equivalencia en win32
por tanto
--- Código: Text ---fork() --------> No tiene servicio equivalente en win32ioctl()--------> Mire en un libro que tengo y solo viene para UNIXfstat--------> tiene 4 servicios equivalentes en win32 segun el uso que se le de: GetFileAttributes (obtiene los atributos de un archivo) GetFileSize (tamaño) GetFileTime (fecha) GetFileType (tipo)kill -----------> no tiene equivalente en win32wait ---------->WaitForSingleObject (espera la terminadcion deun proceso) GetExitCodeProcess (obtiene informacion del proceso ya terminado)fcntl----------->LockFile,LockFileEx (establece un cerrojo a un archivo) UnlockFile,UnlockFileEx (elimina el cerrojo)
Creo que eso es todo, espero que te sriva de ayuda
saludos :hola:
Eternal Idol:
--- Cita de: "Diodo" ---
--- Código: Text ---fork() --------> No tiene servicio equivalente en win32ioctl()--------> Mire en un libro que tengo y solo viene para UNIXfstat--------> tiene 4 servicios equivalentes en win32 segun el uso que se le de: GetFileAttributes (obtiene los atributos de un archivo) GetFileSize (tamaño) GetFileTime (fecha) GetFileType (tipo)kill -----------> no tiene equivalente en win32wait ---------->WaitForSingleObject (espera la terminadcion deun proceso) GetExitCodeProcess (obtiene informacion del proceso ya terminado)fcntl----------->LockFile,LockFileEx (establece un cerrojo a un archivo) UnlockFile,UnlockFileEx (elimina el cerrojo)
--- Fin de la cita ---
Claro, no hay equivalentes exactos pero se pueden hacer practicamente las mismas funciones.
fork-->CreateProcess
fstat-->Con GetFileInformationByHandle conseguis lo mismo que las tres primeras funciones. Aunque de cualquier manera esta presente en VC++.
kill-->Con usar OpenProcess y TerminateProcess deberia ser lo mismo.
WaitForSingleObject no es especifica para un proceso ni mucho menos, soporta varios handles a objetos (10 en total).
JuanK:
pero la filosofia del fork es crear procesos hijos y hasta donde se no se puede hacer hijos en windows o si?
Navegación
[#] Página Siguiente
Ir a la versión completa