opuntiaOS - an operating system targeting x86 and ARMv7
at master 726 B view raw
1/* 2 * Copyright (C) 2020-2022 The opuntiaOS Project Authors. 3 * + Contributed by Nikita Melekhin <nimelehin@gmail.com> 4 * 5 * Use of this source code is governed by a BSD-style license that can be 6 * found in the LICENSE file. 7 */ 8 9#ifndef _KERNEL_TASKING_BITS_DUMP_H 10#define _KERNEL_TASKING_BITS_DUMP_H 11 12#include <libkern/types.h> 13#include <tasking/proc.h> 14 15typedef int (*dump_saver_t)(const char*); 16typedef ssize_t (*sym_resolver_t)(void* symtab, size_t syms_n, uint32_t tp); 17 18struct dump_data { 19 proc_t* p; 20 uint32_t entry_point; 21 void* syms; 22 size_t symsn; 23 char* strs; 24 dump_saver_t writer; 25 sym_resolver_t sym_resolver; 26}; 27typedef struct dump_data dump_data_t; 28 29#endif // _KERNEL_TASKING_BITS_DUMP_H