diff --git a/atrace/atrace.c b/atrace/atrace.c
index 5edc47b..890165a 100644
--- a/atrace/atrace.c
+++ b/atrace/atrace.c
@@ -39,6 +39,8 @@
 static bool g_traceOverwrite = false;
 static int g_traceBufferSizeKB = 2048;
 static bool g_compress = false;
+static bool g_nohup = false;
+static int g_initialSleepSecs = 0;
 
 /* Global state */
 static bool g_traceAborted = false;
@@ -417,7 +419,9 @@
 }
 
 static void handleSignal(int signo) {
-    g_traceAborted = true;
+    if (!g_nohup) {
+        g_traceAborted = true;
+    }
 }
 
 static void registerSigHandler() {
@@ -443,7 +447,7 @@
     for (;;) {
         int ret;
 
-        ret = getopt(argc, argv, "b:cidflst:uwz");
+        ret = getopt(argc, argv, "b:cidflst:uwznS:");
 
         if (ret < 0) {
             break;
@@ -478,10 +482,18 @@
                 g_traceFrequency = true;
             break;
 
+            case 'n':
+                g_nohup = true;
+                break;
+
             case 's':
                 g_traceSchedSwitch = true;
             break;
 
+            case 'S':
+                g_initialSleepSecs = atoi(optarg);
+            break;
+
             case 't':
                 g_traceDurationSeconds = atoi(optarg);
             break;
@@ -516,6 +528,10 @@
 
     registerSigHandler();
 
+    if (g_initialSleepSecs > 0) {
+        sleep(g_initialSleepSecs);
+    }
+
     bool ok = startTrace(isRoot);
 
     if (ok) {
