assembly

make: *** 'mykernel.bin' ターゲットを生成するルールはありません。止める
assembly

make: *** 'mykernel.bin' ターゲットを生成するルールはありません。止める

私はOSで作業していますが、makefile.winでこのエラーが発生します。 linker.ld出力ファイルが、私が作成しているファイル(mykernel.bin)の命名規則と一致しないようです。これがエラーの原因であるかどうかはわかりません。これは64ビットシステム用に構築されています。 file.winの生成 ASPARAMS = LDPARAMS = -melf_x86_64 objects = loader.o kernel.o %.o: %.cpp g++ $(GPPPARAMS) -o $@ -c $< %.o: %.s ...

Admin

シンプルなUnixオーディオインターフェースを探しています。
assembly

シンプルなUnixオーディオインターフェースを探しています。

シンプルなUnixオーディオインターフェースを探しています。 楽しみながら、昔のゲームを移植してx86アセンブリ言語を学んでいます。最も要求の厳しい部分は、単純なサウンド(主に方形波)を再生する方法を見つけることです。現在、ゲームはスピーカーに直接書き込むことができると予想されます。現在、Unixシステムでオーディオを再生する最も簡単な方法は何ですか? 基準 より正確には、これが私が探しているものです(最も重要な基準)。 波形を再生できます。 (8ビット、8000Hzで十分です。) アセンブリ言語から呼び出すのに十分簡単です。 最新のDebian GNU ...

Admin

Linuxカーネルに独自のブートローダがあるのはなぜですか?
assembly

Linuxカーネルに独自のブートローダがあるのはなぜですか?

Linuxカーネルコードを操作しようとしていますが、次のメッセージが表示されます。このファイルBIOSで完全なブートローダが実行されているようです。私の印象は、通常、grubがMBRにあり、何とかカーネルを呼び出すことです。 私の質問は次のとおりです (私の知る限り)カーネルにブートローダが組み込まれているのはなぜですか?これが歴史的な理由なのか? 電源ボタンを押すことからカーネルを起動するまで、何が起こるのかを段階的に説明できる人はいますか? ...

Admin

演奏ガイドライン
assembly

演奏ガイドライン

だから私はパフォーマンスとアセンブリで遊んで、次のプログラムを持っています。 .intel_syntax noprefix .global _start _start: mov cl, 2 mov ebx, 0b101 shr ebx, cl and bl, 1 je do_stuff do_stuff: mov eax, 1 mov ebx, 0 int 0x80 8つではperf -e instructions:u ./shift なく9つの指示が表示されますが、理由を見つけることはできません。どの+1コマンド...

Admin

アセンブリコードの接続の問題
assembly

アセンブリコードの接続の問題

これは私のアセンブリコードです。 .section .data mystring: .asciz "Hello world\n" .section .text .globl _start _start: pushl $0 pushl $mystring call printf pushl $0 call exit 私の64ビットUbuntuコンピュータでこのコードを組み合わせて接続しようとしています。32ビットモードで。このコードは、次のコマンドを使用して正常に組み立てられました。 as -32 demo.s ...

Admin

アセンブリの端末システムコール
assembly

アセンブリの端末システムコール

私はLinux用のチェスエンジンを作成したいと思います。 C/C++ またはその他の高度な言語は、外部ライブラリなしで純粋な X64 アセンブリ言語で書かれています。フルスクリーンテキスト/コンソール/ターミナルモードで実行されます。グラフィカルユーザーインターフェースはありません。 Unicode文字を使用してフラグメントを表示します。 WindowsコンソールAPIで実装する方法を知っています。端末に直接アクセスし、フォントをUnicode対応フォントに変更することに関するLinuxカーネルシステムコールは何ですか?私は明らかにそれを調べましたが、主に3...

Admin

UNIXシステムはどのようにアプリケーションを呼び出すのですか?
assembly

UNIXシステムはどのようにアプリケーションを呼び出すのですか?

