diff tests/002_090722/002.c @ 0:42f240cc4bc6

From: 太田 篤志 <atoc@namikilab.tuat.ac.jp>
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Tue, 08 Sep 2009 13:44:18 +0900
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/tests/002_090722/002.c	Tue Sep 08 13:44:18 2009 +0900
@@ -0,0 +1,46 @@
+#include <stdio.h>
+#include <stdint.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <fcntl.h>
+#include <unistd.h>
+#include <sys/ioctl.h>
+
+#include "../../include/ioctl.h"
+#include "../../include/spe_process.h"
+
+#define  PROCESSES 100
+
+
+int main(int argc, char *argv[])
+{
+	int fd[PROCESSES];
+	spe_process_context_write_data_t spe_write = { 0 };
+	spe_process_context_read_data_t  spe_read;
+
+	int i;
+
+
+	for (i = 0; i < PROCESSES; i++)
+	{
+		fd[i] = open("/dev/spe_manager", O_RDWR);
+
+		lseek(fd[i], 0, SEEK_SET);
+		write(fd[i], &spe_write, sizeof(spe_write));
+		ioctl(fd[i], SPE_MANAGER_IOCTL_START_PROCESS);
+	}
+
+	for (i = 0; i < PROCESSES; i++)
+	{
+		do
+		{
+			lseek(fd[i], 0, SEEK_SET);
+			read(fd[i], &spe_read, sizeof(spe_read));
+		}
+		while (spe_read.status != SPE_PROCESS_CONTEXT_STATUS_NOT_RELEASED);
+
+		close(fd[i]);
+	}
+
+	return 0;
+}