aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.devcontainer/Dockerfile4
-rw-r--r--.devcontainer/devcontainer.json4
-rw-r--r--kernel/proc/proc.c8
3 files changed, 15 insertions, 1 deletions
diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile
new file mode 100644
index 0000000..94ba240
--- /dev/null
+++ b/.devcontainer/Dockerfile
@@ -0,0 +1,4 @@
+FROM --platform=linux/x86_64 mcr.microsoft.com/devcontainers/base:ubuntu-22.04
+LABEL authors="sotech117"
+
+RUN sudo apt-get update; sudo apt-get install python2.7 python2.7-minimal cscope nasm make build-essential grub2-common qemu xorriso genisoimage xterm gdb -y \ No newline at end of file
diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json
new file mode 100644
index 0000000..9784a11
--- /dev/null
+++ b/.devcontainer/devcontainer.json
@@ -0,0 +1,4 @@
+{
+ "name": "os-dev",
+ "build": { "dockerfile": "Dockerfile" }
+} \ No newline at end of file
diff --git a/kernel/proc/proc.c b/kernel/proc/proc.c
index 9837a8a..6155b58 100644
--- a/kernel/proc/proc.c
+++ b/kernel/proc/proc.c
@@ -334,8 +334,14 @@ void proc_kill_all()
// TODO: consider children on children
list_iterate(&proc_initproc->p_children, thr, kthread_t, kt_plink)
{
-
+ if(&thr->kt_proc != curproc)
+ {
+ kthread_cancel(thr, 0);
+ }
}
+
+ // kill the current proc
+ do_exit(0);
}
/*