現在、Arm64プラットフォーム用のCランタイムライブラリを実装していますが、アプリケーションの実行の正確な時点(ELFファイルがエントリポイントとして定義されている)で環境についてどのような前提ができるのかわかりません。環境とは主にスタック設定とCPUレジスタを意味します。 カーネルのソースコードを見て情報をまとめることができましたが、すべてではありませんでした。 私の質問は:アプリケーションの呼び出し規則が文書化および/または標準化されていますか?たとえば、Arm64基本プロシージャコール標準と同等のものを探しています。 私は特にLinuxに興味があるの...

Admin

起動可能なイメージを圧縮して解凍するには?
assembly

起動可能なイメージを圧縮して解凍するには?

Microsoft Windows 11用のMinGWツールチェーンを使用して作成された起動可能なカーネルイメージがあります。プロジェクトのサイズは小さいですが、「このイメージディスクがフロッピーディスクに収まるほど大きくなったら、どのように縮小するのですか?」ということを知っています。 あなたの考えに感謝します。 編集:私のGitアカウントでこのリクエストのサンプルOSを見つけることができます。パウロ32 ...

Admin

システムコールなしで画面に印刷するアセンブリコード
assembly

システムコールなしで画面に印刷するアセンブリコード

Linuxではx86アセンブラを作成して画面に文字を印刷できますか(標準出力)?いいえどのシステムコールが使用されますか? x86アセンブリでは入出力ジョブに特権が付与されており、CPUがRING 0でなければジョブを実行できないため、これは可能ではないと思います。 ...

Admin

.*s は gcc .*c のようには機能しません。
assembly

.*s は gcc .*c のようには機能しません。

私が実行すると、gcc -c *.c次のように実行されます。 gcc -c file1.c -o file1.o gcc -c file2.c -o file2.o gcc -c file3.c -o file3.o ... しかし、as *.s実行中: - as file1.s -o a.out as file2.s -o a.out as file3.s -o a.out ... デフォルトでは、gccはオブジェクトファイルにコンパイルするときにファイル拡張子のみを置き換えますが、gnuはデフォルトのファイル出力をa.outに設定します。アセンブリ中...

Admin

"objdump -d"より優れた逆アセンブラ?
assembly

"objdump -d"より優れた逆アセンブラ?

objdump -dを使用すると、アセンブリ(Intel構文またはAT&T構文)、バイナリオペコードエンコーディング、およびアドレス番号が出力されることがわかりました。私の場合、逆アセンブラはAT&Tアセンブリのみを出力したいと思います。これは、オブジェクトファイルからアセンブリファイルにアセンブリをコピーするために最初の18〜24文字(たとえば、計算されていない)を削除するのが面倒です。 ...

Admin

スクリプトから呼び出されたアセンブラがcrontabで実行されたときに特定のファイルを生成しないのはなぜですか?
assembly

スクリプトから呼び出されたアセンブラがcrontabで実行されたときに特定のファイルを生成しないのはなぜですか?

私はそれを使用していますこのスクリプト私が開発したいくつかのアプリケーションをビルドしてパッケージ化します。スクリプトの内容全体が最後にリストされています。 このcrontabエントリによって呼び出されます。50 23 * * * nice $HOME/update-dl-wwwecm $HOME | tee -a $HOME/build-dl-wwwecm/log デバッグのためにスクリプトをテストディレクトリにコピーし、~/test/20211101/t/少し編集しました。 (スクリプトの最後にハードコードされたパッケージを削除するのと同じです。)また、...

Admin

フロッピーディスクを分解するには?
assembly

フロッピーディスクを分解するには?

nasm -f binフロッピーディスクを分解してコマンドで再組み立てしたいと思います。たとえば、MS-DOS.imgファイルを分解し、コマンドを使用して再構築したいと思いますnasm -f bin。 私はndisasmコマンドを使ってみました: ndisasm -b 16 File.img ...

Admin