MCPcopy Create free account
hub / github.com/Louisym/MiniCC / lesson_1_process

Function lesson_1_process

tutorials/14a_os_isolation_primer.py:27–61  ·  view source on GitHub ↗

类比: 进程就像一个"员工" 你(操作系统)是一家公司的老板。 每次你要完成一个任务(比如运行 ls),你就雇一个临时工(进程)。 这个临时工有自己的: - 工号(PID,进程ID) - 工位(内存空间) - 工作目录(当前目录) - 环境信息(环境变量,比如 HOME 在哪) 当任务完成后,临时工就离开了(进程退出)。

()

Source from the content-addressed store, hash-verified

25# 你在 Python 里写 os.system("ls") 时发生了什么?
26
27def lesson_1_process():
28 """
29 类比: 进程就像一个"员工"
30
31 你(操作系统)是一家公司的老板。
32 每次你要完成一个任务(比如运行 ls),你就雇一个临时工(进程)。
33 这个临时工有自己的:
34 - 工号(PID,进程ID)
35 - 工位(内存空间)
36 - 工作目录(当前目录)
37 - 环境信息(环境变量,比如 HOME 在哪)
38
39 当任务完成后,临时工就离开了(进程退出)。
40 """
41 print("=" * 60)
42 print("第一课: 什么是进程")
43 print("=" * 60)
44
45 # 当前进程(就是你正在运行的这个 Python 脚本)
46 print(f"\n当前进程的信息:")
47 print(f" PID (工号): {os.getpid()}")
48 print(f" 父进程 PID (老板的工号): {os.getppid()}")
49 print(f" 工作目录 (工位): {os.getcwd()}")
50 print(f" HOME (家的地址): {os.environ.get('HOME', '未设置')}")
51 print(f" 用户名: {os.environ.get('USER', '未设置')}")
52
53 # 启动一个子进程(雇一个临时工)
54 print(f"\n启动子进程执行 'echo hello':")
55 result = subprocess.run(
56 ["echo", "hello"],
57 capture_output=True, text=True,
58 )
59 print(f" 子进程输出: {result.stdout.strip()}")
60 print(f" 子进程退出码: {result.returncode}")
61 print(f" (子进程已结束,临时工走了)")
62
63
64# ============================================================

Callers 1

Calls 2

runMethod · 0.80
getMethod · 0.45

Tested by

no test coverage detected