+enum fio_ddir {
+ DDIR_READ = 0,
+ DDIR_WRITE,
+};
+
+/*
+ * What type of allocation to use for io buffers
+ */
+enum fio_memtype {
+ MEM_MALLOC = 0, /* ordinary malloc */
+ MEM_SHM, /* use shared memory segments */
+ MEM_MMAP, /* use anonynomous mmap */
+};
+
+/*
+ * The type of object we are working on
+ */
+enum fio_filetype {
+ FIO_TYPE_FILE = 1,
+ FIO_TYPE_BD,
+ FIO_TYPE_CHAR,
+};
+
+enum fio_iotype {
+ FIO_SYNCIO = 1 << 0,
+ FIO_MMAPIO = 1 << 1 | FIO_SYNCIO,
+ FIO_LIBAIO = 1 << 2,
+ FIO_POSIXAIO = 1 << 3,
+ FIO_SGIO = 1 << 4,
+ FIO_SPLICEIO = 1 << 5 | FIO_SYNCIO,
+};
+
+/*
+ * This describes a single thread/process executing a fio job.
+ */