KolibriOS kernel
dll.inc File Reference

Functions

void get_notify (dword p_ev)
 
void pci_read32 (dword bus, dword devfn, dword reg)
 
void pci_read16 (dword bus, dword devfn, dword reg)
 
void pci_read8 (dword bus, dword devfn, dword reg)
 
void pci_write8 (dword bus, dword devfn, dword reg, dword val)
 
void pci_write16 (dword bus, dword devfn, dword reg, dword val)
 
void pci_write32 (dword bus, dword devfn, dword reg, dword val)
 
void srv_handler (dword ioctl)
 
void get_service (dword sz_name)
 
void reg_service_ex (dword name, dword handler, dword srvsize)
 
void get_proc (dword exp, dword sz_name)
 
void get_coff_sym (dword pSym, dword count, dword sz_sym)
 
void get_curr_task ()
 
void get_fileinfo (dword file_name, dword info)
 
void read_file (dword file_name, dword buffer, dword off, dword bytes)
 
void load_file (dword file_name)
 Allocate kernel memory and loads the specified file. More...
 
void load_file_umode (dword file_name)
 
void get_proc_ex (dword proc_name, dword imports)
 
void fix_coff_symbols (dword sec, dword symbols, dword sym_count, dword strings, dword imports)
 
void fix_coff_relocs (dword coff, dword sym, dword delta)
 
void rebase_coff (dword coff, dword sym, dword delta)
 
void load_library (dword file_name, dword encoding)
 

Variables

label srv_handlerEx
 
handle restore
 
label reg_service
 
label reg_usb_driver
 
dd cmd
 
dd offset
 
dd count
 
dd buff
 
dd name
 
dd attr
 
dd flags
 
dd cr_time
 
dd cr_date
 
dd acc_time
 
dd acc_date
 
dd mod_time
 
dd mod_date
 
dd file_size
 
dd file
 
dd file2
 
dd km_file
 
dd um_file
 
MUTEX unpack_mutex
 
dd retval
 
dd n_sec
 
label coff_get_align
 in: edx -> COFF_SECTION struct out: eax = alignment as mask for bits to drop More...
 
dd fullname
 
rb fileinfo
 
dd coff
 
dd img_base
 
label init_dlls_in_thread
 initialize [APPDATA.dlls_list_ptr] for given thread DLL is per-process object, so APPDATA.dlls_list_ptr must be kept in sync for all threads of one process. out: eax = APPDATA.dlls_list_ptr if all is OK, NULL if memory allocation failed More...
 
label dereference_dll
 in: eax = number of references to delete, esi -> DLLDESCR struc More...
 
label destroy_hdll
 
label destroy_all_hdlls
 ecx -> APPDATA for slot, esi = dlls_list_ptr More...
 
label stop_all_services
 
label create_kernel_object
 
label destroy_kernel_object
 
label create_object
 
label destroy_object
 

Function Documentation

◆ fix_coff_relocs()

void fix_coff_relocs ( dword  coff,
dword  sym,
dword  delta 
)

◆ fix_coff_symbols()

void fix_coff_symbols ( dword  sec,
dword  symbols,
dword  sym_count,
dword  strings,
dword  imports 
)

◆ get_coff_sym()

void get_coff_sym ( dword  pSym,
dword  count,
dword  sz_sym 
)

◆ get_curr_task()

void get_curr_task ( )

◆ get_fileinfo()

void get_fileinfo ( dword  file_name,
dword  info 
)

◆ get_notify()

void get_notify ( dword  p_ev)

◆ get_proc()

void get_proc ( dword  exp,
dword  sz_name 
)

◆ get_proc_ex()

void get_proc_ex ( dword  proc_name,
dword  imports 
)

◆ get_service()

void get_service ( dword  sz_name)

◆ load_file()

void load_file ( dword  file_name)

Allocate kernel memory and loads the specified file.

Parameters
file_namePath to file
Returns
File image in kernel memory in eax and size of file in ebx
Warning
You must call kernel_free() to delete each file loaded by the load_file() function
Source
core/dll.inc:440

◆ load_file_umode()

void load_file_umode ( dword  file_name)

◆ load_library()

void load_library ( dword  file_name,
dword  encoding 
)

◆ pci_read16()

void pci_read16 ( dword  bus,
dword  devfn,
dword  reg 
)

◆ pci_read32()

void pci_read32 ( dword  bus,
dword  devfn,
dword  reg 
)

◆ pci_read8()

void pci_read8 ( dword  bus,
dword  devfn,
dword  reg 
)

◆ pci_write16()

void pci_write16 ( dword  bus,
dword  devfn,
dword  reg,
dword  val 
)

◆ pci_write32()

void pci_write32 ( dword  bus,
dword  devfn,
dword  reg,
dword  val 
)

◆ pci_write8()

void pci_write8 ( dword  bus,
dword  devfn,
dword  reg,
dword  val 
)

◆ read_file()

void read_file ( dword  file_name,
dword  buffer,
dword  off,
dword  bytes 
)

◆ rebase_coff()

void rebase_coff ( dword  coff,
dword  sym,
dword  delta 
)

◆ reg_service_ex()

void reg_service_ex ( dword  name,
dword  handler,
dword  srvsize 
)

◆ srv_handler()

void srv_handler ( dword  ioctl)

