UNIXプログラマの為のWindows入門

64某国製品の奴隷:02/04/25 02:03
>63
DelphiもObjective PascalだしJbuilderもJavaで開発されてますな。
あ、どっちも IDEだけだけど。

ほんとにどうでもいい話だが。
65名無しさん@お腹いっぱい。:02/04/26 18:48
ところで皆さん、ハンガリー記法ってどうですか?
変数名のプレフィクスに i だの lp だのと型名をつけるやつ。

漏れは覚えたのがWindows→UNIXだったもんで、ついUNIXでも
ハンガリー記法で書いてしまうですよ・・・鬱。
でもって、他のソース読むときも「変数名にプレフィクスつけて
くれないかな」と思ってしまう始末。

すっかりシモニーたんに支配されてます。うぅ・・・
(´-`).。oO(きっとSoftware Designを読んだのだろう)
67名無しさん@お腹いっぱい。:02/04/26 19:43
漏れは、最近Windowsプログラマーから、UNIXプログラマに転向した。
正直言って、カルチャーショックだね。
UNIXのシステムコールの少なさに唖然。
Win32APIなんか1000個くらいあるが、漏れほぼ全部わかる。でも人生の無駄だった。
ネットワーク系のプログラムや、サービス(デーモン)のプログラムなんか、Windowsはめちゃ難しくて手間がかかる。
そんなにUNIX詳しくないので、えらそーなことは言えんが、
システムコールやライブラリレベルで、Windowsが明らかに勝っているのは、
ACL, SAM, ファイルロックくらいかな。
それ以外は、UNIXマンセーだね。
WindowsでSTLなんて使おうとしたら、ブービートラップがいっぱい。
正直、WindowsでSTLは使いものにならない上に、意図的に隠されている。
MFCのCStringクラスや、CArrayクラスなんか、STLを覚えた今の頭で考えると、もう最悪。
今では、STLを隠されていたいたことに怒り爆裂だ。
>>67
スレッド周りもWin32の方が扱いやすいと思うなぁ。
mutex, semaphore, eventいずれも区別無しでWaitFor~()で待ち合わせ
できるし。socket descriptorがハブにされてるのはアホだけど。
>>67
というかそれはWindowsの問題ではなくVC++の問題だと思う
70名無しさん@お腹いっぱい。:02/04/27 00:14
>>69
STL云々って部分はね

しかしMFCのコンテナなんかは、わざと使いにくくしたとしか
思えないよなー

Win32APIのなかには概要を覚えたつもりでも恐ろしい罠が
待ち受けていたり、構造体がしこたま必要だったりするので....


7167:02/04/27 00:21
>>68
Win32のスレッド周りは、APIとTLSとCランタイムの関係がよろしくないのが問題。
あれで、どつぼにはまる人多数。
MSは、Cランタイムを駆逐して、全てAPIや.NETにしようとしている。

>>69
その通り。でも現実問題として、通常用途のお仕事用はVC++しか無いし・・・
7268:02/04/27 01:41
>>71
まぁ確かにmsvcrt.dll使う場合は_beginthreadex()使えだの、MFC使う
場合はAfxBeginThread()使えだのややこしいけど、それぞれのライブラリ
内で使ってるTLS初期化用にそれらを使わなきゃいかんのねぇ、ってのが
理解できれば(実装が汚いというのは置いとけば)別にどうって事ないと思う
けど。他になんか問題あるっけ?

>MSは、Cランタイムを駆逐して、全てAPIや.NETにしようとしている。

Unixだって昔からいろんなライブラリあるけどね。
ただ、Winの場合設定がレジストリだし、ログ出力もイベントログにAPIで
通知だしで、「APIが無いと非常にいじりにくい」ってだけでしょ。
7368:02/04/27 01:54
>「APIが無いと非常にいじりにくい」ってだけでしょ。

ごめん。「だけでしょ」ってのは撤回。
COM関係だと「API使わないといじりようがない」もんね。
横入りスマソ。TLSって何?
ググってみたらThread-Level Speculationってのが引っかかったけど話の流れ的に違いそう。
Thread Level Stateか何か?
75名無しさん@お腹いっぱい。:02/04/27 02:54
>>72
ヤヴァいAPIやAfx関数なんか使うとスレッドの解放時に、
スタック領域が残ったりすると思われ

漏れの場合は長ったらしいAPIを呼びまくってる中に
ふとC標準ライブラリのコールを見ると、場違いな気がしてくる
ラスベガスで寿司屋を見つけたような。

>>74
Thread Local Storage。
7774:02/04/27 07:29
>>76
アリガト。
7868:02/04/27 07:35
>>74
TLSは「スレッド毎に別々の値を保持できるグローバル変数」というとイメージ
しやすいかな。APIとしてTLSAlloc()なんか使う方法もあるけど、VC++だと
コンパイラサポートがあるので、本当にグローバル変数そのものをTLSとして
定義できちゃう。

まぁ俺は普通スレッド毎の管理/ワーク領域作って親スレッドで一括管理する
ように作るんで、自分でTLS操作した事もVC++のTLSサポートも直接使った事
は無いけど。

>>75
スタックが残るようなのってTerminateThread()とかでしょ?
これは最初から「そういうもんだから最終手段としてしか使うな」ってヘルプ
に書いてあるんだから、使う方が悪いつーか。
デザインとしてなんかダサいってのは分かるけど。
api の名前がダサダサ
80名無しさん@お腹いっぱい。:02/11/04 05:19
アピ━━━━━━━(゚∀゚)━━━━━ !!!!!
81Win:02/11/04 11:47
UNIXにもAPIがあるの?
82名無しさん@お腹いっぱい。:02/11/04 12:10
>>81
ばーか、氏ね!
>>73
Windows は、そもそもシステムコール相当の「カーネルへのエントリ
ポイント」(Windows NT 系列だと NTDLL.DLL あたりに書いてある)
は非公開だから、API を使わんことにはどうにもならんよね。

どっちが優れてるって話じゃなく、単に文化の違いだと思うけど。

>>78
UNIX というか POSIX Thread だと、TLS 相当の機能は pthread_getspecific()
を使って書くよね。VC++ のようにコンパイラのサポートがないから、さすがに
グローバル変数を勝手に TLS に割り当て、なんつー真似はできんけど。
84山崎渉:03/01/15 13:23
(^^)
UNIXからrcpでWindows2000からコピーしたいのですが、あれってリソースキットを
入れるだけで動くかご存知ないでしょうか?
あ~.hostsもありますねぇ。
86山崎渉:03/03/13 17:57
(^^)
87山崎渉:03/04/17 12:20
(^^)
88あぼーん:あぼーん
あぼーん
89あぼーん:あぼーん
あぼーん
90あぼーん:あぼーん
あぼーん
91あぼーん:あぼーん
あぼーん
92名無しさん@お腹いっぱい。:03/10/08 22:24
age
まずVMSを徹底的に勉強する。
次にホイールマウスの使い方を覚える。
そしてWindowsUpdateを実行する。
94名無しさん@お腹いっぱい。:03/10/26 11:01
age
95名無しさん@お腹いっぱい。:04/10/03 01:51:17
おおう、一年ぶり。
>>1 は見事にWindows プログラマになり切れたのだろうか?
それとも、いつの間にか古巣に戻って来てしまったのか?
まぁ、このスレの閑散ぶりからすると、戻れない河を渡ってしまったんだろうな。
さらば、 >>1
96名無しさん@お腹いっぱい。:04/10/07 22:05:13
>>95
よく一年も経ってから彫り上げたな・・・
971:04/10/07 22:39:26
もうUNIX使わなくなりました。
>>97
裏切者め地獄の業火に投げ込まれるてしまえ
るてしまえ
100ネット代月6万:04/10/19 00:12:33

       /\___/ヽ
    /ノヽ       ヽ、
    / ⌒''ヽ,,,)ii(,,,r'''''' :::ヘ
    | ン(○),ン <、(○)<::|  |`ヽ、
    |  `⌒,,ノ(、_, )ヽ⌒´ ::l  |::::ヽl
.   ヽ ヽ il´トェェェイ`li r ;/  .|:::::i |
   /ヽ  !l |,r-r-| l!   /ヽ  |:::::l |
  /  |^|ヽ、 `ニニ´一/|   ^|`,r-|:
>>100
Yahoo BB HIKARI にしろよ・・・マジお薦め。
102名無しさん@お腹いっぱい。:2005/11/15(火) 00:10:33
>>101
こんな見えないところでわざわざ工作ご苦労様
103名無しさん@お腹いっぱい。:2005/11/15(火) 20:53:03
こちとら生粋のWindowsプログラマー!
だがWin32APIを直接呼んだことなんて一切無ぇとくらあっ!
104名無しさん@お腹いっぱい。:2005/11/18(金) 22:52:59
Windowsは歴史に無頓着なものかもしれないけど、
でも設計的にはUNIXを綺麗にまとめたものだったりしない?
カーネルオブジェクトと概念をひとまとめにしてある辺りは、
アプリケーションプログラマの頭の負担も少ないと思う。
105名無しさん@お腹いっぱい。:2005/11/18(金) 23:05:36
でもまあ一見して概念的に綺麗になっているものこそ、
齟齬をきたしているケースも多々あるから一概には言えんか。
106名無しさん@お腹いっぱい。:2005/11/18(金) 23:19:25
Win32 のシステムコールインターフェースは結構きれい。
というか、UNIX のものとほとんど変わらん。
CreateProcess 系は全然違うけど。Win32 は fork() を
使わないから、かなり複雑。ここはポリシーの違いなので、
どっちがいいとも言い難いけど。

Win32 の GUI 系のプリミティブ、特にイベント回りは、
Win16 との互換性のためにかなり汚い。まあメッセージ
クラッカーとか使えば隠蔽できるし、MFC 使ってれば
気づかないけどね。
107名無しさん@お腹いっぱい。:2006/11/14(火) 02:35:12
保守あげ
108名無しさん@お腹いっぱい。:2007/04/11(水) 14:04:17
きんたまウイルスでひっかかった東海○科につとめている人の
ファイル見たんだけど、エクセル、エクセル、エクセル。

ウインドウズってエクセルつかって、こうやってやれば
便利に使えるんだなぁ、ってすごい感心した。

#・・・製品の原価率とかにも。
#ある意味エロ画像よりすげぇ、ファイルだった。
109名無しさん@お腹いっぱい。:2007/04/12(木) 23:12:09
>>106
1年半前のカキコにレスすんのもあれだが・・・

Win32のシステムコールはUNIX系のOSに比べてかなり数が多く複雑で
それがセキュリティの穴になっているのではないかという記事をどこかで
見たことがある。

システムコールの数はFreeBSDの場合は400足らずだが、Windowsの場合は
それの3倍以上はあるんだろうか?Wndowsのバージョンにもよるが非公開な
部分があるのでMSの開発者ぐらいしか正確な数を把握してないんだろうな。
110名無しさん@お腹いっぱい。:2007/04/13(金) 05:23:25
>>109

ビスタになって少しはシステムコール整理されたりしたのかなぁ?
111日立バキバキ高野くん祭り:2008/06/23(月) 19:54:41
1.日立製作所社員の高野くん(高野光弘)が会社を誹謗中傷して機密も漏洩
2.日立のユーザーにも「キチガイ」との障害者差別発言
3.日立製作所の企業イメージをバキバキにする
4.自身のサイトの『32nd diary』に掲載
5.日立製作所に通報される
6.あせって似顔絵削除
7.火に油を注ぐだけで所属する日本UNIXユーザ会にも通報祭り勃発
8.「給料泥棒」と説教される
9.「殺します」と殺人予告をして警察に事情を聞かれる←イマココ

高野光弘の行動
現在は、過去の記事を閲覧できなくして、「本日の日記はツッコミ数の制限を越えています」としています。
まずは、不愉快な思いをされた方々に謝罪するべきなのではないでしょうか。

高野光弘の発言
「まぁ、どこの団体もそんなにヤワじゃないので、平気なんですけども。
日本UNIXユーザ会が一番対応に慣れてる感じ。」

日本UNIXユーザ会が対応に慣れているか、みなさん確認してみてください。

連絡先
http://www.net.intap.or.jp/oiia/cont2/p0402.html%7B0recid=10168.html
112 忍法帖【Lv=4,xxxP】 :2011/08/29(月) 08:12:08.14
age
113電脳プリオン 忍法帖【Lv=40,xxxPT】(1+0:8) 【26.4m】
10年以上前か