論文紹介:"RAt: Injecting Implicit Bias for Text-To-Image Prompt Refinement Models...
2014-01-17 C言語でのポータブルなstring IOについて Q. C言語でポータブルなstring IOを実現する手軽で簡単な方法はありますか? A. そんなものはない。 string IOないしmemoryに対するIOをFILEポインタを通して行いたいという要求は常に存在する。が、残念ながらC言語の仕様はそんなことを許してくれない。そもそもCの標準ライブラリになにかを求めるのはおおよそ間違っている。 結論として、表題のようなものをやりたければFILEポインタもどきを自作するしか無い。ほんとうに、それしかない。構造体を定義して、バッファリングを行って、stdioの関数に相当するものを自分で用意しなきゃいけない。もちろん、不完全だがより簡単な方法はいくつもある。 不完全な方法1. 環境依存のコード これが一番手軽だし、無難だ。glibcならfmemopenやopen_memstr
Flash Player’s EOL is coming at the end of 2020. See the roadmap for Flash Player and AIR’s EOL: Adobe Flash Player EOL General Information Page The Future of Adobe AIR You can access the archived documents relevant to Flash Runtime even after the Flash EOL date. We are providing access to the archived documents for all the user/developers community to download. These documents are now no longer u
最近、Robert Love先生の本を暇な時にダラーと読んでいたりするわけですが、それの中にLinux Kernel内部で使われているLinked Listの実装が書いてあって面白かったので共有。 まず、Linked Listの一個一個のエントリを表すstructを定義します。 struct list_head { struct list_head *next, *prev; }; いやいやいやいや。いかにC力の低い僕でも流石にこれはあきません。騙されませんよ。前後のエントリへのポインタは確かにあるけれども、これにはデータを指すためのポインタがないじゃないの。おじいちゃんまたデータ忘れてきちゃったの?いやあねえ。 おじいちゃんは言った。「それはお前の短見というものじゃ。このLinked Listは以下のコードのようにデータ構造に埋め込んで使うものなんじゃよ。」そしてそれは正しかった。 st
gistfile1.txt � �ߪ� P(pߪ� /Users/ranha/c_misc/souwa% gcc --version i686-apple-darwin11-llvm-gcc-4.2 (GCC) 4.2.1 (Based on Apple Inc. build 5658) (LLVM build 2336.1.00) Copyright (C) 2007 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. /Users/ranha/c_misc/souwa% gcc -
言語女子会: undefとnullは両方必要?、言語女子会2: varは必要?/privateがない?の続編です。 Rubyに恋愛相談 Python: 最近悩んでるのよね… Ruby: んー、何に? Python: 自分はどんな人が好きなのかなぁ…とか… Ruby: あー、そんなの簡単よ!一緒にいて楽しいことよ! *1 Python: そんなの誰とだって仲良くなったら楽しいんだから差別化にならないじゃん Ruby: そうとは限らないわよ、たとえば、あっ… C: ごめーん、会議が長引いちゃって遅れちゃった!(髪の毛ファサーっ) Python: ああ…なるほど… C C: 何の話?え、恋愛に悩んでる?そんなの簡単よ。卓越性よ。 Python: 卓越性?? C: そうよ。なんらかの分野で「わたしが一番」という状況を作ることよ。そうすれば男の側からいくらでも寄ってくるわ。 Python: なるほど
Tredje kvartalet samlar RISE industrin kring bioteknik och hållbar tillverkning, tar AI ut i rymden och lanserar nya erbjudanden som stödjer marknadsintroduktion. RISE fortsätter utvecklas inom områden och teknologier som är strategiskt viktiga för Sverige. Tredje kvartalet samlar RISE industrin kring bioteknik och hållbar tillverkning, tar AI ut i rymden och lanserar nya erbjudanden som stödjer m
Cでのポインタの読み方 Cのポインタの読み方は、ルールを知らないと摩訶不思議です。 ルールを覚えれば、 int (*p[5])[3]; char (*(*fp)(void))(int); なんてのも解読する事ができます。 大事な前程 ポインタを読む際には、「英語で読む」必要があります。 「え~、英語~」 と思う方もいるかもしれませんが、逆に日本語で読む方が大変です。 基本ルール ルール 後置演算子が優先。 関数の() 配列の[] 前置はあとで。 要は、「後ろに何かあったら、後ろが優先」です。 演算子の英語での読み方 * pointer to ... () function returning ... [] array of ... Lesson 1 まず、演算子が単独で出てくる場合です。 Lesson 1-1 pointer to ... int *p; これは、まずpを見ましょう。 i
バイナリ解析, Programmingバイナリの日11月11日はバイナリの日ということで、ちょっとしたcrackmeを作成してみました。 HappyBinaryDay! 11月11日にこのプログラムを起動した際には、以下のように表示されます。 しかし、それ以外の日時にこのプログラムを起動した場合は、以下のように表示されます。 いつ起動しても、「HappyBinaryDay!」と表示されるようにクラックしてみてください。アンチデバッグ今回は特にデバッガを検知して解析を妨害するといったものは実装していませんが、API呼び出しと参照文字列の隠蔽を盛り込みました。API呼び出しの隠蔽MessageBox()の呼び出しを隠蔽しています。 MessageBox()のアドレスに値を足した定数を宣言し、呼び出す際にその値を引いてから呼び出しています。参照文字列の隠蔽OllyDbgにはコードセクションから参
kernel, ProgrammingZwCreateFile()ファイルの作成時に用いられるネイティブAPIです。 これをフックして自作関数で上書きしてみます。フックZwTerminateProcess()のフックと同じ方法でフックするコードを書きました。べんりですね。これと共通しているコードは省略します。置き換わる関数 typedef NTSYSAPI NTSTATUS (*ZWCREATEFILE) ( OUT PHANDLE FileHandle, IN ACCESS_MASK DesiredAccess, IN POBJECT_ATTRIBUTES ObjectAttributes, OUT PIO_STATUS_BLOCK IoStatusBlock, IN PLARGE_INTEGER AllocationSize OPTIONAL, IN ULONG FileAttribu
バイナリ解析int3ブレークポイントの検出マルウェアの多くはデバッガによる解析を検出するためのルーチンを備えています。 その手法の一つとして、ブレークポイントを検出するというものがあります。 これは、デバッガが命令をint3に書き換えることでブレークポイントを実現していることに基づき、int3をチェックすることでデバッガによるブレークポイント設置を検出するというものです。 bool CheckInt3Breakpoint(void* pMemory, size_t SizeToCheck) { unsigned char *pTmp = (unsigned char*)pMemory; for (size_t i = 0; i if(pTmp[i] == 0xCC) return true; } return false; } 簡単ですが有効な手法です。 これに類した手法でブレークポイント
What is it ? The Obfuscated Tiny C Compiler (OTCC) is a very small C compiler I wrote in order to win the International Obfuscated C Code Contest (IOCCC) in 2002. My goal was to write the smallest C compiler which is able to compile itself. I choose a subset of C which was general enough to write a small C compiler. Then I extended the C subset until I reached the maximum size authorized by the co
まだ途中。書き次第随時追記していきまする。間違いとか分かりにくい表現があったら遠慮無く指摘してくだしあ。
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
2010年08月06日05:30 カテゴリMath C - でOpenMP使ったら、+二行で範囲10億が2秒 ぬあんと 素数10億まで3秒 - JGeek Log danさんの場合, 1bit でフラグを記憶してるのでメモリが1/8 で済む。そこでメモリアクセスの時間が効いてるんだろう。それならキャッシュに収まる位のブロックに計算を分割しその内側で素数pのループ回せばもっと速くなるかも?と思いやってみた。見事3秒で終わった! これを上回ることは出来るか? 出来ました。 以下、証拠。 % gcc -W -Wall -O6 -fopenmp primes_ita.c primes_ita.c: In function ‘main’: primes_ita.c:69: warning: unused variable ‘p’ % time ./a.out 06.983u 0.084s 0:01.
少しはまったこともあり書いておきます。 iPhone というよりは Objective-C の仕組みだと思うのですが、 iPhone の多言語対応は Localizable.strings を使ってローカライズします。 Resources フォルダ以下に各言語リソースを置くことを前提とし、 英語、日本語に対応するための手順を書きます。 xcode で Resources を選択後、「追加」→「新規グループ」で“English.lproj”を作成します。 English.lproj を選択後、「追加」→「新規ファイル」→「Mac OS X」→「Other」→「Strings File」を選択。 “Localizable.strings”と入力し、「次へ」を選択します。 保存場所を選択し、「Resources」を選択。 「新規フォルダ」から“English.lproj”を作成し、その中へ保存し
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く