Variable Documentation

◆ acc_date

dd acc_date
Initial value
?
Source
core/dll.inc:447
Initial value
?
Source
core/dll.inc:552

◆ acc_time

dd acc_time
Initial value
?
Source
core/dll.inc:446
Initial value
?
Source
core/dll.inc:551

◆ attr

dd attr
Initial value
?
Source
core/dll.inc:442
Initial value
?
Source
core/dll.inc:547

◆ buff

dd buff
Initial value
?
Source
core/dll.inc:369
Initial value
?
Source
core/dll.inc:405
Initial value
?
Source
core/taskman.inc:603

◆ cmd

dd cmd
Initial value
?
Source
core/dll.inc:365
Initial value
?
Source
core/dll.inc:401

◆ coff

dd coff
Initial value
?
Source
core/dll.inc:905

◆ coff_get_align

label coff_get_align

in: edx -> COFF_SECTION struct out: eax = alignment as mask for bits to drop

Source
core/dll.inc:879

◆ count

dd count
Initial value
?
Source
core/dll.inc:368
Initial value
?
Source
core/dll.inc:404
Initial value
?
Source
core/memory.inc:766

◆ cr_date

dd cr_date
Initial value
?
Source
core/dll.inc:445
Initial value
?
Source
core/dll.inc:550

◆ cr_time

dd cr_time
Initial value
?
Source
core/dll.inc:444
Initial value
?
Source
core/dll.inc:549

◆ create_kernel_object

label create_kernel_object

◆ create_object

label create_object

◆ dereference_dll

label dereference_dll

in: eax = number of references to delete, esi -> DLLDESCR struc

Source
core/dll.inc:1311

◆ destroy_all_hdlls

label destroy_all_hdlls

ecx -> APPDATA for slot, esi = dlls_list_ptr

Source
core/dll.inc:1345

◆ destroy_hdll

label destroy_hdll

◆ destroy_kernel_object

label destroy_kernel_object

◆ destroy_object

label destroy_object

◆ file

dd file
Initial value
?
Source
core/dll.inc:452

◆ file2

dd file2
Initial value
?
Source
core/dll.inc:453

◆ file_size

dd file_size
Initial value
?
Source
core/dll.inc:450
Initial value
?
Source
core/dll.inc:555

◆ fileinfo

rb fileinfo
Initial value
40
Source
core/dll.inc:904

◆ flags

dd flags
Initial value
?
Source
core/dll.inc:443
Initial value
?
Source
core/dll.inc:548
Initial value
?
Source
core/taskman.inc:671

◆ fullname

dd fullname
Initial value
?
Source
core/dll.inc:903

◆ img_base

dd img_base
Initial value
?
Source
core/dll.inc:906

◆ init_dlls_in_thread

label init_dlls_in_thread

initialize [APPDATA.dlls_list_ptr] for given thread DLL is per-process object, so APPDATA.dlls_list_ptr must be kept in sync for all threads of one process. out: eax = APPDATA.dlls_list_ptr if all is OK, NULL if memory allocation failed

Source
core/dll.inc:1291

◆ km_file

dd km_file
Initial value
?
Source
core/dll.inc:557

◆ mod_date

dd mod_date
Initial value
?
Source
core/dll.inc:449
Initial value
?
Source
core/dll.inc:554

◆ mod_time

dd mod_time
Initial value
?
Source
core/dll.inc:448
Initial value
?
Source
core/dll.inc:553

◆ n_sec

dd n_sec
Initial value
?
Source
core/dll.inc:788
Initial value
?
Source
core/dll.inc:843

◆ name

dd name
Initial value
?
Source
core/dll.inc:371
Initial value
?
Source
core/dll.inc:407

◆ offset

dd offset
Initial value
?
Source
core/dll.inc:366
Initial value
?
Source
core/dll.inc:402
Initial value
?
Source
core/taskman.inc:605

◆ reg_service

label reg_service

◆ reg_usb_driver

label reg_usb_driver

◆ restore

_process restore
Initial value
Source
core/dll.inc:191
Initial value
Source
core/dll.inc:192
Initial value
Source
core/dll.inc:193
Initial value
Source
core/dll.inc:194
Initial value
Source
core/dll.inc:195
Initial value
Source
core/dll.inc:196
Initial value
Source
core/sys32.inc:325
Initial value
Source
core/sys32.inc:326
Initial value
Source
core/sys32.inc:327
Initial value
Source
core/sys32.inc:328
Initial value
Source
core/sys32.inc:329
Initial value
Source
core/sys32.inc:330
Initial value
Source
core/sys32.inc:331
Initial value
Source
core/sys32.inc:332
Initial value
Source
core/sys32.inc:333
Initial value
Source
core/sys32.inc:334
Initial value
Source
core/sys32.inc:335
Initial value
Source
core/sys32.inc:336
Initial value
Source
core/sys32.inc:764
Initial value
Source
core/sys32.inc:765

◆ retval

dd retval
Initial value
?
Source
core/dll.inc:725

◆ srv_handlerEx

label srv_handlerEx

◆ stop_all_services

label stop_all_services

◆ um_file

dd um_file
Initial value
?
Source
core/dll.inc:558

◆ unpack_mutex

MUTEX unpack_mutex
Initial value
Source
core/dll.inc:690