c2a-core icon indicating copy to clipboard operation
c2a-core copied to clipboard

名前変更したいもの一覧!

Open meltingrabbit opened this issue 2 years ago • 22 comments

概要

名前変更したいもの一覧!

詳細

ひとまず集めよう

リストアップ後やるべきこと

  • 変更
  • ドキュメント整備

meltingrabbit avatar Oct 06 '22 06:10 meltingrabbit

If Wrapper -> Driver

じゃあ今の Driver は?

meltingrabbit avatar Oct 06 '22 06:10 meltingrabbit

単体の Driver という語を無くし, IfWrapperDevice Driver, DriverComponent Driver とするなどの案

sksat avatar Oct 06 '22 06:10 sksat

文脈

  • if wrapper はたしかにデバイスドライバだけど,Driverもドライバなだよなぁという
  • Driver,プロトコル・スタックと,コンポーネントの抽象化,の2つの役割がありそう.

meltingrabbit avatar Oct 06 '22 06:10 meltingrabbit

既存のOS

  • https://docs.zephyrproject.org/latest/kernel/drivers/index.html
  • https://docs.zephyrproject.org/3.0.0/guides/networking/net-stack-architecture.html

meltingrabbit avatar Oct 06 '22 06:10 meltingrabbit

  • IF Wrapper -> Device Driver: DD
  • Driver -> Component Driver: CD
  • Driver Super -> Component Driver Super: CDS
  • Driver Inctance -> Component Inctance: CI
  • IF List: Device List: DL

meltingrabbit avatar Oct 06 '22 06:10 meltingrabbit

device は, SW 的な device の原義に寄せていき,いわゆるコンポは componet として区別していこう(お気持ち表明)

meltingrabbit avatar Oct 06 '22 06:10 meltingrabbit

  • 現状のC2A語のIFDriverは単純に曖昧だし過剰
  • IfWrapperがデバドラなのはかなり明らかなのでdriverと名付けたいが,現状のC2A語のDriverがconflictする
  • 一旦現状に即した名前としてはやっぱりIfWrapper -> Device Driver, Driver -> Component Driverがよさそう
    • Component Driverについてはもうちょっと責任を見つめて整理したい気はするけど,それは後からでもいい
    • 実際C2A userのsrc_user/Drivers/見たらコンポの名前のディレクトリが並んでいるので気持ちからしてそうでしょう

sksat avatar Oct 06 '22 06:10 sksat

src_user/Drivers/ ,今雑に srx.c とかあるけど,本当は型番とかつけないとだめそうだね. component driver なら(また別で話が進んでる,driver 分離の文脈でも)

meltingrabbit avatar Oct 06 '22 06:10 meltingrabbit

slack からの引用

KOBA789
「コンポドライバは新規で書かないとですね」「でもこのコンポも物理層は UART ですよね」「じゃあデバドラは使いまわせますね」という会話ができる。素晴らしい

meltingrabbit avatar Oct 06 '22 06:10 meltingrabbit

現C2A語のIFってIfWrapperにあるやつ全部の抽象化インターフェースではないですよね(たぶん)?Device Listだけは不適当だと思う

sksat avatar Oct 06 '22 06:10 sksat

ですね.正確には Drivrer Super に載せる通信インターフェースです.

フレーム解析やってほしいやつ.

UART, CCSDS, SPI, I2C とか.

meltingrabbit avatar Oct 06 '22 06:10 meltingrabbit

GPIO とか memory (バス直結の.SPI とかで繋がってるのではなく)とかは含んでない

meltingrabbit avatar Oct 06 '22 06:10 meltingrabbit

Device Listだけは不適当

たしかにな.

meltingrabbit avatar Oct 06 '22 06:10 meltingrabbit

Communication Interface List とかになってしまうが,,,

meltingrabbit avatar Oct 06 '22 06:10 meltingrabbit

どちらかというと,フレーム解析やってほしい,という特徴の方に即して命名すべきかも

sksat avatar Oct 06 '22 07:10 sksat

てか,これ別に if wrapper にいる必要はなくて, driver super の設定パラメタにしてしまったほうがきれいだな.

meltingrabbit avatar Oct 06 '22 07:10 meltingrabbit

フレーム解析やってほしいタイプのデバイス,とそれを共通化して扱わなければならないためのインターフェース(Cなので関数ポインタテーブル),そういうインターフェースを使って他のコンポとお話するComponent Driver,という整理にすべきかな

sksat avatar Oct 06 '22 07:10 sksat

Drivre inctance,真の driver instance を配列で持ってる時点で instance ではない.

component serviceでは?

meltingrabbit avatar Oct 06 '22 08:10 meltingrabbit

マイクロカーネルの用語をこっからツモってきた方がいい説

https://seiya.me/microkernel-book.pdf

meltingrabbit avatar Oct 06 '22 08:10 meltingrabbit

Device DriverとComponentの違いって何よ,という話があり,「テレコマとして抽象できるもの」をComponentと呼ぶことにして,テレコマ(の型)を引き出す部分をComponent Driverとするのがよさそう,ということに. あと,Driver InstanceもかなりC2A語で,これは↑のテレコマの型に実際のコンフィグを注入する太郎であり,かつ真のdriver instanceを配列で持ってたりする(同じものが複数載ってる場合など)ので,Component Serviceとでも呼ぶのがよさそう.

sksat avatar Oct 06 '22 09:10 sksat

if_list したい device を StreamDevice とか FrameDevice みたいに名付けて,DriverSuper はそう呼ぶとよさそうと思うなどした

sksat avatar Mar 13 '23 08:03 sksat

今の IfWrapper って device driver というよりは HAL なんだよな

sksat avatar May 01 '23 08:05 sksat