Procedure of large tables sorted

How are large tables that do not fit in memory sorted? Give the overall procedure. How are outer join and non–equi-join implemented?