Hi, by nature Expanded-Memory works in any mode. It uses bank-switching and was originally made for real-mode and the IBM PC 5150/5160.
It depends on the EMS manager to provide that memory. Originally, EMS memory was installed on a dedicated ISA card.
EMM386/QEMM usually switch to protected mode in order to access memory from above 1MiB, which in turn they use to emulate EMS.
Some 286 chipsets emulated EMS and didn't require protected-mode.
That memory beyond 1MIB is often called Extended-Memory. But becareful, XMS does not quite equal "Extended-Memory".
XMS stands for EXtended Memory Specification and is an API for programs.
Just like with EMS, it is up to the XMS manager (Himem.sys) to provide that memory somehow.
There is also a BIOS service, int 15h, which allows to access little pieces of Extended Memory (in real-mode).
In the past/the 80s, Himem.sys switched back-and-forth between real-/protected-mode.
On a 286 system. it caused a CPU reset to get back to real-mode
This changed in the late 80s/early 90s, when Himem.sys from IBM/Microsoft got different code paths.
Himem.sys since 2.06 uses the LOADALL instruction on a 286 to "go back" to real-mode (in reality, it never had to leave it).
On a 386, it uses the official method to go back to real-mode.
Himem.sys from MS-DOS 5 and 6.x do not reset the 286.
Edit: Fixes. Line of text added.
Edit: Removed writing about EMM286 (since it relies on Himem.sys)
"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel
//My video channel//