Rev 3078 | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 3078 | Rev 3222 | ||
---|---|---|---|
Line 32... | Line 32... | ||
32 | 32 | ||
33 | .globl __entry |
33 | .globl __entry |
34 | 34 | ||
35 | ## User-space task entry point |
35 | ## User-space task entry point |
36 | # |
36 | # |
- | 37 | # %ebx contains the PCB pointer |
|
37 | # |
38 | # |
38 | __entry: |
39 | __entry: |
39 | mov %ss, %ax |
40 | mov %ss, %ax |
40 | mov %ax, %ds |
41 | mov %ax, %ds |
41 | mov %ax, %es |
42 | mov %ax, %es |
42 | mov %ax, %fs |
43 | mov %ax, %fs |
43 | # Do not set %gs, it contains descriptor that can see TLS |
44 | # Do not set %gs, it contains descriptor that can see TLS |
44 | 45 | ||
- | 46 | # Pass the PCB pointer to __main as the first argument |
|
- | 47 | pushl %ebx |
|
45 | call __main |
48 | call __main |
46 | call main |
49 | |
47 | call __exit |
50 | call __exit |