49 virtual bool filesystemConstrained()
const {
59 enum class UserReturnResult { Continue, Terminal };
60 enum class UserReturnEventResult { Deliver, Consumed, Terminal };
62 return UserReturnResult::Continue;
65 return UserReturnEventResult::Deliver;
72 enum KillReason { Interrupted = 0, Terminated = 1, Unknown = 255 };
84 GeneralProtectionFault = 2,
96 FileMappingFault = 14,
121 virtual void acquire();
124 virtual void release();
142 InterruptState* pState =
nullptr, uintptr_t faultAddress = 0,
143 uintptr_t errorCode = 0);
157 if ((!m_pProcess) | (m_pProcess == p))
160 WARNING(
"An attempt was made to change the Process of a Subsystem!");
168 SyscallState& state) = 0;
191 SubsystemType m_Type;
virtual bool invoke(File *originalFile, const String &originalName, Vector< String > &argv, Vector< String > &env, SyscallState &state)=0