predstavitev seminarja
This commit is contained in:
parent
a82fd0ab4e
commit
f7a1d65649
7 changed files with 49 additions and 0 deletions
BIN
seminar/Malloc.pptx
Normal file
BIN
seminar/Malloc.pptx
Normal file
Binary file not shown.
BIN
seminar/a.out
Normal file
BIN
seminar/a.out
Normal file
Binary file not shown.
BIN
seminar/large_bins.png
Normal file
BIN
seminar/large_bins.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 15 KiB |
17
seminar/malloc_0_size.c
Normal file
17
seminar/malloc_0_size.c
Normal file
|
|
@ -0,0 +1,17 @@
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <stdio.h>
|
||||||
|
|
||||||
|
int main(){
|
||||||
|
int *ptr = malloc(0);
|
||||||
|
if(ptr == NULL){
|
||||||
|
printf("Vrednost ptr je NULL\n");
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
printf("Vrednost ptr je %d\n", ptr);
|
||||||
|
|
||||||
|
int skrivnostnaVrednost = *ptr;
|
||||||
|
printf("SkrivnostnaVrednost na katero kaže prt je %d\n", skrivnostnaVrednost);
|
||||||
|
|
||||||
|
free(ptr);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
32
seminar/malloc_sbrk_brk.c
Normal file
32
seminar/malloc_sbrk_brk.c
Normal file
|
|
@ -0,0 +1,32 @@
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <unistd.h>
|
||||||
|
|
||||||
|
int main() {
|
||||||
|
printf("Konec originalne kopice programa: %p\n", sbrk(0));
|
||||||
|
|
||||||
|
//dodelimo nekaj spomina, sbkr vrne začetek nove kopice
|
||||||
|
void *p = sbrk(4096);
|
||||||
|
//preverimo za neuspeh
|
||||||
|
if(p == (void*)-1) {
|
||||||
|
printf("sbkr failed\n");
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
//razlika v koncih je vrjetno zaradi klica printf, ki morda klice malloc
|
||||||
|
printf("Konec kopice pred klicem sbkr: %p\n", p);
|
||||||
|
printf("Konec kopice po klicu sbkr: %p\n", sbrk(0));
|
||||||
|
|
||||||
|
//shranimo nekaj na spomin
|
||||||
|
int *x = (int*)p;
|
||||||
|
x[0] = 42;
|
||||||
|
printf("Na mestu %p je shranjeno stevilo %d\n", &x[0], x[0]);
|
||||||
|
|
||||||
|
//odstranimo spomin
|
||||||
|
if(brk(p) != 0) {
|
||||||
|
printf("Odstranjevanje je neuspesno!\n");
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
printf("Po odstranjevanju je konec kopice na %p\n", sbrk(0));
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
BIN
seminar/seminar_SPO__malloc.pdf
Normal file
BIN
seminar/seminar_SPO__malloc.pdf
Normal file
Binary file not shown.
BIN
seminar/server_throughput_malloc.png
Normal file
BIN
seminar/server_throughput_malloc.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 134 KiB |
Loading…
Add table
Add a link
Reference in a new issue