diff --git a/aos/init.h b/aos/init.h
index be99a24..85d5da7 100644
--- a/aos/init.h
+++ b/aos/init.h
@@ -5,6 +5,9 @@
 
 namespace aos {
 
+// Initializes glog and gflags.
+void InitGoogle(int *argc, char ***argv);
+
 // In order to use shared memory, one of the Init* functions must be called in
 // exactly 1 thread per process. It is OK to keep going without calling one of
 // them again after fork(2)ing.
@@ -23,35 +26,12 @@
 // exit gracefully).
 void Cleanup();
 
-// Locks everything into memory and sets the limits.  This plus InitNRT are
-// everything you need to do before SetCurrentThreadRealtimePriority will make
-// your thread RT.  Called as part of ShmEventLoop::Run()
-void InitRT();
-
 // Performs the realtime parts of initialization after InitNRT(true) has been called.
 void GoRT(int relative_priority = 0);
 
-// Sets up this process to write core dump files.
-// This is called by Init*, but it's here for other files that want this
-// behavior without calling Init*.
-void WriteCoreDumps();
-
-// Sets the current thread's realtime priority.
-void SetCurrentThreadRealtimePriority(int priority);
-
-// Sets the current thread back down to non-realtime priority.
-void UnsetCurrentThreadRealtimePriority();
-
 // Pins the current thread to CPU #number.
 void PinCurrentThreadToCPU(int number);
 
-// Sets the name of the current thread.
-// This will displayed by `top -H`, dump_rtprio, and show up in logs.
-// name can have a maximum of 16 characters.
-void SetCurrentThreadName(const ::std::string &name);
-
-void LockAllMemory();
-
 }  // namespace aos
 
 #endif  // AOS_INIT_H_
