質問: コンパイルされたカーネル4.19が起動しない:「カーネルパニックが同期しない:システムがメモリ上でデッドロックしています」 システムコールを追加する割り当てがあるため、ubuntu 14.04でカーネル4.19をコンパイルしていますが、このカーネルを起動しようとすると、エラーが発生します。kernel panic - not syncing: system is deadlocked on memory このメッセージが表示された後、何も起こりません カーネルを数回コンパイルして、モジュールをインストールしました。古いターミナルではエラーは表示されませんでした。 gpartedを使用して/dev/sda1を拡大し、スワップ領域を設定しました。 標準のubuntu 14.04カーネルは正常に起動します。ログインしてスムーズに利用できます。 私が使用したコマンド: sudo cp /boot/config-**** .config sudo make menuconfig # i did not change anything here sudo make -j4 sudo make modules_install sudo make install reboot syscallの場合、sys.cに非常に単純なhelloworldを追加するだけです。 asmlinkage int sys_mysyscall(int arg){printk("hello %d\n",arg);return 0;} syscalls.hとsyscall_64.tblに追加しました。
回答: 私はメモリを4 gに変更することで問題を解決しました。ubuntu 18.04、カーネル4.20.1(stable)をダウンロードしましたが、何も変更せずにもう一度実行しましたが、同じエラーがまだ表示されるので、メモリを再度拡大しようとしましたが、動作します。以前に1 gから2 gに変更したことが原因だとは思いませんでしたが、うまくいきませんでした。使用する:wjrforcyber@wjr:~$ uname -a それが示している:linux wjr 4.20.1 #1 smp fri jan 11 20:57:27 cst 2019 x86_64 x86_64 x86_64 gnu/linux 成功!