Add OSSec notes
All checks were successful
the build was successful

This commit is contained in:
Valentin Brandl 2018-10-15 15:54:54 +02:00
parent 8066e69ee4
commit c2f877c1ac
No known key found for this signature in database
GPG Key ID: 30D341DD34118D7D
3 changed files with 104 additions and 0 deletions

View File

@ -0,0 +1,8 @@
---
title: Betriebssysteme
date: 2018-10-15
---
# Betriebssysteme
Bell-LaPaluda?

View File

@ -0,0 +1,88 @@
---
title: x86 ASM
date: 2018-10-15
---
# x86 ASM
## Outline
* 32 bit System
## Syntax
### Intel Syntax (verwendet in Vorlesung)
* Intel Syntax (Ziel Operant ist immer links)
* Adressen in `[1234]`
### AT&T Syntax
* Ziel Operant ist rechts
* Register mit `%`
* Number Literals mit `$`
## Memory Layout
* `.bss` global uninitialized variables
* `.data` global initialized variables
* heap: dynamic variables
* `.text`: code (usually read-only)
* stack: lokale Variablen + procedure activation records
* heap grows up
* stack grows down
### Stack Frame
* **ESP**: Ende des Stacks
* **EBP**: Begin des aktuellen Stack Frames
Enthält:
* Lokale Variablen
* Parameter
* Caller Adresse
| :---: |
| <prev frame> |
| --- |
| Parameters |
| :---: |
| Return address |
| :---: |
| prev frame address (alter *EBP*) |
| :---: |
| *EBP* -> |
| :---: |
| Local variables |
| :---: |
| *ESP* -> |
| :---: |
| <free memory> |
| :---: |
### MOV
* `mov eax, ebx`: `eax = ebx`
* `mov edx, [1234]`: `edx = *1234`
### `PUSH`
* `push ecx`: Wert von `ecx` auf den Stack, `esp - 4`
* `pop esi`: `esp + 4`
### `RET`
* `pop eip`
### Subroutinen
`f(1,2,3)` ->
```
push 3
push 2
push 1
call f
```

8
school/os-sec/index.md Normal file
View File

@ -0,0 +1,8 @@
---
title: Betriebssystemsicherheit
---
# Betriebssystemsicherheit
* [Betriebssysteme](20181015_0-betriebssysteme)
* [x86 ASM](20181015_1-x86)