summaryrefslogtreecommitdiff
path: root/include/kernel/sched.h
blob: fa8e036bccbe6bef6a4a164bbb16f3bf356dd1e6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#ifndef _SCHED_H
#define _SCHED_H

#include <stdint.h>

struct task_state {
  uint32_t ss;
  uint32_t esp;
  uint32_t eflags;
  uint32_t cs;
  uint32_t eip;
  uint32_t eax;
  uint32_t ecx;
  uint32_t edx;
  uint32_t ebx;
  uint32_t esp_garbage;
  uint32_t ebp;
  uint32_t esi;
  uint32_t edi;
} __attribute__((packed));

struct task_struct {
  struct task_state state;
} __attribute__((packed));

#endif