技術記事– category –
-
Swift
DSPComplexとDSPSplitComplex【Swift vDSP】
Version: swift-tools-version: 6.0 定義 DSPComplex DSPComplexの定義は以下です。 public struct DSPComplex { public init() public init(real: Float, imag: Float) public var real: Float public var imag: Float } 構造体として、実部と虚部の値が... -
音響学
オクターブバンドの中心周波数と帯域
オクターブバンド オクターブバンドの比率 オクターブバンドの中心周波数はIEC 61260-1:2014によって規格化されています。 base-10, base-2が存在しますが、多くの音響機器ではbase-10が採用されているようです。base-10において、1オクターブあたりの比率... -
Swift
TextField & Slider 値の同期【SwiftUI】
TextFieldの値とSliderのバーを同期させる方法 自作のBinding import SwiftUI struct SliderTextFieldSyncView: View { @State private var value: Double = 50.0 // 共通の状態 var body: some View { VStack(spacing: 20) { Slider(value: $value, in: 0... -
OS(オペレーティングシステム)
スケジューリング【オペレーティングシステム】
スケジューリングとは プロセスAからプロセスBにプロセスが切り替わるとき、OSでは割り込み処理、プロセススケジューリング、プロセスディスパッチャと3つの処理が実行されます。 このとき、切り替えるときどの実行可能状態のプロセスを実行するのかを決定... -
OS(オペレーティングシステム)
CPUバウンドとI/Oバウンド【オペレーティングシステム】
プロセスの処理による分類 プロセスは大きく分けて2つの処理に分類できます。CPU処理と入出力処理 (I/O処理)です。 CPU処理: 実際にプロセスがCPU上で計算や演算を行っている処理。 入出力処理: ファイル、ネットワーク、デバイスなどへのデータ読み書きや... -
OS(オペレーティングシステム)
スレッド【オペレーティングシステム】
スレッド スレッドとは プロセスは生成・消滅、コンテキストスイッチなどの操作に時間がかかります。これらはプロセスを処理するという本質的には関係ないオーバーヘッド処理になります。 これらの操作を高速化し、効率的にシステムリソースを活用するため... -
技術記事
プロセスの生成と消去【オペレーティングシステム】
本記事では、プロセスの生成と消去が実際にどのような手順で行われるのかを解説します。 プロセスの生成 プロセスは新しいプロセスを生成できることができます。このとき、プロセスを生成する側を親プロセス、生成される側を子プロセスと呼びます。さらに... -
技術記事
PCB(プロセス制御ブロック)【オペレーティングシステム】
前回の記事までの記事でプロセスはOSによって状態管理されていることを解説しました。しかし、実際にはどのような構造で管理されているかを今回の記事では解説したいと思います。 プロセス制御ブロック プロセスは、OSシステム内部ではプロセス制御ブロッ... -
技術記事
コンテキストスイッチ【オペレーティングシステム】
コンテキストスイッチ OSの機能として、実行中のプロセスを切り替える機能があります。これをプロセススイッチあるいはコンテキストスイッチと呼びます。 一般的にコンテキストスイッチは以下のように、割り込みを使って行われます。 実行中のプロセスAか... -
FPGA
AXI バスの基礎
AXIの概要 AXIプロトコルを学習する意味について説明します。 FPGAの設計にAXIは必ず必要なものではありません。FPGAは単純なIO接続で設計が可能です。例えば、GPIOを使用してFPGAに接続できますが、本当に単純なFPGA設計のみでしか利用できません。 より...