GeekFest 2023 kernel

From DDCIDeos
Jump to navigationJump to search

Kismet

  • New features:
    • Support 2 new architectures: aarch64 and x86_64
      • 64-bit only, 32-bit apps will not run
  • Enhancements:
    • Significantly improve the performance of virtualQueryEx()
    • Increase SMO/resource/stack VAS area - 64-bit only
  • Bug Fixes:
    • Fix LLKMI.
    • Change lock level needed for process and SMO names to level 2 - reduce longest level 3 lock time
  • Non-backward compatible changes:
    • Remove support for PE images (impacts Honeywell only)
    • Change ELF symbol resolution to match the spec
    • Remove support for the following functions:
      • setKernelAttributes - Use Ex
      • getProcessDebugStatus - Use Ex
      • physicalInterruptNumber - Use platformInterruptNumber
      • getRegistryIPCInfoBlock - No alternate, no more produce library support
      • getProducerAndConsumerIndicesFromRegistry - No alternate, no more produce library support
      • virtualReserve - Use setNextLibraryStartAddress or adjustNextLibraryStartAddress
      • mapViewOfKernelFile - Use mapViewOfKernelFileByHandle
      • firstKernelFile - Use findKernelFile or firstDirectoryEntry
      • kernelFileByHandle - Use kernelFileStat
      • nextKernelFile - Use nextDirectoryEntry
      • findFirstKernelFile - Use findKernelFile firstDirectoryEntry
      • findFirstKernelFileByHandle - Use kernelFileStat
      • findNextKernelFile - Use nextDirectoryEntry
      • platformResourcePhysicalAddress - Use platformResourcePhysicalAddress64
      • readPlatformResource[Byte|Word|DWord] - Use readPlatformResource[8|16|32]
      • writePlatformResource[Byte|Word|DWord] - Use writePlatformResource[8|16|32]
      • getSystemRequiredPadPerTick - Use getSchedulerInfo
      • setSystemRequiredPadPerTick - Use setSchedulerRequiredPadPerTick
      • getSystemRequiredPadLowWaterMark - Use getSchedulerInfo
      • setSystemRequiredPadLowWaterMark - Use setSchedulerRequiredPadLowWaterMark
    • Remove align{1,2,4,8}.h, unalign.h, pack.h, unpack.h, parapi.h, and deprecated-types.h
  • Requested new features:
    • Replace names as access control with UGO - probably not backward compatible
    • Support COPY relocations
    • Consistent 653 runtime, RTEMS runtime, and RMA scheduling primitives
    • System scope semaphore
    • Shutdown hook capability
    • Create tool for platform integrator to remove need for DDCI to perform btree analysis
    • Fix, replace, or remove required pad pool
    • Support configuring pages with no execute access (for security).
    • PAL/PRL registry platform resource lookup
    • PRL interrupt handling
    • User programmable timer
    • Add Alignment requirement on BIF file integrity key'
    • callPlatformResource more data
    • exceptionHandler access to all registers (core file help)
    • ? slack pools/distribution, sleep API
    • ?

Status

  • aarch64 running on qemu, not tested on real hardware.
  • x86_64 in work.
  • Requirements in work, aarch64 nearly complete(cpu regs).
  • See Kernel_64 and Deos_64-bit_Port

Post Kismet

  • Improve crittime customer guidance
  • Drop 32-bit support
  • Support for another processor architecture? RISC-V?
  • ?