Please Use Translate Tab to read this in your language.
今、Clover Discussionで問題になっている、AMDに使うKernel Patchで気を付ける部分が変わりました。うまくいきそうなので、暫定報告です。
Icanaro氏による以下の表が元です。
開発者のSlice氏による意見は以下の通りです。
Cloverの場合、検索文字列の長さをゼロにすることはできません。その長さは、置換の長さと同じである必要があります。 他のものを検索しない場合は、手順を開始してから、Find = <00>およびMaskFind = <00>(注:実は間違えでした)を使用します。置換の長さを参照してください。また、置き換える場合はMaskReplace =<FF>
実は開発者のSlice氏も気づいていなかったのですが、MaskFindの値は、私が以下のように尋ねたところ、
If this like IP Mask,FFFFF…?
Slice氏から答えが返ってきました。
正確な一致が必要な場合はFFFFFFF。最初のバイトを正確に、2番目を任意にする場合は、FF00 すべてのバイトを。任意にしたい場合は00000000 、FEFFFFの場合、最初のバイトに任意のビット0があります。等々。 OCはバイト比較のみを提供し、Cloverはビットごとの比較を提供することに注意してください。
というわけで、「Maskする→True=1→これを各ビットに置く」なので、ビットを立たものはマスクしないというのがOpenCoreの解釈です。同様に、CloverはIPのアドレスマスクのように「論理積(AND)を取って残る部分=正確にマッチすべき部分」なので、ちょうど、同じ値が相当します。
簡単に言うとOpenCoreではMaskはしない場合省略でき、全部がマスクされませんが、Cloverの場合、MaskFind=<FF>で例としては
Find data B9A00100000F32
MaskFind data FFFFFFFFFFFFFF
の表現を外すことができません。
MaskReplaceについても同様で、<FF>の場合でもOCのように外すことができません。
コメント