mygcc the customizable gcc compiler what's this? Mygcc is an extensible version of gcc (the GNU C compiler), that can be customized very easily by adding user-defined checks for detecting for example memory leaks, unreleased locks, or null pointer dereferences. User-defined checks are performed in addition to normal compilation, and may result in additional warning messages. Gcc already includes m
5.44 Built-in functions for atomic memory access The following builtins are intended to be compatible with those described in the Intel Itanium Processor-specific Application Binary Interface, section 7.4. As such, they depart from the normal GCC practice of using the “__builtin_” prefix, and further that they are overloaded such that they work on multiple types. The definition given in the Intel
これの続き。 前に書いたGOT overwriteとほぼ同じ手口なんですが、.dtorsセクションに登録されている(関数の)アドレスを書き換えて、お好きな関数を呼ぶという攻撃方法があります。.dtor overwrite とか呼ばれてます。この手口を、 NXあり ASLRあり RELROなし PIEなし という条件下で試してみます。 #include <stdio.h> #include <stdlib.h> __attribute__((destructor)) static void dtor_fn() { puts("good bye!"); } static void my_dtor_fn(void) { puts("HEHE"); } int main(int argc, char** argv) { if (argc > 1) { unsigned int* got_addr
最近のエントリの総まとめ。適当なネットワークデーモンなどを手動でmakeする際におすすめのgccのオプション。ソフトウェアにbuffer overflowをはじめとするありがちな欠陥があった場合でも、攻撃者にプロセスを乗っ取られないよう、コンパイラやカーネルで精一杯防御するためのCFLAGSとLDFLAGS。とりあえずFedora5以降を想定しています。 # 2006/6現在で私が把握しているものです。どんどん変化(進化)しますのでご注意。特にFedoraは。。 # 自分でフォローしたい場合、Hardened Gentooのページや、Fedoraのここは役立つと思います 基本 上記のように、「多少遅くなってもセキュアなバイナリ希望」という場合、もともとのCFLAGS/LDFLAGSに加えて、 CFLAGS=-fstack-protector-all -O2 -fno-strict-alia
なんもしてねー。 タイトル長い。 まあ、ありきたりな感想としては、 戦闘システムは素晴らしい。前作のを引き継ぎつつ、3Dの利点を活かしてる感じが。 光子もそれなりに良い。 一般キャラが適当すぎ。 アスペクト指向とロギングってどう違うのかわからないです。 と、いうようなよくある話はいいとして、mudflapの話の続きとしては、「これってアスペクト指向っぽくね」っていう話にする予定だったんだけど、なんか、いまいちやる気閾値を超えなかったので放置してたところ、そういう話題が出てたので、とりあえずロギングを。 gcc-4.1.1のdiff アレがアレでアレしてます。(情報量0) int main() { }こういうプログラムをコンパイルして実行すると、 $ ./a.out /usr/local/src/gcc-4.1.1/gcc/crtstuff.c:319:frame_dummy /usr/lo
3.2.3.6 Allocating Aligned Memory Blocks The address of a block returned by malloc or realloc in GNU systems is always a multiple of eight (or sixteen on 64-bit systems). If you need a block whose address is a multiple of a higher power of two than that, use aligned_alloc or posix_memalign. aligned_alloc and posix_memalign are declared in stdlib.h. Function: void * aligned_alloc (size_t alignment,
2006-06-15 最近では、インライン関数をサポートするC処理系も増えてきたので、インライン関数がどういうものかご存知の方も多いことと思います。インライン関数は元々C++からCにバックポートされたものですので、当然C++にもあります。 インライン関数を使うには、関数宣言にキーワード inline を付けることで行います。この inline はinline指定子と呼ばれます。以下に例を挙げます。 inline void foo(int arg) { return arg + 123; } int bar(int arg) { foo(arg + 1) * 2; } 上の例におけるfoo関数がインライン関数にあたります。この場合には、bar関数内でfoo関数を呼び出している箇所を、foo関数の定義内容でインライン置換することを示唆しています。具体的には、 int bar(int arg)
CellPerformance Sharing tips and experience with the cell processor, performance, data design and game programming. Recently I've been doing some presentations as well as just general sketches of some things I've been thinking about regarding optimization, concurrency and data design. I've been posting them on Twitter to gather feedback from my pals there. A couple have caused a little controversy
前のページ 次のページ 目次 TSU-GCC 製作記 住井 英二郎 (sumii@is.s.u-tokyo.ac.jp)1997 年 4 月 5 日 1. はじめに 2. 96 年 10 月 3. 96 年 11 月 4. 96 年 12 月 5. 97 年 1 月 6. 97 年 2 月 6.1 第 1 週 6.2 第 2 週 6.3 第 3 週 6.4 第 4 週 7. 97 年 3 月 7.1 第 1 週 7.2 第 2 週 7.3 第 3 週 7.4 第 4 週 8. 97 年 4 月 8.1 第 1 週 9. おわりに 前のページ 次のページ 目次
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く